凭据

此库提供对用户凭据的统一访问。这可能包括密码、密钥和联合凭据。此库应用于提供无缝且安全的登录体验。
最新更新 稳定版本 候选版本 Beta 版本 Alpha 版本
2024 年 10 月 30 日 1.3.0 - 1.5.0-beta01 1.5.0-beta01

声明依赖项

要添加对凭据的依赖项,您必须将 Google Maven 代码库添加到您的项目中。阅读Google 的 Maven 代码库以了解更多信息。

在应用或模块的build.gradle文件中添加所需构件的依赖项

Kotlin

dependencies {
    implementation("androidx.credentials:credentials:1.5.0-beta01")

    // optional - needed for credentials support from play services, for devices running
    // Android 13 and below.
    implementation("androidx.credentials:credentials-play-services-auth:1.5.0-beta01")
}

Groovy

dependencies {
    implementation "androidx.credentials:credentials:1.5.0-beta01"

    // optional - needed for credentials support from play services, for devices running
    // Android 13 and below.
    implementation "androidx.credentials:credentials-play-services-auth:1.5.0-beta01"
}

有关依赖项的更多信息,请参阅添加构建依赖项

反馈

您的反馈有助于改进 Jetpack。如果您发现新的问题或有改进此库的想法,请告知我们。在创建新问题之前,请查看此库中现有问题。您可以通过点击星号按钮为现有问题添加您的投票。

创建新问题

有关更多信息,请参阅问题跟踪器文档

此构件没有发行说明。

凭据 e2ee 版本 1.0。

版本 1.0.0-alpha02

2024 年 4 月 17 日

androidx.credentials:credentials-e2ee:1.0.0-alpha02 已发布。此版本包含先前版本中缺少的源代码 jar 包。

版本 1.0.0-alpha01

2024 年 4 月 3 日

androidx.credentials:credentials-e2ee:1.0.0-alpha01 已发布。版本 1.0.0-alpha01 包含这些提交

新功能

  • 支持从通行密钥创建IdentityKeyIba31e

1.5 版

1.5.0-beta01 版

2024 年 10 月 30 日

已发布 androidx.credentials:credentials:1.5.0-beta01androidx.credentials:credentials-play-services-auth:1.5.0-beta01。1.5.0-beta01 版包含这些提交

新功能

以下新增功能的 Beta 版

  • 凭据选择的辅助 UI 体验:在登录时调用凭据管理器 API 向用户呈现选择器的应用开发者,现在可以使用新的 API 将相同的GetCredentialRequest与给定的视图(例如用户名或密码字段)关联。随后,当用户将焦点放在这些视图之一上时,相应的请求将发送到凭据管理器。生成的凭据将跨提供者聚合,并显示在自动填充之类的辅助 UI 中,例如键盘或下拉建议。因此,当所有 API 结合使用时,用户首先会看到一个选择器,如果将其关闭并点击上述字段之一,则会看到键盘/下拉建议。
  • 恢复凭据。恢复凭据用于将用户的凭据从之前的设备恢复到新的 Android 设备。通过为用户创建RestoreCredential,如果用户在设置阶段选择从旧设备传输应用,则凭据将自动传输到用户的新的设备。

