我有类似上面的数据我正在尝试写POJO类,但它使
ref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
Log.i("FireBase", "snapshot " + snapshot);
RetriveUserData data = snapshot.getValue(RetriveUserData.class);
Log.i("FireBase", "Data " + data.getAPIkey());
}
@Override
public void onCancelled(FirebaseError firebaseError) {
Log.i("FireBase", "The read failed: " + firebaseError.getMessage());
}
});
这是我的代码
public class RetriveUserData {
private String fullName;
private String apikey;
public RetriveUserData() {
// empty default constructor, necessary for Firebase to be able to deserialize blog posts
}
public String getFullName() {
return fullName;
}
public String getAPIkey() {
return apikey;
}
}
这是POJO
DataSnapshot { key = 8c73191e-ba59-417a-b8ae-a5fed541c761, value = {fullName=Thamaraiselvam, apikey=sfsdfsdjfosf} }
更新
这里是json我得到(记录)
pip install pyquery==1.2.4
看起来像是在做小问题,但不知道它在哪里。
答案 0 :(得分:0)
从堆栈跟踪:
引起:com.fasterxml.jackson.databind.JsonMappingException:没有为类型[simple type,类net.simplifiedcoding.imageuploadsample.ProcessImages $ RetriveUserData]找到合适的构造函数:无法从JSON对象实例化(需要添加/启用类型信息?)
从这看起来你已经嵌套了RetriveUserData
类中的ProcessImages
。在这种情况下,Java将外部类的隐式引用添加到RetriveUserData
。由于您没有在Firebase中存储该引用,因此它抱怨没有找到它。
要删除此错误消息,请将RetriveUserData
标记为静态。这告诉Java不生成引用:
public static class RetriveUserData {