【发布时间】:2019-02-13 15:21:58
【问题描述】:
Firebase 只是默默地不获取数据。 我花了很多时间研究它,但仍然不明白什么是问题。 可能这是一个非常简单的错误,所以请原谅我的借口
fRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
ids = dataSnapshot.child("dictionary").child("fruitIds").getValue(DictionaryIDs.class);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
DictionaryIds.class 代码
package com.example.asuper.mluvitslova;
import com.google.firebase.database.FirebaseDatabase;
import java.util.ArrayList;
public class DictionaryIDs {
private ArrayList<String> fruitIds = new ArrayList<>();
public DictionaryIDs() {
}
public DictionaryIDs(ArrayList<String> fruitIds) {
this.fruitIds = fruitIds;
}
public void addFruitId(String id){
fruitIds.add(id);
}
public ArrayList<String> getFruitIds(){
return fruitIds;
}
public void setFruitIds(ArrayList<String> fruitIds){
this.fruitIds = fruitIds;
}
}
在日志中什么都没有
这段代码必须只是让我获得 DictionaryIds.class 文件,但实际上 Firebase 只是让我获得空对象。
【问题讨论】:
-
你真的给那个孩子设置了什么吗?
-
fruitIds的孩子是另一个fruitIds。如果你这样做dataSnapshot.child("dictionary").child("fruitIds").child("fruitIds").getValue(DictionaryIDs.class);会发生什么? -
@TheWanderer 什么都没有。它仍然不起作用。并获得
com.google.firebase.database.DatabaseException: Can't convert object of type java.util.ArrayList to type com.example.asuper.mluvitslova.DictionaryIDs
标签: java android database firebase-realtime-database