首页 > 编程知识 正文

google登录失败怎么办,google账号登录失败

时间:2023-05-03 10:18:37 阅读:208049 作者:3778

问题背景

最近(2021.09)使用google登陆总是失败,以前也经常碰到登陆失败的问题,但往往是测试环境服务器挂掉导致,因此一开始也想当然的又把原因归结于此,结果iOS登陆没问题。问题被抛给我,于是进行分析。

日志

找到登陆模块,在登陆结果返回的地方打印出日志。无论是成功异常啥的一股脑全部打出来。最后发现只有异常部分的日志打印了。日志如下:

Error com.google.android.gms.common.api.ApiException: 10: caused a SocialLoginPlatformProviderException(socialException=com.google.android.gms.common.api.ApiException: 10: ) while trying to login

根据日志情况搜了一下:
得到如下结果Why do I get com.google.android.gms.common.api.ApiException: 10:?
可以看出是debug的key需要在firebase上注册。
cd到key所在目录,执行命令

keytool -list -v -keystore keystore.jks

打印出sha1码,复制按照上述stackoverflow上的方式,添加到相应的位置。再次打包,发现就能够正确登陆了。

总结

本次问题解决并不像上述那么简洁,实际上耗费了我几个小时才找到问题的真正原因。

首先主要是自己关于google登陆相关知识的欠缺。由于该模块不是自己做的,自己也没想过google登陆实际上是用到了firebase,事先也并不了解需要使用sha1码在firebase上的注册。解决后想想其实也情有可原。虽然没做过这个登陆,但是以前所做的分享,像是分享到新浪、微信等都是首先要在相应的平台上注册应用的包名以及key的sha1码。

其次是其他的一些干扰因素。第一个是自己混淆了run和正式打包的区别,导致了时间的耽误。由于正式打包太慢,自己就直接将本地run的版本发给了对方进行测试。结果发给对方后根本安装不上。报错

Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]

查询该日志含义,对方使用的测试机的abi不符合。后面反应过来是对方使用的测试机与我的测试机的abi不一样,本地run的版本只编译了和本地机器相适应的abi,而该abi可能不适用于其他机型。这就是使用run编译较快且apk较小的原因。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。