【发布时间】:2019-08-08 03:20:54
【问题描述】:
这是我获取数据的函数:
public void retrievedata(){
FirstRef.child(obj.getsEventID()).orderByChild("date").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s)
{
if (dataSnapshot.exists())
{
DisplayMessages(dataSnapshot);
}
}
@Override
public void onChildChanged(@NonNull DataSnapshot dataSnapshot, @Nullable String s)
{
}
@Override
public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
private void DisplayMessages(DataSnapshot dataSnapshot) {
Iterator iterator = dataSnapshot.getChildren().iterator();
String Article = (String) ((DataSnapshot) iterator.next()).getValue();
String Key = (String) ((DataSnapshot) iterator.next()).getValue();
String Organisateur = (String) dataSnapshot.child("name").getValue().toString();
String date = (String) dataSnapshot.child("date").getValue().toString();
Date resultdate = new Date(Long.parseLong(date));
String date2 = DateFormat.format(resultdate).toString();
ListOfArticles.add(0,new ListItemTypeOne(Key, Article, Organisateur, date2));
adapter.notifyDataSetChanged();
}
假设我有 10 篇文章,它们保存在磁盘内存中,这要归功于:
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
现在,当我离线时,有人又添加了 2 篇文章,总共 12 篇。 如果我上网,并执行“检索数据”功能,它会简单地调用 onchildadd 与内存中的 10 个孩子和来自 firebase 数据库的 2 个新孩子,还是会从 firebase 下载所有 12 个孩子?
【问题讨论】:
标签: android firebase firebase-realtime-database