Firebase Firestore-获取Android上的同步状态
我开始在Android应用程序中使用Firebase Firestore数据库。Firestore实现的主要用例是在脱机模式下创建一组文档,然后在设备联机时上载它们。问题是“设备联机时间”有限,因此我需要向用户提供同步状态指示器。Firebase支持部门的响应 当您在使用脱机数据时写入Firestore时,当数据存储在本地时会触发侦听器,当数据存储在服务器上时会再次触发侦听器,如前所述。一个可能的解决方案是向用户显示数据的当前状态或推送到服务器的项目的百分比 这不是一个简单的解决方案,但它是有效的Firebase Firestore-获取Android上的同步状态,android,firebase,google-cloud-firestore,Android,Firebase,Google Cloud Firestore,我开始在Android应用程序中使用Firebase Firestore数据库。Firestore实现的主要用例是在脱机模式下创建一组文档,然后在设备联机时上载它们。问题是“设备联机时间”有限,因此我需要向用户提供同步状态指示器。Firebase支持部门的响应 当您在使用脱机数据时写入Firestore时,当数据存储在本地时会触发侦听器,当数据存储在服务器上时会再次触发侦听器,如前所述。一个可能的解决方案是向用户显示数据的当前状态或推送到服务器的项目的百分比 这不是一个简单的解决方案,但它是有效
firestore.collection(COLLECTION)
.whereEqualTo(KEY, VALUE) // select documents created by particular device
.addSnapshotListener((querySnapshot, e) -> {
if (e != null) {
// ERROR
return;
}
boolean fromCache = querySnapshot.getMetadata().isFromCache();
if (!fromCache) {
// SYNC DONE
} else {
int connectivityStatus = NetworkUtil.getConnectivityStatus(getApplicationContext());
if (connectivityStatus == NetworkUtil.TYPE_NOT_CONNECTED) {
// WAITING ON CONNECTION...
} else {
// SYNCING...
}
}
});