跨 Microsoft 365 的 TeamsJS 功能支持

从版本 2.0.0 开始,Microsoft Teams JavaScript 客户端库 (TeamsJS) 使 某些类型的 Teams 应用 能够在 Microsoft 365 生态系统中运行。 Microsoft可以托管 Teams 应用的 365 应用程序 (Microsoft 365 应用和 Outlook) 仅支持可为 Teams 平台生成的部分应用程序类型和功能。 此支持会随着时间的推移而扩展。

本文详细介绍了跨各种主机应用程序对 TeamsJS 版本 2.x 功能的支持级别。 有关 TeamsJS 版本 1.x 和 2.x 之间的更改的详细信息,请参阅 TeamsJS 版本 2.x.x 中的新增功能

以下 TeamsJS 功能 表列出了 (公共命名空间的 TeamsJS 功能) 及其跨 Microsoft 365 主机应用程序的支持。 某些功能标有 “已弃用 ”或 “预览” 锁屏提醒,其含义如下:

徽章 含义
蓝色矩形内带有单词“预览”的图像 此功能为预览版,可能会根据反馈进行更改。 请勿在生产环境中使用此功能。
橙色矩形内带有单词“已弃用”的图像 为了支持较新的功能,此功能已弃用,但出于向后兼容性目的,支持此功能。 对于新应用,请使用已弃用功能的使用说明中建议的功能。

Microsoft 365 台主机由下表中的产品图标表示:

Teams Microsoft 365 应用 Outlook
Microsoft Teams 图标 Microsoft 365 应用图标 Microsoft Outlook 图标
“新建Microsoft Teams”图标 “新建Microsoft Outlook”图标

有关新 Teams 和 Outlook 的详细信息,请参阅 Outlook 博客Teams 采用

使用下表选择任何 TeamsJS 功能以获取更多详细信息,包括参考文档、示例、使用说明和限制。

注意

下表中的信息派生自使用 TeamsJS v2.24 进行的测试和测试期间提供的最新主机版本。 支持可能因后续主机修改而异。 提供这些表可帮助你了解跨主机的功能支持,但是,始终确保使用代码中的相关 isSupported() 调用来验证支持。

跨主机功能

下表列出了对可在 Teams 外部运行的 TeamsJS 功能的主机应用程序支持。


TeamsJS 功能 Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
应用程序
appInstallDialog
身份验证
calendar
call
聊天徽章,指示此功能处于预览状态
剪贴板徽章,指示此功能处于预览状态
对话框指示此功能处于预览状态的锁屏提醒
geoLocation 徽章,指示此功能处于预览状态
mail
pages
指示此功能处于预览状态的配置文件徽章
指示此功能处于预览状态的搜索锁屏提醒
secondaryBrowser徽章,指示此功能处于预览状态

仅限 Teams 的功能

下表列出了对仅在 Teams 环境中运行的 TeamsJS 功能的支持。


TeamsJS 功能 Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
appInitialization指示此功能已弃用的锁屏提醒
指示此功能已弃用的位置徽章
菜单
people
设置指示此功能已弃用的徽章
共享
stageView指示此功能处于预览状态的徽章
任务指示此功能已弃用的徽章
teamsCore
指示此功能处于预览状态的视频徽章
webStorage徽章,指示此功能处于预览状态

等待主机支持的预览功能

源中的某些功能处于早期预览状态,仍在等待一个或多个主机应用程序(包括 barCode媒体会议)的初始支持。

本文的后面部分提供了有关 Teams JavaScript 客户端库的每个功能的详细信息。

app

参考 | 已知问题

Namespace与应用初始化和生命周期进行交互。

命名空间 app 在所有应用程序主机上受到全局支持,因此没有 isSupported 函数。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
应用

appInitialization

参考 | 已知问题

已弃用。 用于初始化应用的Namespace。 对于新应用,请使用应用功能中的app.initialize ()


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
appInitialization 指示此功能已弃用的锁屏提醒

appInstallDialog

参考 | 已知问题

Namespace用于打开用于安装应用程序的对话框。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
appInstallDialog

authentication

参考 | 已知问题

Namespace与库的身份验证相关部分进行交互。 此模块用于启动或完成身份验证流。

命名空间 authentication 在所有应用程序主机上受到全局支持,因此没有 isSupported 函数。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
身份验证

barCode

参考 | 已知问题

预览。 Namespace与库的条形码扫描相关部分进行交互。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
指示此功能处于预览状态的 barCode 徽章

calendar

参考 | 已知问题

Namespace提供与日历相关的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
日历

call

参考 | 已知问题

Namespace提供与其他人发起通话的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
通话

chat

参考 | 已知问题

预览。 Namespace提供与他人开始聊天的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
聊天徽章,指示此功能处于预览状态

