Android工作室中的谷歌登录按钮whit firebase,错误:找不到符号变量default_web_client_id

时间:2017-05-23 15:47:52

标签: android firebase google-authentication

我尝试在我的Android应用中使用google登录按钮(建议使用firebase),如下所示:

        GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
            .requestIdToken(getString(R.string.default_web_client_id))
            .requestEmail()
            .build();
    // [END config_signin]

    mGoogleApiClient = new GoogleApiClient.Builder(this)
            .enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
            .addApi(Auth.GOOGLE_SIGN_IN_API, gso)
            .build();

但是返回此错误:错误:(112,51)错误:找不到符号变量default_web_client_id

如果我尝试修改我的R目录,我就不能这样了,所以我被卡住了。在我的应用程序的早期版本的R文件中,我public static final int default_web_client_id=0x7f060079;

2 个答案:

答案 0 :(得分:2)

default_web_client_id由从Firebase下载的JSON配置中的google-services插件生成。

确保您已遵循https://firebase.google.com/docs/android/setup#manually_add_firebase

中所述的Firebase Android设置
  1. google-services.json从Firebase控制台添加到您的应用/模块目录
  2. 添加到root build.gradle中的dependenciesclasspath 'com.google.gms:google-services:3.1.0'
  3. 在应用build.gradle底部应用插件:apply plugin: 'com.google.gms.google-services'

答案 1 :(得分:-1)

好,解决方案简单易行。大多数开发人员在关闭项目并重新打开项目后发现错误,然后会导致default_web_client错误。

解决方案:

您需要在

中添加客户端ID。

res->值->字符串

添加此内容 <string name="default_web_client_id" translatable="false">xxxxxxxx</string>

对于客户端ID(xxxxxxxxx),您可以转到Firebase控制台并粘贴到此处。

You can watch this video for more easiness

此视频将正确指导您。