我的项目在过去的六个月里运行良好,并且在app商店中运行。对于更新,我重新打开项目,显示default_web_client未解析以下代码段。
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.default_web_client_id))
.requestEmail()
.build();
我尝试以下方法,
1.清洁和重建
2.清除缓存并重新启动
3.将getString(R.string.default_web_client_id)
设置为空字符串并运行项目以生成
app/build/generated/res/google-services/{build_type}/values/values.xml
文件作为来自this链接的指令
4.用getString(R.string.default_web_client_id)
替换空字符串
现在我能够运行项目并且还能够进行发布构建。但仍然无法解析符号default_web_client_id。
任何更新都会有所帮助......
注意:直接添加oauth_client->client_id
会出错
W/GoogleActivity: Google sign in failed
com.google.android.gms.common.api.ApiException: 12500:
at com.google.android.gms.common.internal.ApiExceptionUtil.fromStatus(Unknown Source)
我的代码也遇到了同样的问题
Cannot resolve symbol 'default_web_client_id'
我已尝试将clientID作为参数而不是R.string.default_web_client_id)
.requestIdToken(*My Client Id*)
并在调试代码中获取以下内容
W/System.err: com.google.android.gms.common.api.ApiException: 12500:
我已将Google服务更新为Project level build.gradle中的最新版本(google-serivces:4.2.0)
!对我有用的解决方案!
.requestIdToken(*My New Client Id*)
6.运行你的应用程序:)
我已将谷歌服务版本更新为项目级build.gradle中的最新版本并且工作正常
classpath 'com.google.gms:google-services:4.2.0
我和你一样有同样的问题。更新Android工作室后,它收到错误。无需修复,因为Google会尝试让您的应用越来越安全。如果您尝试为default_web_client_id创建另一个值,它将显示错误dupplicate变量。要查找default_web_client_id的值*更改模式为Project - > app - > build - > generated - > google-services - > debug - > values - > values.xml。因此,这在编译时不会导致错误,您无需修复它。让谷歌稍后修复它:D
好的,首先让我告诉你为什么会这样,因为大多数时候开发人员都可以面对它。当您将Friebase Auth与google集成后,关闭项目后,default_web_client_id将会消失。
而最可悲的部分是你无法添加自己。
那么现在该怎么办:
解:
转到res - > values - >字符串
添加客户端ID(xxxxxx)
<string name="default_web_client_id" translatable="false">xxxxxxx</string>
你可以在这里找到如何添加