0

FirebaseUI用电子邮件和Facebook登录工作正常,但如果我想用谷歌登录,点击后,我必须选择帐户,然后微调开始加载和而已。FirebaseUI通过谷歌在Android登录dosen't work

看着这个GitHub链接和Youtube video,做了一切,但我不知道为什么它不起作用。

compile 'com.firebaseui:firebase-ui-auth:0.6.0' 

apply plugin: 'com.google.gms.google-services' 

classpath 'com.google.gms:google-services:3.0.0' 


    @Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_log_in); 

    auth = FirebaseAuth.getInstance(); 
    if(auth.getCurrentUser() != null){ 
     Log.i(TAG, "user logged in"); 

    }else{ 
     startActivityForResult(AuthUI.getInstance() 
       .createSignInIntentBuilder() 
       .setProviders(AuthUI.GOOGLE_PROVIDER,AuthUI.FACEBOOK_PROVIDER,AuthUI.EMAIL_PROVIDER) 
       .build(),RC_SIGN_IN); 

    } 

} 


@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if(requestCode == RC_SIGN_IN){ 
     if(resultCode == RESULT_OK){ 
      Log.i(TAG, auth.getCurrentUser().getEmail()); 

     }else{ 
      Log.i(TAG, "something went wrong"); 
     } 
    }else{ 
     Log.i(TAG, "something went wrong"); 
    } 
} 

回答

1

如果您尚未将项目的SHA1指纹添加到Firebase控制台的项目设置中,则会发生此问题。如果您还没有这样做,请添加SHA1指纹并再次下载google-service.json文件。

FirebaseUI-Android Issue 182有关于此问题的更多讨论。

+1

最后发现我的问题,SHA1是正确的,并添加到控制台,但我注意到,我的Firebase控制台中的Web API密钥与我下载的json文件API密钥不匹配,所以我将我的json APi密钥更改为firebase控制台Web API密钥。原因是我认为,我开始我的项目与Windows操作系统,但现在我正在使用Linux。 – j22purikas