在 Play Services 8+ 中,使用 Smart Lock API 将 Google 登录保存到用户的 Google 帐户不需要任何解析(确认 UI)(即,凭据的类型设置为IdentityProviders.GOOGLE
并且电子邮件地址与在设备,并且用户没有在设置中禁用保存)。请注意,使用 API 保存时,您不能在凭证对象上同时设置帐户类型和密码——如果用户有密码,只需将其存储用于身份验证。
具有此类凭据的 API 调用应自动保存并立即可用,因此只需检查此凭据在Auth.CredentialsApi.request()
使用 CredentialRequest
构建时可用,.setAccountTypes(IdentityProviders.GOOGLE)
并且已保存的凭据显示在passwords.google.com上并具有“with Google” "代替密码。
检索此凭据时,您可以使用它来了解您有一个具有现有帐户的用户,并且他们之前使用 Google 登录过。然后,您可以为此返回用户自定义身份验证 UI,或者简单地为用户自动触发 Google 登录流程,并在应用开始使用Auth.GoogleSignInApi.silentSignIn()
最新版本的 Google 登录库中的方法时为他们提供返回用户体验. 这是一个完整的代码示例。