我正在使用 android 聊天应用程序的解析来存储数据 我同时使用服务器和本地数据库(Parse.enableLocalDatastore()) 它工作正常,问题在于从数据库中获取数据,例如如果网络不可用,数据将从本地数据库返回,如果可用,它将直接从解析返回,那么我如何区分它们? 我应该在查询时使用query.fromLocalDatastore()方法吗数据与否?
您将必须构建 2 个不同的查询,一个用于本地数据,一个用于网络数据,然后确定要在屏幕上显示哪一个。
您必须考虑以下几种情况:
- 服务器端删除、添加和更新
- 客户端删除、添加和更新
并非所有这些都需要考虑,只有那些对你的应用程序有意义的。
请记住,当一个对象被固定(而不是保存到服务器)时,它没有objectId
,但它确实有一个叫做localId
的东西(它是私有 api,但你可以在调试器中看到它)。您可以检查是否存在objectId
以确定对象是否在本地创建,并且从未保存到服务器。