我正在制作一个聊天应用程序,当我登录时,我在Logcat中收到此错误,我的应用程序崩溃。
2022-03-12 16:09:44.805 22115-22115/com.dccodes.chugli E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.dccodes.chugli, PID: 22115
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
at com.dccodes.chugli.MainActivity$2.onDataChange(MainActivity.java:91)
at com.google.firebase.database.core.ValueEventRegistration.fireEvent(ValueEventRegistration.java:75)
at com.google.firebase.database.core.view.DataEvent.fire(DataEvent.java:63)
at com.google.firebase.database.core.view.EventRaiser$1.run(EventRaiser.java:55)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6810)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
我不明白为什么我会得到这个错误,我用的是firebase的应用程序。我的主要活动非常大,所以我上传了代码的照片。
第一节第一节第一节第一节第一次
我不明白为什么会出现此错误。
1条答案
按热度按时间gudnpqoy1#
尝试使用
addListenerForSingleValueEvent(new ValueEventListener() {
而不是ValueEventListener
因为每次在“reference”树中发生更改时都会触发ValueEventListener
,如果没有发生任何变化,则不会触发它,并且此代码块不会运行。然而,无论如何,
addListenerForSingleValueEvent
只运行这段代码一次。还要检查'refernece'是否指向Firebase中你想要监听的确切位置。如果正确,检查它所指向的用户是否不为空。