本指南介绍了如何创建、管理和删除设备。正确的设备管理有助于打造流畅的用户体验,并高效使用 Ambient API。
创建设备
用户使用适用于电视和输入受限的设备应用的 OAuth 2.0 流程成功进行身份验证后,请在其 Google 相册账号中创建设备。
当您的应用使用 devices.create 方法成功创建设备时,Ambient API 会返回一个包含 Google 生成的 id 的 AmbientDevice 对象。安全地存储此 id,并将其与您的用户相关联。
使用 OAuth 简化设备创建流程
Ambient API 提供了简化的 OAuth 流程,可在进行用户身份验证的同时创建设备。通过在初始 OAuth 请求中传递额外的 state 参数,您可以将设备创建流程直接关联到用户的登录流程,从而减少用户需要扫描的二维码数量,简化用户体验。
如需了解详情和示例,请参阅 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函数。 - 参考文档:查看全面的设备参考文档,详细了解所有可用方法、请求和响应参数以及错误代码。
- 列出和检索媒体内容:创建和管理设备后,了解如何列出和检索要在设备上显示的媒体内容。