凭据

此库提供对用户凭据的统一访问。这可能包括密码、密钥和联合凭据。此库应用于提供无缝且安全的登录体验。
最新更新 稳定版 候选发布版 测试版 Alpha 版
2024 年 9 月 4 日 1.2.2 1.3.0-rc01 - 1.5.0-alpha05

声明依赖项

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

在您的应用程序或模块的 build.gradle 文件中添加您需要的工件依赖项

Kotlin

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

    // 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-alpha05")
}

Groovy

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

    // 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-alpha05"
}

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

反馈

您的反馈有助于改进 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 包含 这些提交

新功能

  • 支持从密钥创建 IdentityKey (Iba31e)

版本 1.5

版本 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 变更

  • 支持新的凭据类型 - DigitalCredential (I12952)
  • 公开捆绑转换 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 已发布。此版本是在内部分支中开发的。

新功能

  • 现在,通过 Jetpack 为提供者提供了 CredentialManager 直接在凭据创建和检索流程中灌注 BiometricPrompt 的功能。

API 变更

  • BiometricPromptData 添加到 API 表面,以便通过 CredentialManager 利用新的灌注 BiometricPrompt 流程 (I3b159)
  • 修改了 CreateEntryCredentialEntry 中的所有入口类和子类,以获得 BiometricPromptData 的实用程序,供提供者使用。(I16936I8e5bc)
  • 添加了用于对灌注 BiometricPrompt 流与 CredentialManager 的错误和结果进行编码所需的类型。(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-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_ERR (I31b37)

版本 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 引起的 NPE (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 版本 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 引起的 NPE (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 登录添加了获取登录意图流程。 (Ib6559,I7a042)
  • 为白名单包添加了单签名检查。 (Ie6ff5)
  • 更新了 PublicKeyCredential json 解析以使用更新的 toJson() 方法。 (I708e3, I00402)

错误修复

版本 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 包含这些提交。

错误修复

  • 由于 webauthn 规范中计划弃用,删除了 uvm 扩展。 (I2d46d)
  • 确保符合 webauthn 规范,关于 clientExtensions, credProps 和 rk 属性。 (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 包含这些提交。

错误修复

  • b/293743991 - 修正了 authenticatorData 字段的常数值,以便正确解析 authenticationResponseJson 属性,在 PublicKeyCredential 中。

版本 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 的用法。 (Ie9117, b/289269026)
  • 公开了一个自定义来源获取器,该获取器接受白名单。 (I0c1b4)
  • 添加了 VisibleForTest 注解。 (I5467a)
  • 添加了 VisibleForTest 注解。 (Idf57a)
  • 删除了仅供测试的 API。 (Idcc05)
  • 将提供者条目类公开到更低的 API 级别。 (I2e00a)
  • 添加测试 API。 (Id6b9e)

错误修复

  • 添加测试 API。 (I0d243)
  • 添加了新的测试 API。 (I6fa12)
  • 公开创建请求的自动选择。 (I84eee)
  • 使 JSON 编码错误更加详细。 (I7a865)
  • 在非 Activity 上下文参数上,优雅地报告开发人员错误。 (/I20dd7, b/288288940)
  • 修正了从提供者返回的异常的异常解析。 (Iaa2af,I0d243,I55151)
  • 改进了 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 模块,对获取 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-alpha06 发布。 版本 1.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-alpha05 发布。 版本 1.0.0-alpha05 包含这些提交。

错误修复

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

版本 1.0.0-alpha04

2023 年 3 月 8 日

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

API 变更

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

错误修复

  • 添加 Proguard 规则,以确保播放身份验证模块不会被 R8 删除。 (9543977)

版本 1.0.0-alpha03

2023 年 2 月 22 日

androidx.credentials:credentials:1.0.0-alpha03androidx.credentials:credentials-play-services-auth:1.0.0-alpha03 已发布。 版本 1.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-alpha02 已发布。 版本 1.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-alpha01 已发布。 版本 1.0.0-alpha01 包含以下提交。

新功能

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

API 变更

  • 具有新 API 的新库