我在代码中使用了Firebase AuthUI,这段代码
mAuthStateListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser user = firebaseAuth.getCurrentUser();
if (user != null){
onSignedInInit();
} else {
onSignedOutCleanUp();
List<AuthUI.IdpConfig> providers = new CopyOnWriteArrayList<>();
AuthUI.IdpConfig.Builder config1 = new AuthUI.IdpConfig.Builder(AuthUI.EMAIL_PROVIDER);
AuthUI.IdpConfig.Builder config2 = new AuthUI.IdpConfig.Builder(AuthUI.GOOGLE_PROVIDER);
AuthUI.IdpConfig.Builder config3 = new AuthUI.IdpConfig.Builder(AuthUI.FACEBOOK_PROVIDER);
AuthUI.IdpConfig.Builder config4 = new AuthUI.IdpConfig.Builder(AuthUI.TWITTER_PROVIDER);
providers.add(config1.build());
providers.add(config2.build());
providers.add(config3.build());
providers.add(config4.build());
startActivityForResult(
AuthUI.getInstance()
.createSignInIntentBuilder()
.setIsSmartLockEnabled(false)
.setLogo(R.drawable.ic_launcher)
.setProviders(providers)
.build(),
RC_SIGN_IN);
}
}
};
此时我通过点击从Android Studio运行应用程序 按钮,AuthUI.GOOGLE_PROVIDER登录工作正常,如下所示
但是当我生成签名的AKP作为发布/调试apk时,AuthUI.GOOGLE_PROVIDER登录无法正常工作,如下所示
此时登录活动已冻结,并显示Toast 登录已取消... 已按下后退按钮,请解决此问题...