java - 如何从数据库访问所有用户?

标签 java android google-maps firebase firebase-realtime-database

我使用 firebase 数据库来保存我的坐标。

这就是我的数据库的样子:firebase database

我通过 token 保存数据:

        String token = FirebaseInstanceId.getInstance().getToken();
        if (token == null) return;
        databaseReference = FirebaseDatabase.getInstance().getReference(token);`

所以我需要访问坐标并向 map 添加标记

我在 onMapReady 方法的 valueEventListener 中执行此操作:

    DatabaseReference ref = FirebaseDatabase.getInstance().getReference(FirebaseInstanceId.getInstance().getToken());
    ref.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            double allLat = (double) dataSnapshot.child("lat").getValue();
            double allLng = (double) dataSnapshot.child("lng").getValue();

            mMap.addMarker(new MarkerOptions().position(new LatLng(allLat, allLng)).title("Пользователь"));
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {
            Toast.makeText(MapsActivity.this, "Не найдены пользователи", Toast.LENGTH_SHORT).show();
        }
    });

但它只设置了我的标记,我如何从我的数据库访问所有用户?

最佳答案

您必须在 onDataChange() 内循环遍历您的值:

for(DataSnapshot child : dataSnapshot.getChildren() ){
            //get your mulitple markers here
        }

关于java - 如何从数据库访问所有用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44434481/

相关文章:

iphone - 如何在 Xcode 中的 iPhone iOS 6 应用程序上获得从 A 到 B 的方向?

android - Butterknife 如何从不同的 View 绑定(bind) View

java - 在我的 Android 项目中,跨旋转保存数据似乎不起作用

google-maps - 查找 Maps API key 的所有者

java - 无效的 Int,R.array.name

java - 下一张图片在 'ImageSwitcher' 中滑动时未显示

java - 如何按住按钮直到方法结束

java - 在 Java 中检测硬盘 Activity

android - 恐惧:在指定的SDK位置下找不到Android SDK

javascript - 从距离矩阵获取变量,Google map v3