为了账号安全,请及时绑定邮箱和手机立即绑定

java.lang.NullPointerException:

java.lang.NullPointerException:

慕田峪7331174 2021-12-22 20:45:51
执行我的应用程序时,我收到以下错误:java.lang.NullPointerException:无法为 child() 中的参数“pathString”传递 null但我之前没有收到这个错误。有人可以帮助我吗?请看错误控制台,以及上面的java代码消息片段.javaMessagesFragment 中的第一个错误,错误发生在 MessagesDbRef 中,但 firebase 不为空。public class MessagesFragment extends Fragment {    private static final String TAG = MessagesFragment.class.getSimpleName();    private FirebaseAuth mAuth;    private FirebaseUser user;    private DatabaseReference userDbRef;    private DatabaseReference messagesDbRef;    private DatabaseReference conversationsDbRef;    private FirebaseRecyclerAdapter firebaseRecyclerAdapter;    private RecyclerView recyclerViewConversations;    private Context context;    ImageView imgViewNoMessages;    TextView txtNoMessages;    private String currentUserId;    public MessagesFragment() {    }    @Override    public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,                             Bundle savedInstanceState) {        View messagesView = inflater.inflate(R.layout.fragment_messages, container, false);        imgViewNoMessages = (ImageView) messagesView.findViewById(R.id.image_no_messages);        txtNoMessages = (TextView) messagesView.findViewById(R.id.text_no_messages);        this.context = getContext();        mAuth = FirebaseAuth.getInstance();        user = mAuth.getCurrentUser();        if (user != null) {            currentUserId = user.getUid();        }        recyclerViewConversations = (RecyclerView) messagesView.findViewById(R.id.rv_conversations);        userDbRef = FirebaseDatabase.getInstance().getReference().child("Users");        userDbRef.keepSynced(true);        conversationsDbRef = FirebaseDatabase.getInstance().getReference().child("Chat").child(currentUserId);        conversationsDbRef.keepSynced( true );        messagesDbRef = FirebaseDatabase.getInstance().getReference().child("Messages").child(currentUserId);        messagesDbRef.keepSynced(true);    }
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

您似乎没有共享类的所有代码。


所以我只有猜测;


if (user != null) {

   currentUserId = user.getUid();

 }

这些行表示如果用户为空,则 currentUserId 将为空。


    conversationsDbRef = FirebaseDatabase.getInstance().getReference().child("Chat")

.child(currentUserId);

在这一行看来,传递的参数currentUserId为 null 并且该 null 是 NullPointerException 的原因


查看完整回答
反对 回复 2021-12-22
  • 1 回答
  • 0 关注
  • 221 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号