android – 如何从Push firebase数据中检索数据

我使用push来保存firebase上的数据,并使用自己的推送ID自动保存,现在我正在尝试检索用于历史的数据,但我不能因为该ID.这就是我所拥有的

 mDatabase = FirebaseDatabase.getInstance().getReference();
        mDatabase.child(Config.MESSAGE).child(userName).addListenerForSingleValueEvent(
                new ValueEventListener() {
                    @Override
                    public void onDataChange(DataSnapshot dataSnapshot) {
                        //Getting the data from snapshot
                        Message message = dataSnapshot.getValue(Message.class);



                        for (int i = 0; i < 11; i++) {

                            message.setMessage(message.getMessage() + i);
                            message.setTitle(message.getTitle() + i);
                            message.setTime(message.getTime() + i);

                            System.out.println("we in" + message.getTitle());
                            /******** Take Model Object in ArrayList **********/
                            CustomListViewValuesArr.add(message);

                            Resources res =getResources();

                            /**************** Create Custom Adapter *********/
                            adapter=new CustomAdapter(CustomListView, CustomListViewValuesArr,res);
                            list.setAdapter(adapter);
                        }
                    }

                        @Override
                        public void onCancelled(DatabaseError databaseError) {
                            //  Log.w(TAG, "getUser:onCancelled", databaseError.toException());
                            // ...
                        }

                    });
                }

这就是数据的样子

-KRjrOKWwCa6zmhyyhvf
    body: "Hi how you doing"
    time: "test"
    title: "push"

-KRjjiiuwCa6zmhKVsro
    body: "Hi how you doing"
    time: "test"
    title: "push"

-KRjrOef45a6zmhKbytr
    body: "Hi how you doing"
    time: "test"
    title: "push"

我每次都变得无效

解决方法:

看起来您有一个用户的消息列表.但是您的代码似乎将结果视为单个消息.那样不行.

如果确实发生了这种情况,请尝试:

public void onDataChange(DataSnapshot dataSnapshot) {
    for (DataSnapshot messageSnapshot: dataSnapshot.getChildren()) {
        Message message = messageSnapshot.getValue(Message.class);

我们最近在Firebase documentation on querying data添加一个关于此的示例.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...