API 变更

  • 允许开发者在CryptoObjectBiometricPromptData设置器中灵活设置条件。(Ie7e8e

1.5.0-alpha06 版

2024 年 10 月 16 日

已发布 androidx.credentials:credentials:1.5.0-alpha06androidx.credentials:credentials-play-services-auth:1.5.0-alpha06。1.5.0-alpha06 版包含这些提交

新功能

  • 准备库,以便很快进入稳定版本发布。

1.5.0-alpha05 版

2024 年 9 月 4 日

已发布 androidx.credentials:credentials:1.5.0-alpha05androidx.credentials:credentials-play-services-auth:1.5.0-alpha05。1.5.0-alpha05 版包含这些提交

API 变更

  • 支持一种新的凭据类型 - DigitalCredentialI12952
  • 公开包转换 API:公开更多asBundlefromBundle辅助程序,以便更轻松地跨 IPC 传递这些类(I1a017
  • 使PendingIntentHandler向后兼容。(I34c13
  • 使CallingAppInfo向后兼容(I65085
  • 公开ClearCredentialRequestTypes常量。

1.5.0-alpha04 版

2024 年 8 月 7 日

已发布 androidx.credentials:credentials:1.5.0-alpha04androidx.credentials:credentials-play-services-auth:1.5.0-alpha04。1.5.0-alpha04 版包含这些提交

API 变更

  • CreateRestoreCredentialRequestisCloudBackupEnabled参数添加了默认值。

错误修复

  • 删除了 credentials-play-services-authminSdkVersion

1.5.0-alpha03 版

2024 年 7 月 24 日

已发布 androidx.credentials:credentials:1.5.0-alpha03androidx.credentials:credentials-play-services-auth:1.5.0-alpha03。此版本是在内部分支中开发的。

新功能

  • 引入了一项新功能,即恢复凭据。恢复凭据用于将用户的凭据从之前的设备恢复到新的 Android 设备。通过为用户创建RestoreCredential,如果用户在设置阶段选择从旧设备传输应用,则凭据将自动传输到用户的新的设备。

API 变更

  • 添加了用于请求恢复凭据的新类。
  • 一种新的凭据类型RestoreCredential,可以在新设备上恢复凭据。
  • CreateRestoreCredentialRequest用于创建新的RestoreCredential
  • GetRestoreCredentialOption用于获取RestoreCredential
  • ClearCredentialStateRequest可以修改为清除RestoreCredential

错误修复

  • 为应用恢复目的添加了新的RestoreCredential API(If2d40

1.5.0-alpha02 版

2024 年 6 月 12 日

已发布 androidx.credentials:credentials:1.5.0-alpha02androidx.credentials:credentials-play-services-auth:1.5.0-alpha02。此版本是在内部分支中开发的。

新功能

  • 现在,CredentialManager直接在凭据创建和检索流程中注入BiometricPrompt的功能已可通过 Jetpack 供提供商使用。

API 变更

  • BiometricPromptData添加到 API 表面,以便通过CredentialManager使用新的注入BiometricPrompt流程(I3b159
  • 修改了CreateEntryCredentialEntry中所有入口类和子类,以获得提供商的BiometricPromptData的效用。(I16936I8e5bc
  • 添加了必要的类型,用于使用CredentialManager对注入的BiometricPrompt流程的错误和结果进行编码。(I8e5bc

1.5.0-alpha01 版

2024 年 5 月 29 日

已发布 androidx.credentials:credentials:1.5.0-alpha01androidx.credentials:credentials-play-services-auth:1.5.0-alpha01。此版本是在内部分支中开发的。

新功能

凭据选择的辅助 UI 体验:在登录时调用凭据管理器 API 向用户呈现选择器的应用开发者,现在可以使用新的 API 将相同的GetCredentialRequest与给定的视图(例如用户名或密码字段)关联。

随后,当用户将焦点放在这些视图之一上时,相应的请求将发送到凭据管理器。生成的凭据将跨提供者聚合,并显示在自动填充之类的辅助 UI 中,例如键盘或下拉建议。因此,当所有 API 结合使用时,用户首先会看到一个选择器,如果将其关闭并点击上述字段之一,则会看到键盘/下拉建议。

API 变更

  • 一个PendingGetCredentialRequest类,它接收一个(预先存在的)GetCredentialRequest和一个回调函数,当异步可用时,将使用一个(预先存在的)GetCredentialResponse调用该回调函数。
  • Android View 类的新的扩展设置器 API,允许设置PendingGetCredentialRequest的实例。使用此 API 将准备给定的视图,以便当用户点击它时,凭据建议将显示在辅助 UI 体验(例如键盘/下拉建议)上。

1.3 版

1.3.0 版

2024 年 10 月 2 日

已发布 androidx.credentials:credentials:1.3.0androidx.credentials:credentials-play-services-auth:1.3.0。1.3.0 版包含这些提交

自 1.2.0 版以来的重要更改

在使库更可靠和一致方面取得了各种重要改进,包括但不限于

  • 在所有 Android 版本上支持preferImmediatelyAvailableCredentials
  • 改进的 proguard 规则,以减少应用大小的增加。
  • 各种次要错误修复。

1.3.0-rc01 版

2024 年 7 月 10 日

已发布 androidx.credentials:credentials:1.3.0-rc01androidx.credentials:credentials-play-services-auth:1.3.0-rc01。1.3.0-rc01 版包含这些提交

新功能

  • 版本升级发布,以及少量实现更新。

1.3.0-beta02 版

2024 年 6 月 12 日

已发布 androidx.credentials:credentials:1.3.0-beta02androidx.credentials:credentials-play-services-auth:1.3.0-beta02。1.3.0-beta02 版包含这些提交

错误修复

  • 修复了逻辑,以便在包含预 U 设备错误的公钥凭据流中正确检查NOT_ALLOWED_ERR而不是CONSTRAINT_ERRI31b37

1.3.0-beta01 版

2024 年 5 月 29 日

已发布 androidx.credentials:credentials:1.3.0-beta01androidx.credentials:credentials-play-services-auth:1.3.0-beta01。1.3.0-beta01 版包含这些提交

API 变更

  • 重命名reateCredentialRequest包转换 API。(I46b95
  • 更新 priorityhints API(Ida554

1.3.0-alpha04 版

2024 年 5 月 14 日

已发布 androidx.credentials:credentials:1.3.0-alpha04androidx.credentials:credentials-play-services-auth:1.3.0-alpha04。1.3.0-alpha04 版包含这些提交

错误修复

  • 将 androidx 库的默认minSdkVersion移至 21。(I6ec7f
  • 支持 Android 13 及以下版本的 PRF 创建。
  • 支持 Android 13 及以下版本的preferImmediatelyAvailableCredentials

1.3.0-alpha03 版

2024 年 4 月 17 日

已发布 androidx.credentials:credentials:1.3.0-alpha03androidx.credentials:credentials-play-services-auth:1.3.0-alpha03。此版本包含先前版本中缺少的源代码 jar 包。

1.3.0-alpha02 版

2024 年 4 月 3 日

已发布 androidx.credentials:credentials:1.3.0-alpha02androidx.credentials:credentials-play-services-auth:1.3.0-alpha02。1.3.0-alpha02 版包含这些提交

新功能

  • 添加了新的 API,这些 API 可帮助在getCredentialcreateCredential调用期间在凭据选择器中清晰地显示凭据条目。

API 变更

  • 扩展了凭据选项 API 表面,其中包含显示优先级信息(Ied6fe
  • 公开了原始包到结构化数据转换辅助程序(If03a0
  • 公开了isDefaultIconisAutoSelectAllowedFromOption API(I05c59
  • 扩展了凭据条目 API 表面,其中包含有关默认图标的信息(I9fe00
  • 向凭据条目添加了一个entryGroupId位(Id995c
  • CredentialEntry API 表面添加了一个新的affiliationName属性。(I6261e
  • 公开面向框架使用的 fromXYZEntry API (I645a1)

错误修复 - 当平台凭据管理器不可用时,提供回退解决方案。(b/310701473) - 修复 clearCredentialState API 引起的空指针异常 (b/327686881)

版本 1.3.0-alpha01

2023年12月13日

androidx.credentials:credentials:1.3.0-alpha01androidx.credentials:credentials-play-services-auth:1.3.0-alpha01 已发布。 版本 1.3.0-alpha01 包含这些提交。

错误修复

  • Google Play 服务所需的最低 APK 版本现在为 2023 v08.23(APK 版本 230815045),此检查已集成到库中。(aosp/2856137)
  • 修复了由多个并发请求的竞争条件引起的已恢复错误 (Ic3567)

版本 1.2

版本 1.2.2

2024 年 4 月 3 日

androidx.credentials:credentials:1.2.2androidx.credentials:credentials-play-services-auth:1.2.2 已发布。版本 1.2.2 包含 这些提交

错误修复

  • 修复了由多个并发请求的竞争条件引起的已恢复错误 (Ic3567)
  • 修复 clearCredentialState API 引起的空指针异常 (b/327686881)

版本 1.2.1

2024年3月6日

androidx.credentials:credentials:1.2.1androidx.credentials:credentials-play-services-auth:1.2.1 已发布。版本 1.2.1 包含 这些提交

错误修复

  • 当平台凭据管理器不可用时,提供回退解决方案。(b/310701473)

版本 1.2.0

2023年11月1日

androidx.credentials:credentials:1.2.0androidx.credentials:credentials-play-services-auth:1.2.0 已发布。 版本 1.2.0 包含这些提交。

自 1.0.0 版本以来的重要更改

  • 此版本添加了一组新的 API,用于支持凭据提供程序存储和获取用户请求的密码和密钥。

版本 1.2.0-rc01

2023年10月4日

androidx.credentials:credentials:1.2.0-rc01androidx.credentials:credentials-play-services-auth:1.2.0-rc01 已发布。 版本 1.2.0-rc01 包含这些提交。

  • 版本升级发布,并包含少量实现更新

版本 1.2.0-beta04

2023年9月20日

androidx.credentials:credentials:1.2.0-beta04androidx.credentials:credentials-play-services-auth:1.2.0-beta04 已发布。 版本 1.2.0-beta04 包含这些提交。

新功能

  • 添加了使用 Google 登录的登录意图流程。(Ib6559I7a042)
  • 为允许列入白名单的包添加了单签名检查。(Ie6ff5)
  • 更新了 PublicKeyCredential JSON 解析以利用更新的 toJson() 方法。(I708e3I00402)

错误修复

版本 1.2.0-beta03

2023年8月23日

androidx.credentials:credentials:1.2.0-beta03androidx.credentials:credentials-play-services-auth:1.2.0-beta03 已发布。 版本 1.2.0-beta03 包含这些提交。

错误修复

  • 删除 uvm 扩展,因为 webauthn 规范计划弃用。(I2d46d)
  • 确保符合关于 clientExtensionscredProps 和 rk 属性的 webauthn 规范 (I3ab01)

版本 1.2.0-beta02

2023年8月1日

androidx.credentials:credentials:1.2.0-beta02androidx.credentials:credentials-play-services-auth:1.2.0-beta02 已发布。 版本 1.2.0-beta02 包含这些提交。

错误修复

版本 1.2.0-beta01

2023年7月26日

androidx.credentials:credentials:1.2.0-beta01androidx.credentials:credentials-play-services-auth:1.2.0-beta01 已发布。 版本 1.2.0-beta01 包含这些提交。

API 变更

  • 公开一个 API,用于确定来源是否已填充 (Ia91f4)
  • 使自定义异常在语义上正确 (Ibf6f4)
  • 添加测试 API (I61c1d)
  • 添加测试 API (Iaeb6f)
  • 删除实验性 isAtLeastU() API 的用法 (Ie9117b/289269026)
  • 公开一个接受允许列表的自定义来源 getter (I0c1b4)
  • 添加 VisibleForTest 注解 (I5467a)
  • 添加 VisibleForTest 注解 (Idf57a)
  • 删除仅用于测试的 API (Idcc05)
  • 将提供程序入口类公开给更低的 API 级别 (I2e00a)
  • 添加测试 API (Id6b9e)

错误修复

  • 添加测试 API (I0d243)
  • 添加新的测试 API (I6fa12)
  • 公开创建请求的自动选择功能 (I84eee)
  • 使 JSON 编码错误更详细 (I7a865)
  • 在非活动上下文参数上优雅地报告开发人员错误 (/I20dd7b/288288940)
  • 更正了从提供程序返回的异常的异常解析 (Iaa2afI0d243I55151)
  • 改进了 toSlice 的文档

版本 1.2.0-alpha05

2023年6月7日

androidx.credentials:credentials:1.2.0-alpha05androidx.credentials:credentials-play-services-auth:1.2.0-alpha05 已发布。此版本在内部分支中开发。

新功能

  • 与公共分支一起引入的 GMS 模块的 get API 的向后兼容解析。

版本 1.2.0-alpha04

2023年5月10日

androidx.credentials:credentials:1.2.0-alpha04androidx.credentials:credentials-play-services-auth:1.2.0-alpha04 已发布。此版本在内部分支中开发。

版本 1.2.0-alpha03

2023年4月12日

androidx.credentials:credentials:1.2.0-alpha03androidx.credentials:credentials-play-services-auth:1.2.0-alpha03 已发布。这是从内部分支发布的。

版本 1.2.0-alpha02

2023年3月8日

androidx.credentials:credentials:1.2.0-alpha02androidx.credentials:credentials-play-services-auth:1.2.0-alpha02 已发布。从内部分支开发。

API 变更

  • 通过将构造函数设为公共函数来启用对提供程序请求类的测试。
  • 在所有入口类中都需要图标。但是,如果凭据提供程序不提供图标,此库将提供回退图标。
  • 允许凭据提供程序设置多个身份验证操作入口,并为每个入口设置标题。
  • 删除所有特权请求类。提供程序现在可以简单地从 android.service.credentials.CallingAppInfo 类获取来源,并且不需要为特权调用(代表另一个应用程序的调用)处理特殊的请求类。

版本 1.2.0-alpha01

2023年2月8日

androidx.credentials:credentials:1.2.0-alpha01androidx.credentials:credentials-play-services-auth:1.2.0-alpha01 已发布。 版本 1.2.0-alpha01 包含这些提交。

新功能

  • 此版本添加了一组新的 API,用于支持凭据提供程序存储和获取用户请求的密码和密钥。

API 变更

  • 添加了支持凭据提供程序的新 API。

版本 1.0

版本 1.0.0-alpha09

2023年6月7日

androidx.credentials:credentials:1.0.0-alpha09androidx.credentials:credentials-play-services-auth:1.0.0-alpha09 已发布。 版本 1.0.0-alpha09 包含这些提交。

错误修复

  • 验证异常类型是否准确且一致。(Id13d7)
  • 支持获取密钥请求中的 json 格式。(I25100)
  • 密钥检索流程与早期 GMS 模块向后兼容。(I23878)

版本 1.0.0-alpha08

2023年5月3日

androidx.credentials:credentials:1.0.0-alpha08androidx.credentials:credentials-play-services-auth:1.0.0-alpha08 已发布。 版本 1.0.0-alpha08 包含这些提交。

错误修复

  • 改进了调试输出的可读性和错误消息。

版本 1.0.0-alpha07

2023年4月19日

androidx.credentials:credentials:1.0.0-alpha07androidx.credentials:credentials-play-services-auth:1.0.0-alpha07 已发布。 版本 1.0.0-alpha07 包含这些提交。

错误修复

版本 1.0.0-alpha06

2023年4月5日

已发布 androidx.credentials:credentials:1.0.0-alpha06androidx.credentials:credentials-play-services-auth:1.0.0-alpha061.0.0-alpha06 版本包含这些提交。

新功能

  • 更新了与 Google ID 的集成,将与 com.google.android.libraries.identity.googleid:googleid:1.0.0 协同工作。

1.0.0-alpha05 版本

2023 年 3 月 22 日

已发布 androidx.credentials:credentials:1.0.0-alpha05androidx.credentials:credentials-play-services-auth:1.0.0-alpha051.0.0-alpha05 版本包含这些提交。

错误修复

  • 在用户取消模态表单时,正确报告用户取消错误。(/I9ff3b/271863184)

1.0.0-alpha04 版本

2023年3月8日

已发布 androidx.credentials:credentials:1.0.0-alpha04androidx.credentials:credentials-play-services-auth:1.0.0-alpha041.0.0-alpha04 版本包含这些提交。

API 变更

  • 为在 Jetpack 库中设置来源添加了 android.permission.CREDENTIAL_MANAGER_SET_ORIGIN 权限要求。(Ibaad4)
  • 添加了密钥获取流程异常 (I4f654)
  • CredentialManager API 自动选择行为更新 (I576dd)
  • CreateCredentialRequest.DisplayInfo 现在使用 CharSequence 而不是 String 字段。(I85e70)

错误修复

  • 添加 ProGuard 规则以确保 R8 不会移除 Play Auth 模块。(9543977)

1.0.0-alpha03 版本

2023 年 2 月 22 日

已发布 androidx.credentials:credentials:1.0.0-alpha03androidx.credentials:credentials-play-services-auth:1.0.0-alpha031.0.0-alpha03 版本包含这些提交。

新功能

  • 添加了对使用 Google 登录的支持。

API 变更

  • 允许 UnsupportedException 正确运行 (I68208)
  • 添加了一种新的异常类型,用于处理例如设备不包含必要标志的情况 (If08dd)
  • CredentialManager 异常 API (I72947)

版本 1.0.0-alpha02

2023年2月8日

已发布 androidx.credentials:credentials:1.0.0-alpha02androidx.credentials:credentials-play-services-auth:1.0.0-alpha021.0.0-alpha02 版本包含这些提交。

API 变更

  • CredentialManager API 签名更改 (Iabdec)
  • CredentialManager API 签名更改 (I977ed)
  • CredentialManager API 签名更改 (Ia6e9b)

错误修复

  • 旧的“cable”在 webauthn 规范 中不再受支持,其替代方案“hybrid”现在已返回传输列表。
  • 传输以二维列表的形式返回,此问题已修复为正确的 1d 列表。

版本 1.0.0-alpha01

2023 年 1 月 11 日

已发布 androidx.credentials:credentials:1.0.0-alpha01androidx.credentials:credentials-play-services-auth:1.0.0-alpha011.0.0-alpha01 版本包含这些提交。

新功能

  • 此版本包含一个新的 Jetpack 库,它提供对用户凭据的统一访问。这可能包括密码、密钥和联合凭据。此库应用于提供无缝且安全的登录体验。
  • androidx.credentials:credentials-play-services-auth:1.0.0-alpha01 是一个可选库,允许将凭据存储到 Google 密码管理器并从中检索。对于运行 Android API 等级 <= 33 的设备,需要此依赖项。

API 变更

  • 具有新 API 的新库