3 回答
TA贡献1827条经验 获得超8个赞
初始化 Firebase 数据库和DatabaseReference内部onCreate()方法:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_violations);
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference dbref = database.getReference("save");
...
..
此外,您获得的参考是save但 Firebase 数据库显示为 : you violate ...。您可以尝试将名称更改为save或获取正确的数据 : you violate ...。
TA贡献1773条经验 获得超3个赞
尝试使用addListenerForSingleValue()
而不是addValueEventListener()
. 希望能帮助到你。并将您的 firebase 链接更改save
为you violate your own speed limit with
TA贡献1828条经验 获得超4个赞
我在您的数据库架构中看不到 o 已命名的引用,save但我看到了一个已命名的You violate your own speed limit with,必须在您的引用中使用它才能从数据库中获取数据。因此,要解决此问题,请使用以下代码行:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference ref = rootRef.child("You violate your own speed limit with");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
ArrayList<String> violations = new ArrayList<>();
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String speed = ds.getValue(String.class);
violations.add(speed);
Log.d(TAG, speed);
}
//Do what you need to do with y our violations list
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d(TAG, databaseError.getMessage());
}
};
ref.addListenerForSingleValueEvent(valueEventListener);
logcat 中的结果将是所有这些值:
3 km / h at time: ...
3 km / h at time: ...
//an so on
添加回答
举报