You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现Microsoft Teams卡片按钮在应用内打开App Tab而非默认浏览器?

让Teams桌面端卡片按钮直接打开应用Tab的实现方案

我之前刚好处理过类似的需求,要解决Windows 10桌面版Teams里卡片按钮跳浏览器而不是打开应用内Tab的问题,核心是用Teams的**深层链接(deeplink)**替代普通网页URL,下面是具体的实现步骤:

1. 构造正确的Teams Tab深层链接

Teams提供了专属的deeplink格式,能直接唤起应用内的指定Tab,格式如下:

https://teams.microsoft.com/l/entity/{appId}/{entityId}?context={"subEntityId":"","channelId":"{channelId}","teamId":"{teamId}"}

参数说明:

  • {appId}:你的Teams应用ID(可在App Studio或Teams管理中心获取)
  • {entityId}:Tab对应的实体ID(在应用清单manifest.json的staticTabs或configurableTabs节点中定义)
  • channelId/teamId:可选参数,如果Tab关联到特定频道/团队,需传入对应ID;个人Tab可省略或留空

2. 在MessageCard中配置按钮链接

把MessageCard按钮的target替换为上面构造的deeplink,示例代码如下:

{
  "@type": "MessageCard",
  "@context": "http://schema.org/extensions",
  "summary": "打开我的应用Tab",
  "sections": [
    {
      "text": "点击下方按钮直接打开应用内Tab"
    }
  ],
  "potentialAction": [
    {
      "@type": "OpenUri",
      "name": "打开应用Tab",
      "targets": [
        {
          "os": "default",
          "uri": "https://teams.microsoft.com/l/entity/your-app-id/your-entity-id?context={\"channelId\":\"your-channel-id\",\"teamId\":\"your-team-id\"}"
        }
      ]
    }
  ]
}

3. 关键注意事项

  • 确保目标用户的Teams环境中已安装你的应用,未安装时Teams会提示用户先完成安装再打开Tab
  • 必须在Windows 10桌面版Teams中测试,网页版或移动端的行为可能不同,但桌面端支持直接唤起Tab
  • 个人Tab的context可简化为{"subEntityId":""},无需传入channelId和teamId

4. 常见问题排查

如果按钮仍然跳浏览器,检查以下几点:

  • 确认deeplink格式无误,appId、entityId等参数没有拼写错误
  • 测试环境必须是Windows 10桌面版Teams,而非网页版
  • 应用清单中已正确注册对应Tab,且entityId与deeplink中的一致

内容的提问来源于stack exchange,提问作者Swerve

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 07:54:15