Android 收到登录尝试结果时FirebaseAuthUI崩溃应用程序

Android 收到登录尝试结果时FirebaseAuthUI崩溃应用程序,android,firebase,firebase-authentication,Android,Firebase,Firebase Authentication,因此,我正在使用FirebaseAuthUi,当我从登录过程中收到请求时,我不断收到此错误: com.firebase.ui.auth.FirebaseUiException:保存凭据时出错 原因:com.google.android.gms.common.api.ApiException:16:当前应用程序的保存提示被禁用。若要还原,请从该设备上所有帐户的密码智能锁设置中的“从不保存”列表中删除此应用 以下是“我的活动结果”中的代码: protected void onActivityRes

因此,我正在使用FirebaseAuthUi,当我从登录过程中收到请求时,我不断收到此错误:

com.firebase.ui.auth.FirebaseUiException:保存凭据时出错

原因:com.google.android.gms.common.api.ApiException:16:当前应用程序的保存提示被禁用。若要还原,请从该设备上所有帐户的密码智能锁设置中的“从不保存”列表中删除此应用

以下是“我的活动结果”中的代码:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Log.i(TAG, "SignInFinished");
    if (requestCode == RC_SIGN_IN) {
        IdpResponse response = IdpResponse.fromResultIntent(data);

        if (resultCode == RESULT_OK) {
            if(buttonLastPressed){
                loadUserFromDataBase();
            }
            else{
                pushUserToDatabase();
            }
        } else {
            Log.i(TAG, "SignInError");
            if(response == null){
                return;
            }
            // Sign in failed. If response is null the user canceled the
            // sign-in flow using the back button. Otherwise check
            // response.getError().getErrorCode() and handle the error.

            response.getError().printStackTrace();

        }
    }
}
第二个日志“SignError”从未显示,因此我甚至无法告诉用户登录失败


我很确定我可以通过进入设置并更改错误显示的内容来解决这个问题,但是由于错误部分从未运行过,我无法告诉用户出了什么问题。他们返回启动登录过程的活动,没有任何迹象表明有任何更改

希望这对某人有所帮助:

签名步骤完成后,将提示将凭据保存到智能锁。 取消此提示时可能会发生崩溃,因为它会返回已取消的结果

如果在项目中未使用智能锁,或者没有必要使用智能锁,则可以在配置签名方法时禁用智能锁

因此,您将不会得到智能锁提示,签名结果将直接返回原样(结果\确定或结果\取消等)

以下是如何从firebase项目禁用智能锁的示例:

private final Intent signIn = AuthUI.getInstance()
    .createSignInIntentBuilder().setIsSmartLockEnabled(false)
    .setAvailableProviders(providers)
    .build();