关于恢复凭据

借助 Credential Manager 的恢复凭据功能,用户可以在设置新设备后首次打开应用时自动恢复其应用账号并登录。恢复凭据(也称为恢复密钥)是一种凭据,可以本地保存或备份到云端提供商,然后用于在用户的新设备上预配访问权限。

本指南假定您熟悉以下概念:

福利

恢复凭据功能的好处包括:

  • 提供顺畅的用户体验:用户无需手动登录,即可立即在 新设备上开始使用应用。
  • 立即互动:用户开始使用新设备后,您可以立即通过通知或其他 提示与用户互动。

流程概览

以下部分介绍了每台设备上所需的流程:

在上一部设备上

在用户向您的应用进行身份验证后生成恢复密钥 - 紧随用户登录之后,以及在用户已登录的情况下后续启动应用期间。 Android 备份服务会自动将生成的恢复密钥存储在设备上,并根据用户的备份设置,将其保存到云端。

用户必须满足以下要求,才能备份到云端:

  • 已登录自己的 Google 账号。
  • 已启用 Android 数据备份。如需了解详情,请参阅 数据备份
  • 已设置屏幕解锁机制,例如解锁图案、PIN 码、密码或生物识别信息。

如果不满足这些条件,系统会抛出 E2eeUnavailableException

在新设备上

当用户设置新设备时,恢复凭据会在设备设置过程中在后台静默运行。用户可以选择通过以下任一选项恢复数据:

  • 通过云端备份:如果使用云端备份,恢复密钥会随应用数据一起 下载到新设备。
  • 使用设备到设备传输:当用户使用 USB 线连接旧设备和新 设备时,恢复密钥会通过 USB 线从旧设备移动到新 设备。

在新设备上提供恢复密钥后,您可以使用它来登录用户。

将凭据从旧设备恢复到新设备的流程无需用户互动
图 1: 恢复凭据的流程概览

处理多个系统配置文件和应用账号

在实现恢复凭据功能时,请考虑以下有关多账号应用和系统级配置文件的限制。

具有多个已登录账号的应用

某些应用允许用户在多个有效账号之间切换(例如,在同一应用中切换个人电子邮件账号和工作电子邮件账号)。恢复凭据仅支持每个应用一个账号。如果用户登录了多个账号,您必须仅选择一个账号来创建恢复密钥。通常,这应该是主要账号或最近使用的账号。

具有多个系统配置文件的设备

在配置了单独系统配置文件(例如,具有工作资料和个人资料的公司设备)的设备上,恢复密钥仅适用于设备上首先设置的配置文件。

限制

恢复凭据适用于移动设备,但不适用于各种外形规格 的设备