如何在FireBase身份验证中避免NullPointerException?

时间:2017-03-26 23:10:17

标签: android nullpointerexception firebase-authentication

当用户未登录时,我在id_user=userConnect.getUid();有一个nullPointerException,我该如何避免这个问题?因为即使id用户为空,我也需要打开活动。

        auth = FirebaseAuth.getInstance();
        FirebaseUser userConnect = auth.getCurrentUser();
        id_user=userConnect.getUid();

2 个答案:

答案 0 :(得分:3)

用户的id永远为null(方法getUid()使用@NonNull注释)但如果没有用户登录,则用户可以为null,因此您必须执行以下操作:

FirebaseUser userConnect = auth.getCurrentUser()
if (userConnect != null) {
  Intent i = new Intent(this, _Your_Login_Activity_.class);
  startActivity(i);
} else {
  String id_user = userConnect.getUid(); // NEVER NULL
  // ... 
}

答案 1 :(得分:2)

if (userConnect != null){
 id_user=userConnect.getUid();
}