我正在开发一个原生的Android应用程序来展示攀岩topos,我从Firebase的实时数据库接收所有路线和度数。但是,我认为一直要求互联网是愚蠢的,因为在某些地方,人们在攀登时无法上网。
现在,我计划下载一个下载选项,以便人们可以将Firebase数据存储在他们的设备中,以便他们可以离线访问它们。
这可能吗?
我发现了这个:
DatabaseReference gradesRef = FirebaseDatabase.getInstance().getReference("grades");
gradesRef.orderByValue().limitToLast(4).addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot snapshot, String previousChild) {
System.out.println("The " + snapshot.getKey() + " climbing grade is " + snapshot.getValue());
}
});
离线查询数据,但我不确定这与我想做的事情相同。
答案 0 :(得分:2)
是的,使用这行代码:
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
这意味着您将在本地拥有您的数据副本,并且您将能够查询它,并且您在离线时所做的每项更改都会在您重新联机后在数据库中显示。
希望它有所帮助。