A3L身份验证参考、故障排除和常见问题解答
在这里可以找到A3L身份验证API参考、A3L身份验证支持作用域列表、故障排除信息和常见问题。
A3L身份验证API参考
有关A3L身份验证中包含的类和方法的详细信息,请参阅完整的A3L身份验证API参考。
A3L身份验证支持的作用域
在A3L身份验证中,用户可以授予对下表所列作用域的访问权限。
常量 | 描述和值 |
---|---|
OAuth 2.0访问用户Google账户电子邮件地址的作用域: |
|
PROFILE | OAuth 2.0查看用户基本个人资料信息的作用域: profile |
OPEN_ID | OAuth 2.0访问个人资料的OpenID的作用域: openid |
故障排除
本节包含故障排除信息,可以帮助您识别、隔离和解决在集成A3L身份验证时可能会遇到的问题。
最低Android API级别为20或更低的应用的构建失败
如果应用需要支持API级别20或更低级别,并且未启用multidex,则构建可能会失败。要解决此问题,请按照启用multidex Android开发者文档中的指导操作,为您的应用启用multidex。
点击“Sign In”(登录)后不显示Google Sign-In弹出窗口
检查API控制台和A3L身份验证中的配置是否正确。如果您提供了客户端ID,请检查您提供的SHA1和程序包名称,以创建客户端ID并确保它们匹配。如果它们不匹配,Google将无法识别该应用,弹出窗口也不会显示。请务必修改凭证以使用正确的SHA1和程序包名称。有关如何配置应用的详细信息,请参阅配置Google API控制台。
完成身份验证后,自定义选项卡重定向到Google主页
如果完成身份验证后,用户被重定向到Google主页而不是返回应用,则您的清单占位符可能配置有误。必须在build.gradle文件中的清单占位符中提供Android客户端ID前缀。有关说明,请参阅将A3L身份验证SDK添加到您的项目。
无法初始化A3L身份验证
如果A3L身份验证初始化失败,并且收到“Internal Error APIException”(内部错误APIException)消息,则说明A3L身份验证SDK的安装可能存在问题。请将A3L身份验证AAR替换为可用的最新版本。
常见问题解答
以下是一些有关A3L身份验证的常见问题(FAQ)。
- 问: 为什么必须使用最低API级别21?
- A3L身份验证在内部使用Androidx Security Crypto库,以更安全的方式存储必要的数据。该库的最低要求是API级别21。
- 问:
setHostedDomain()
如何在不同类型的设备上运行? - 在启用了Google Play服务的设备上,
setHostedDomain()
方法不一定会阻止用户使用不同域名的电子邮件登录应用。
如果用户使用属于托管域的电子邮件登录其设备,则应用内登录窗口中会仅显示该电子邮件。如果用户未使用属于托管域的电子邮件登录设备,并且尝试登录应用,则应用会显示Google Sign-In窗口(由Google Play服务管理),以提示用户登录该设备。然后,用户可以选择使用来自其他域的电子邮件登录。但是,如果用户使用来自其他域的电子邮件登录,则应用内登录窗口不会像属于托管域的电子邮件那样,将该电子邮件显示为登录选项。
在Fire OS设备上,
setHostedDomain()
方法会限制用户的电子邮件ID,仅允许添加托管域内的电子邮件ID。 - 问: 在非亚马逊Android设备上,用户能否使用自己的Google账户登录从亚马逊应用商店下载的应用?
- 亚马逊应用商店中的应用未在Google注册。因此,亚马逊应用商店中的应用在Google Android设备上无法进行授权。
Last updated: 2023年12月5日