创建和管理设备

本指南介绍了如何创建、管理和删除设备。妥善管理设备有助于打造顺畅的用户体验,并高效使用 Ambient API。

创建设备

用户使用 OAuth 2.0 for TV and Limited-Input Device Applications 流程成功完成身份验证后,请在其 Google 相册账号中创建设备。

当您的应用使用 devices.create 方法成功创建设备后,Ambient API 会返回一个 AmbientDevice 对象,其中包含 Google 生成的 id。请安全地存储此 id 并将其与您的用户相关联。

使用 OAuth 简化设备创建流程

Ambient API 提供简化的 OAuth 流程。通过在初始 OAuth 请求中传递额外的 state 参数,并使用匹配的 requestId 调用 devices.create,您可以将设备创建流程直接关联到用户的登录流程,从而减少用户需要扫描的二维码数量,简化用户体验。

如需了解详情和示例,请参阅 Ambient API 的简化身份验证流程指南。

设备限制

您的应用最多可以为每位用户创建 100 个设备。 如果超出此限制,API 会返回 RESOURCE_EXHAUSTED 错误。

管理设备

创建设备并将其关联到用户的 Google 相册账号后,您可能需要管理其生命周期。

检索设备

如需检索有关特定设备的信息,请使用 devices.get 方法及其唯一 id。这有助于检查设备的状态,例如 mediaSourcesSet 是否为 true。

更新设备

您可以使用 devices.patch 方法更新现有设备的某些属性,例如其显示名称。这样,用户就可以个性化设置自己的设备,并更轻松地在 Google 相册中识别这些设备。

删除设备

制定删除设备的策略,以便进行适当的清理和用户控制。 您可以使用 devices.delete 方法删除设备。

请考虑以下删除设备的情形:

  • 用户断开连接:如果用户将您的应用与自己的 Google 相册账号断开连接,您应删除相应的设备。
  • 孤立设备:如果您丢失了 id,但仍有创建时使用的 requestId,则可以使用 requestId 和 devices.delete 移除孤立设备。这有助于防止意外重复,并保持用户账号的整洁。

重要注意事项和最佳实践

  • 设备生命周期和用户授权: 您需要管理设备的生命周期和用户授权令牌。请考虑设备保持活跃状态的时间,以及在设备变为不活跃状态或其令牌过期时如何处理令牌刷新或重新授权。
  • 错误处理: 为所有与设备相关的 API 调用实现强大的错误处理机制。请为以下情形做好准备:
    • NOT_FOUND:如果设备不存在或不归用户所有。
    • RESOURCE_EXHAUSTED:如果您超出设备限制。
    • ALREADY_EXISTS:如果您尝试使用已存在的 requestId 创建设备。

后续步骤

  • 示例应用: 我们的示例应用 包含创建设备和使用响应数据的示例。 如需了解详情,请查看 createDevice 函数。
  • 参考文档: 查看有关设备的全面 参考文档,详细了解所有可用方法、请求和响应 参数以及错误代码。
  • 列出和检索媒体文件: 创建和管理 设备后,了解如何列出和检索媒体文件以在 设备上显示。