使用 CredentialsManager API 在我的 Android 应用程序中实现 Google 登录(并在我自己的 Pixel 设备上成功运行)后,我不在 Android 模拟器上进行测试(使用 Google API)。模拟器已使用我的 Google 帐户登录。
然而,
credentialManager.getCredential(context, request)
正在投掷NoCredentialException
。
我的
credentialOption
是:
val googleIdOption = GetGoogleIdOption.Builder()
.setFilterByAuthorizedAccounts(true)
.setServerClientId(webClientId)
.setAutoSelectEnabled(true)
.build()
在另一个模拟器上,我得到了
GetCredentialProviderConfigurationException
。
这是模拟器的问题还是我的实现的问题?
这是我自己的发现。如果有人可以提供更好的答案,我不会接受我自己的答案。
适用于 Android 13 的 Google API 模拟器映像使用 Play Services 22.50.14,该版本不支持 Google Sign In。 Android 14 和 15 Google API 映像有更新的版本 (23.18.18) 并且工作正常。 Google Play API 映像支持更新 Play Services 版本,因此更新后也可以正常工作。