凭据管理器常见问题解答

此页面上的问答对旨在帮助您更好地了解凭据管理器的实现细节。

您的反馈对于改进凭据管理器 API 至关重要。使用以下链接分享您发现的任何问题或改进 API 的想法

提供反馈

集成

为什么需要另一个 Jetpack 库来进行应用身份验证?

Jetpack 凭据管理器库可在所有 Android 版本中提供统一的登录体验。它还允许您及时获取最新功能的更新。它具有向后兼容性,Android 4.4 及更高版本普遍支持,Android 9 及更高版本支持密钥。

这些凭据来自哪里?

凭据来自与凭据管理器集成的凭据提供程序和密码管理器(例如Google 密码管理器),并且用户已启用这些凭据。此外,对于密钥,用户可以选择使用混合流程从另一台设备获取它们。

在哪些不同的用例中,凭据管理器更有意义或更需要实现?

凭据管理器为您的应用提供了一种无缝且安全的方式来管理身份验证流程,它在一个整合的 API 中提供了几种登录方法的统一用户界面。这有几个好处

  • 用户喜欢在一个地方查看所有凭据;密钥、密码和联合凭据(如“使用 Google 登录”),而无需点击 3 个不同的位置
  • 通过整合每个帐户的登录方法,提供更简单的登录体验。

    此外,在 Android 14 设备上,用户界面仅显示最安全和最简单的身份验证方法。例如,如果用户对同一个帐户同时拥有密钥和密码,则在帐户选择器中只会建议使用密钥。

  • 支持在单个 API 中使用多种登录机制。它为 Android 应用带来密钥支持,从而能够过渡到无密码的未来。同时,它还支持密码和联合登录(如“使用 Google 登录”),从而简化集成要求和持续维护。

集成期间需要添加多个依赖项,为什么需要多个依赖项?是否可以只有一个依赖项来实现相同的功能?

有一个必需的依赖项和一个可选的依赖项。应用会根据其用例包含不同的依赖项。

  1. [**必需**] androidx.credentials:credentials:包含核心凭据管理器功能,包括密码和密钥支持。
  2. [**可选**] androidx.credentials:credentials-play-services-auth:提供 Google Play 服务对凭据管理器的支持,使您能够在旧版设备上使用 API。

凭据管理器是否支持使用来自另一台设备的凭据?

凭据管理器通过混合传输支持跨设备密钥使用。

开发者能否使用凭据管理器将注册和登录流程合并到一个 API 调用中?

目前还没有计划。

UX

如果用户已设置了未在凭据管理器中注册的提供程序,则向用户显示什么 UX?

未在凭据管理器中注册的提供程序将继续与自动填充框架一起运行,在键盘和下拉菜单中显示建议。

其他

当已存在不同的登录选项并且也有屏幕锁定时,为什么还需要凭据管理器?

在 Android 设备上,用户有不同的解决方案来简化对应用和网站的身份验证。由于每个应用都可能与不同的解决方案组合集成,因此用户体验可能大不相同。

凭据管理器为 Android 上的第三方服务提供了一种连贯一致的登录用户体验,无论用户偏好的或应用支持的登录方式是什么:用户名和密码、密钥或联合身份。

通过凭据管理器 API 使用密钥可以满足哪些具体的用户需求?

  • 无需用户创建和记住复杂的密码。
  • 创建一种防钓鱼的登录方式,提高用户的安全性。

重大错误的更新发布需要多长时间?

Jetpack 每两周发布一次。该平台根据错误的类型和严重程度,提供安全版本、季度版本和甜点版本。详细了解Jetpack 发布流程

集成后对性能(应用启动时间)是否有影响?

建议明智地选择何时初始化凭据管理器登录流程,并在 API 初始化后衡量应用性能。

此 API 是否与 Android Go 设备兼容?

是的,此 API 与 Go 设备兼容。

如果开发者使用短信 OTP 或联合身份进行登录,凭据管理器是否也支持?

凭据管理器支持密钥、密码和 Google ID 令牌作为登录方式。Google ID 令牌也可用于注册工作流程。