无法跳出来键入firebase

时间:2016-01-17 14:08:32

标签: java android firebase

my data

我有类似上面的数据我正在尝试写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

看起来像是在做小问题,但不知道它在哪里。

1 个答案:

答案 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 {