跨设备SDK

跨设备 SDK 让开发者能够更轻松地创建兼容多设备的应用。该 SDK 将各种连接技术整合到一个工具包中,从而简化了丰富且引人入胜的多设备体验的开发。以前,开发者需要独立使用蓝牙和 Wi-Fi 等连接框架来创建多设备体验。现在,开发者可以专注于用户体验中最重要的部分,而 SDK 则负责处理这些底层技术。

该 SDK 是我们大型多设备开发工具包的一部分,其中包含模拟器支持、性能剖析等。跨设备 SDK 实现了以下核心功能

  • 设备发现和授权
  • 安全连接和数据传输
  • 多设备会话

使用此 SDK 可以构建的应用和体验示例包括:多人游戏、生产力应用中设备之间的无缝切换以及团体订餐。

在开发跨设备 SDK 时,我们遵循了三个基本原则,以创建一个能够安全、稳妥地加速多设备应用和体验开发的抽象层。这些原则是

  • 无处不在:SDK 应尽可能在所有设备上运行,从手机和平板电脑开始。
  • 模块化:开发者应能够将 SDK 与其他解决方案结合使用。
  • 赋能:SDK 不会将您限制在特定的跨设备体验中,而是允许您构建自己的功能和体验。

用例

讨论跨设备用例时,我们考虑两大类别:个人体验和共享体验。

个人体验

个人体验围绕单个用户身份在多个设备上构建,例如手机、手表、电视和/或汽车。这些体验帮助用户更有效地连接他们拥有的各种设备。例如

  • 使用手机输入付款方式,在电视上完成电影租赁或购买。
  • 在手机上开始阅读一篇长文章,然后在平板电脑上继续阅读,而不会丢失进度。

共享体验

共享体验是指用户与周围其他人之间共同享受的体验。例如

  • 作为乘客,直接与朋友的汽车共享地图位置。
  • 与您的骑行伙伴分享您的周日骑行路线。
  • 无需互相传递手机,即可为团体订餐收集菜品。
  • 为下一部共同观看的电视剧进行团体投票。

媒体及其他体验

还有多设备体验,例如连续媒体控制和身份验证,它们可能会促使设备发现和参与者之间的数据传递。对于这些用例,我们有更适合的现有框架和 SDK

结合跨设备 SDK,这些 API 和技术可让您在应用中构建独特且无缝的多设备用户体验。

开发者预览版限制

由于这是 SDK 的开发者预览版,请注意以下事项

  • API 接口可能会发生变化。
  • 跨设备 SDK 不应用于生产应用。

目前支持的平台和界面仅限于 Android 移动设备和平板电脑。

我们鼓励您分享您的反馈和建议。请在此处提交错误报告

工作原理

跨设备 SDK 是一个软件抽象层,它通过利用蓝牙、Wi-Fi 和超宽带等各种无线技术,实现平台驱动和开发者驱动的多设备体验。这种抽象使开发者能够专注于用户体验中最重要的部分,而 SDK 则负责处理平台功能、设备发现、身份验证和兼容性等底层方面。

Cross device SDK architecture.
图 1: 跨设备 SDK 架构。

对于大多数应用开发者,我们建议使用多设备会话 API。此 API 允许将应用用户体验转移到其他设备或与其他设备共享。但是,如果您的跨设备体验需要更高的粒度或自定义,则可以使用独立的设备发现和安全连接 API。

跨设备 SDK 是开源的,并将适用于不同的 Android 界面和非 Android 生态系统设备(ChromeOS、Windows、iOS)。SDK 的目标是利用现有技术和平台功能,同时简化应用开发者的多设备体验开发。