借助 Cross device SDK,开发者能够更轻松地创建跨多个设备兼容的应用。该 SDK 将各种连接技术整合到一个工具包中,从而简化了丰富且引人入胜的多设备体验的开发工作。以前,开发者需要单独使用蓝牙和 Wi-Fi 等连接框架来打造多设备体验。现在,开发者可以专注于用户体验最重要的部分,而 SDK 将负责处理这些较低级别的技术。
此 SDK 是我们规模更大的多设备开发工具包的一部分,其中包括模拟器支持、性能分析等。Cross device SDK 可实现以下核心功能:
- 设备发现和授权
- 安全连接和数据传输
- 多设备会话
您可以使用此 SDK 构建应用和体验的一些示例包括多人游戏、效率应用中的设备之间的无缝切换以及群组订餐。
在开发 Cross Device SDK 时,我们遵循了三项基本原则来创建抽象层,从而安全、尊重地加速多设备应用和体验的开发。这些原则包括:
- 无处不在:SDK 应可在任何可用设备上运行,从手机和平板电脑入手。
- 模块化:开发者应该能够将该 SDK 与其他解决方案混用。
- 功能强大:SDK 不会限制您只使用特定的跨设备体验,而是允许您构建自己的功能和体验。
用例
在讨论跨设备用例时,我们考虑主要类别:个人体验和公共体验。
个人体验
个人体验是围绕多个设备(例如手机、手表、电视和/或汽车)上的单一用户身份构建的。这些体验可帮助用户更有效地连接他们拥有的各种设备。例如:
- 使用手机输入付款方式,在电视上完成电影租借或购买。
- 在手机上开始阅读一篇较长的文章,并在平板电脑上完整阅读完这篇文章。
共用体验
用户和周围的其他人可以享受共用体验。例如:
- 以乘客的身份直接与朋友的汽车分享地图位置。
- 与他人分享您的周日骑行路线。
- 无需向对方展示手机,即可领取团体订购的食品。
- 进行小组投票,为接下来一起观看的电视节目投票。
媒体和其他体验
此外,还有多设备体验(例如连续媒体控件和身份验证),可以提示发现设备并在参与者之间传递数据。对于这些用例,我们有可能更适合的现有框架和 SDK:
通过将这些 API 和技术与 Cross Device SDK 结合使用,您可以在您的应用中打造独特、无缝的多设备用户体验。
开发者预览版限制
由于这是 SDK 的开发者预览版,请注意以下几点:
- API Surface 可能会发生变化。
- Cross device SDK 不应用于生产应用。
目前支持的平台和 surface 仅限于 Android 移动设备和平板电脑。
欢迎分享您的反馈和建议。请在此处提交 bug 报告。
了解运作方式
Cross device SDK 是一个软件抽象层,可利用蓝牙、Wi-Fi 和超宽带等各种无线技术,实现平台驱动的多设备体验以及开发者驱动的多设备体验。这种抽象让开发者可以专注于用户体验中最重要的部分,而 SDK 则负责处理平台功能、设备发现、身份验证和兼容性等方面的底层工作。
![跨设备 SDK 架构。](https://developer.android.google.cn/static/images/develop/connectivity/cross-device-sdk/architecture.png?authuser=0000&hl=sl)
对于大多数应用开发者,我们建议使用 Multi-Device Sessions API。此 API 可将应用用户体验转移到其他设备或与其他设备共享体验。不过,如果您需要更精细地实现跨设备体验或者需要自定义设置,则可以使用独立的 Device Discovery API 和 Secure Connections API。
Cross device SDK 是开源的,适用于不同的 Android surface 和非 Android 生态系统设备(ChromeOS、Windows、iOS)。该 SDK 的目标是利用现有技术和平台功能,同时为应用开发者简化多设备体验的开发工作。