2016-06-29 80 views
1

我正在嘗試使用Firebase google登錄方法註冊我的應用程序。 googleSignInResult.isSuccess()返回始終爲false。我試着搜索所有可能的網站。但無法找到我的代碼有什麼問題。Firebase谷歌登錄結果總是假?

googleSignInButton = (Button)findViewById(R.id.googleSignInButton); 
    googleSignInButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      Intent googleSignInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient); 
      startActivityForResult(googleSignInIntent, RC_SIGN_IN); 

     } 
    }); 

代碼處理結果

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



    if(requestCode == RC_SIGN_IN){ 

     mAuth = FirebaseAuth.getInstance(); 
     GoogleSignInResult googleSignInResult = Auth.GoogleSignInApi.getSignInResultFromIntent(data); 
     Log.d(TAG , "Google signIn" + googleSignInResult.isSuccess()); 
     if(googleSignInResult.isSuccess()) 
     { 
      GoogleSignInAccount googleSignInAccount = googleSignInResult.getSignInAccount(); 
      AuthCredential accountAuthCredential = GoogleAuthProvider 
        .getCredential(googleSignInAccount.getIdToken(),null); 
      mAuth.signInWithCredential(accountAuthCredential).addOnCompleteListener(new OnCompleteListener<AuthResult>() { 
       @Override 
       public void onComplete(@NonNull Task<AuthResult> task) { 
        if(task.isSuccessful()){ 

         Intent i = new Intent(getApplicationContext(), MainActivity.class); 
         startActivity(i); 

        }else{ 

        } 
       } 
      }); 


     }else { 


     } 
    } 
} 
+0

難道ü在火力控制檯啓用? –

+0

是的。我已啓用Firebase控制檯。 –

+0

您可以發佈一些對您嘗試的解決方案的引用或在此處引入更多的代碼。 – devprashant

回答

3

我有類似的問題。以下解決它:

  1. 確保SHA1在火力地堡項目設置配置
  2. 在的build.gradle(應用程序)組:

    應用插件: 'com.android.application'

    在文件的開頭和

    應用插件: 'com.google.gms.google服務' 末依賴性{....}

    希望以後這有助於