2

我正在开发一个 Android 应用程序,它是远程 JSON Web 服务 API 的客户端(我构建了服务器,因此我拥有最大的灵活性)。

我正在尝试确定什么是保持本地 SQLite 数据库与远程 API 同步的好策略(在电池寿命、带宽和等待时间方面)。

我目前在想的是服务器将通过 GCM 通知 Android 应用程序任何操作(应该获取的新数据或应该更新的旧数据),此外,用户将有一个刷新按钮来手动执行同步。

这种方法的缺点是,如果 GCM 消息“丢失”,则无法知道任何更新或新数据。

每当用户要求查看某些内容时,我都可以添加时间戳并检查新数据,但这并不能解决确定何时需要刷新 SQLite 数据库中已有的旧数据的方法。

关于改进此同步策略或我应该研究的任何其他方法的任何建议?

4

1 回答 1

0

您可以让应用程序在收到 GCM 推送时向服务器发送收到的确认。然后,如果服务器在 X 时间范围内没有看到确认,它可以重新发送 GCM 推送。

于 2012-10-14T14:28:27.337 回答