clipboard

Reference

预览。 此功能使用户能够复制并粘贴到系统剪贴板。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
剪贴板徽章,指示此功能处于预览状态

dialog

参考 | 已知问题

预览。 这组功能使应用能够显示 TeamsJS v1.x) 中称为任务模块 (模式对话框。 对话主要有两种类型:基于 URL 的对话和自适应卡片对话。 这两种类型的对话框都显示在应用顶部,从而阻止在应用显示时与应用交互。

  • 通过基于 URL 的对话,可以指定在对话框中显示内容的 URL。 对于 URL 对话框,请使用 url 命名空间中的函数和接口。
  • 基于自适应卡片的对话允许你提供 JSON 来描述对话框中显示的自适应卡片。 对于“自适应卡片”对话框,请使用 adaptiveCard 命名空间中的函数和接口。

Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
对话框 指示此功能处于预览状态的锁屏提醒
dialog.adaptiveCard徽章,指示此功能处于预览状态
dialog.adaptiveCard.bot徽章,指示此功能处于预览状态
dialog.update徽章,指示此功能处于预览状态
dialog.url指示此功能处于预览状态的徽章
dialog.url.bot指示此功能处于预览状态的徽章

dialog.adaptiveCard

参考 | 已知问题

预览。 与自适应卡片对话框交互的子能力。

dialog.adaptiveCard.bot

参考 | 已知问题

预览。 与需要与 Bot Framework 通信的自适应卡片对话框交互的子能力。

dialog.update

参考 | 已知问题

预览。 用于更新对话框的Namespace。

dialog.url

参考 | 已知问题

预览。 与基于 HTML 的对话交互的子能力。

dialog.url.bot

参考 | 已知问题

预览。 用于与需要与 Bot Framework 通信的基于 HTML 的对话进行交互的子能力。

geoLocation

参考 | 已知问题

预览。 Namespace提供与位置相关的功能。 这是位置模块的较新版本。

在 Teams 外部运行的应用部分支持要求用户授予 设备权限 (功能(例如 geoLocation) )。 在 Outlook 和 Microsoft 365 应用中运行时,用户可以从应用标头调整应用权限,也可以从移动设备上的应用设置调整应用权限。 建议修改代码以检查 Outlook 和 Microsoft 365 的可支持性:

  • 在使用功能之前,请调用 isSupported 该功能。
  • 在调用 TeamsJS 和 HTML5 API 时捕获和处理错误

当 API 不支持或生成错误时,请添加逻辑以失败或提供解决方法。 例如:

  • 将用户定向到应用的网站
  • 指示用户使用 Teams 中的应用来完成流
  • 通知用户该功能尚不可用

提示

确保应用清单仅指定它使用的设备权限。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
geoLocation 徽章,指示此功能处于预览状态
geoLocation.map指示此功能处于预览状态的徽章

geoLocation.map

参考 | 已知问题

预览。 提供与地图相关的功能的子能力。

location

参考 | 已知问题

已弃用。 Namespace提供位置相关功能 (获取和显示位置) 。 对新应用使用 geoLocation


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
指示此功能已弃用的位置徽章

mail

参考 | 已知问题

Namespace提供与电子邮件相关的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
mail

media

参考 | 已知问题

Namespace提供图像文件相关功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
媒体

meeting

参考 | 已知问题

Namespace提供会议内应用功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
会议

注意

Teams 移动客户端不支持以下方法:

  • meeting.requestStartLiveStreaming
  • meeting.requestStopLiveStreaming
  • meeting.getLiveStreamState
  • meeting.registerLiveStreamChangedHandler

参考 | 已知问题

Namespace与库的菜单相关部分进行交互。 此模块用于显示 视图配置操作菜单导航栏菜单


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
菜单

pages

参考 | 已知问题

TeamsJS 库的导航相关部分。

在 TeamsJS 版本 2.0 之前,所有深层链接方案都使用 shareDeepLink (来处理,以生成指向应用特定部分的链接,) 并 executeDeepLink (导航到应用) 中的深层链接。 TeamsJS v.2.0 引入了一个新的 API, navigateToApp用于在应用主机 (Microsoft 365 应用和 Outlook 之间以一致的方式导航到应用内的页面 (和子) 页面,以及 Teams) 。 对于新应用,请遵循链接的更新指南,具体取决于导航方案:

  • 指向应用的深层链接。 使用 pages.shareDeepLink(在 TeamsJS v.2.0 之前称为 shareDeepLink)生成并显示可复制链接供用户共享。 选择后,如果尚未为应用程序主机安装应用,系统会提示用户安装该应用。

  • 应用中的导航。 使用新 pages.currentApp 命名空间在托管应用程序中的应用内导航。 具体而言,用于允许导航到当前应用中的特定选项卡的函数 navigateTo(NavigateWithinAppParams) ,以及允许导航到应用清单中定义的第一个选项卡的函数 navigateToDefaultPage() 。 有关详细信息,请参阅 在选项卡应用中导航

    这些 API 提供与导航到深层链接 (等效,因为现在弃用的 executeDeepLink 曾经用于) ,而无需应用为不同的应用程序主机构造 URL 或管理不同的深层链接格式。

  • 应用的深层链接。 有关从应用到其当前主机各个区域的深层链接,请使用 TeamsJS 库提供的类型化 API。 例如,使用 calendar 功能从应用打开计划对话框或日历项。

    对于从应用到同一主机中运行的其他应用的深层链接,请使用 pages.navigateToApp

    对于任何其他外部深层链接方案,可以使用 app.openLink,它提供与现已弃用的(从 TeamsJS v.2.0 开始)executeDeepLink API 类似的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
pages
pages.appButton
pages.backStack
pages.currentApp
pages.config
pages.tabs

注意

Teams 移动客户端不支持以下方法:

  • pages.getConfig
  • pages.setCurrentFrame
  • pages.initializeWithFrameContext
  • pages.tabs.navigateToTab
  • pages.tabs.getMruTabInstances
  • pages.tabs.getTabInstances

pages.appButton

参考 | 已知问题

提供与 SDK 的应用按钮部分进行交互的 API。

pages.backStack

参考 | 已知问题

提供用于处理用户导航历史记录的 API。

pages.config

参考 | 已知问题

提供 API,用于与 SDK 的配置特定部分进行交互。 此对象仅在配置帧上可用。

pages.currentApp

参考 | 已知问题

提供无需指定应用程序 ID 即可导航的函数。

pages.tabs

参考 | 已知问题

提供用于在应用程序的上下文选项卡之间查询和导航的 API。 与个人选项卡不同,上下文选项卡是与特定上下文(如频道或聊天)关联的页面。

people

参考 | 已知问题

Namespace为 人员选取器 API 提供功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
people

profile

参考 | 已知问题

预览。 Namespace提供与配置文件相关的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
指示此功能处于预览状态的配置文件徽章

注意

profile.showProfile Teams 移动客户端不支持 方法。

参考 | 已知问题

预览。 允许应用程序与主机交互Microsoft 365 应用程序的搜索框。 通过将应用程序与主机的搜索框集成,用户可以使用他们在 Teams、Outlook 或 Microsoft 365 应用中其他位置使用的相同搜索框搜索你的应用。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
指示此功能处于预览状态的搜索锁屏提醒

secondaryBrowser

参考 | 已知问题

预览。 Namespace支持主机应用的应用内浏览器体验。 例如,在浏览器内的主机应用中打开 URL。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
secondaryBrowser 徽章,指示此功能处于预览状态

settings

参考 | 已知问题

已弃用。 提供与设置相关的功能。 对新应用使用 页面中 的等效 API。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
设置 指示此功能已弃用的徽章

sharing

参考 | 已知问题

Namespace打开 Web 内容的共享对话框。 有关详细信息,请参阅 个人应用或选项卡的“共享到 Teams”


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
共享

注意

sharing.shareWebContent Teams 移动客户端不支持 方法。

stageView

参考 | 已知问题

预览。 Namespace与库的 Stageview 特定部分进行交互。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
stageView 指示此功能处于预览状态的徽章

tasks

参考 | 已知问题

用于提供模式对话框 (TeamsJS v1.x 中称为任务模块的早期版本) 支持 TeamsJS v2.8.0 之前的版本。 对于新应用,请使用 对话框 功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
任务 指示此功能已弃用的徽章

注意

task.getDefaultSizeIfNotProvided Teams 移动客户端不支持 方法。

teamsCore

参考 | 已知问题

Namespace包含支持 Teams 特定功能的 API 集。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
teamsCore

video

参考 | 已知问题

预览。 表示会议内视频效果功能的Namespace。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
指示此功能处于预览状态的视频徽章

注意

Teams 移动客户端不支持以下方法:

  • video.notifySelectedVideoEffectChanged
  • video.registerForVideoEffect

webStorage

参考 | 已知问题

预览。 包含允许 Web 应用在 Webview 缓存中存储数据的功能。


Web 桌面 移动设备
Windows Android iOS
Teams Teams (新) Microsoft 365 应用 Outlook Teams Teams (新) Microsoft 365 应用 Outlook Outlook (新) Teams Microsoft 365 应用 Outlook Teams Microsoft 365 应用 Outlook
webStorage 徽章,指示此功能处于预览状态

注意

webStorage.isWebStorageClearedOnUserLogOut Teams 移动客户端不支持 方法。

另请参阅