2017-11-29 3 views
0

私は自分のアプリケーションにFirebase認証を実装しようとしています。既存のユーザが最新バージョンをインストールすると、何回サインインしても認証画面が消えません。Firebase USer登録 - 画面が消えない

私が新しいコンピュータに移動するまで、その本当に奇妙なことは完全に働いていました。

新しいアカウントには適用されないようですが、以前設定したアカウントは新しいバージョンのアプリにログインできません。

mAuthStateListener = new FirebaseAuth.AuthStateListener() { 
     @Override 
     public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) { 
      FirebaseUser user = firebaseAuth.getCurrentUser(); 
      if (user != null) { 
       //user is signed in 
       onSignedInInialise(user.getDisplayName()); 

      } else { 
       //user is signed out 
       onSignedOutCleanup(); 
       startActivityForResult(
         AuthUI.getInstance() 
           .createSignInIntentBuilder() 
           .setIsSmartLockEnabled(false) 
           .setProviders(Arrays.asList(
             new AuthUI.IdpConfig.Builder(AuthUI.EMAIL_PROVIDER).build(), 
             new AuthUI.IdpConfig.Builder(AuthUI.GOOGLE_PROVIDER).build())) 
           .build(), 
         RC_SIGN_IN); 
      } 

     } 
    }; 



@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (requestCode == RC_SIGN_IN) { 
     if (resultCode == RESULT_OK) { 
      FirebaseUser user = mFirebaseAuth.getCurrentUser(); 
      String uid = user.getUid(); 
      String userName = user.getDisplayName(); 
      String userEmail = user.getEmail(); 
      Uri userProfilePic = user.getPhotoUrl(); 
      createUserInFirebaseHelper(uid, userName, userEmail); 
      Toast.makeText(MainActivity.this, "Hello " + userName + "!", Toast.LENGTH_SHORT).show(); 

     } else if (resultCode == RESULT_CANCELED) { 
      Toast.makeText(MainActivity.this, "Sign in cancelled", Toast.LENGTH_SHORT).show(); 
      finish(); 
     } 
    } else if (requestCode == GPS_PERMISSION) { 

     String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED); 
     if (provider != null) { 
      getLocation(); 
     } else { 
      Toast.makeText(this, "You must enable Gps to get your location", Toast.LENGTH_SHORT).show(); 
     } 
    } 
} 


@Override 
protected void onResume() { 
    super.onResume(); 
    mFirebaseAuth.addAuthStateListener(mAuthStateListener); 
} 



    @Override 
protected void onPause() { 
    super.onPause(); 
    if (mAuthStateListener != null) { 
     mFirebaseAuth.removeAuthStateListener(mAuthStateListener); 
    } 
    detachDatabaseReadListener(); 
} 

答えて

0

新しいコンピュータのSHA-1をあなたのアプリケーションのFirebaseコンソールに追加しましたか?

+0

あなたは伝説です。だから、私はそれを逃したと信じることはできません。 :) – Andrew

関連する問題