Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 火库断开_Android_Firebase_Transactions_Google Cloud Firestore_Disconnect - Fatal编程技术网

Android 火库断开

Android 火库断开,android,firebase,transactions,google-cloud-firestore,disconnect,Android,Firebase,Transactions,Google Cloud Firestore,Disconnect,断开Internet连接后,将触发侦听器“无Internet”。恢复连接后,“无互联网”功能也可以工作。只有在重新启动应用程序后,成功才起作用。如何修复?关于云Firestore中事务的使用: 当客户端脱机时,事务将失败 换句话说,脱机时不能使用事务 还要记住,当网络连接丢失(用户设备上没有网络连接)时,不会触发onSuccess()或onFailure()方法。这种行为是有意义的,因为只有当Firebase服务器提交(或拒绝)数据时,才会认为任务已完成 如果要检查是从服务器还是从缓存接收数据,

断开Internet连接后,将触发侦听器“无Internet”。恢复连接后,“无互联网”功能也可以工作。只有在重新启动应用程序后,成功才起作用。如何修复?

关于云Firestore中事务的使用:

当客户端脱机时,事务将失败

换句话说,脱机时不能使用事务

还要记住,当网络连接丢失(用户设备上没有网络连接)时,不会触发
onSuccess()
onFailure()
方法。这种行为是有意义的,因为只有当Firebase服务器提交(或拒绝)数据时,才会认为任务已完成


如果要检查是从服务器还是从缓存接收数据,请在快照事件中使用
SnapshotMetadata
上的
fromCache
属性。如果
fromCache
true
,则数据来自缓存,可能不完整。如果
fromCache
false
,则数据是完整的,并且是服务器上最新更新的最新数据。

很清楚。但是为什么在连接丢失后不恢复连接呢?您目前无法控制Firestore SDK如何管理其连接。大多数执行重试的代码都是通过算法执行的。这可以防止重试速度过快,从而影响主机应用程序的性能,并且可能会消耗太多用户的数据计划。但是,这意味着恢复连接可能需要一些时间。恢复在30-45秒内进行。这是正常的吗?是的。我经历了10秒,甚至是一分钟。不客气!干杯