android - 如何在 android 中使用 firebase 处理返回数据对象的 json

标签 android firebase firebase-realtime-database

我有一个执行以下操作的 android 应用程序:

com.google.firebase.database.Query query = mUsersRef
            .orderByChild(USER_TABLE_EMAIL)
            .startAt(searchTerm)
            .endAt(searchTerm + FirebaseConstants.SEARCH_ESCAPE);

    query.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            DataSnapshot d = dataSnapshot;

            getView().showSearchResults();
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {
            // TODO: something?
        }
    });

我想知道将 dataSnapshot 转换为 User 对象的最简单方法是什么。我是否需要返回 json 并进行某种形式的转换?或者,还有更好的方法?

最佳答案

您可以将数据快照转换为对象,如下所示:

query.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
       for(DataSnapshot snapShot : dataSnapshot.getChildren()){
           User user = snapShot.getValue(User.class);
       }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        // TODO: something?
    }
});

关于android - 如何在 android 中使用 firebase 处理返回数据对象的 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46440081/

相关文章:

android - Eclipse Android 项目丢失对库项目的引用 - ViewPagerIndicator

java - 如何扩展 ListActivity where AppCompatActivity in Android Activity

android - flutter + FCM : onBackgroundMessage vs onMessageOpenedApp

java - 如何从 firebase 检索特定的数据列表

java - 如何在不覆盖的情况下将数据推送到 firebase

java - 按后退键3秒

java - 无法在 RecyclerView 中显示项目

javascript - 如何删除具有云功能的 Node ?

swift - Firebase如何验证登录电子邮件属于数据库中的哪个类别?

javascript - Firebase 函数返回