我正在開發一個使用Firebase的Android應用程序。我需要將下面樹中的所有值寫入ArrayList
。但我得到NullPointerException
。我已經在下面顯示了我的數據庫和代碼。請幫助我。 它不同於How to Retrieve a List object from the firebase in android 中的問題我試圖retreive3一個字符串列表,而不是對象。我找不到任何這方面的例子。如何檢索Firebase中所有值的列表?
下面的代碼:
brandRef=FirebaseDatabase.getInstance().getReferenceFromUrl("https://stockmanager-142503.firebaseio.com/Brands ");
brandRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds: dataSnapshot.getChildren())
allBrands.add(ds.getValue(String.class));
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
的分貝參考工作正常。我可以毫不費力地添加值。
這裏是我得到的錯誤:
FATAL EXCEPTION: main java.lang.NullPointerException at com.strokx.user.stockmanager.AddItemFragment$2.onDataChange(AddItemFragment.java:93)
at com.google.android.gms.internal.zzakg.zza(Unknown Source)
at com.google.android.gms.internal.zzalg.zzcxk(Unknown Source)
at com.google.android.gms.internal.zzalj$1.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4517)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:993)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:760)
at dalvik.system.NativeStart.main(Native Method)