首先:这将使用Google App Engine和Android实现。谷歌云SQL /数据存储,但它更多的是我对此感到困惑的过度策略。
我正在创建一个能记录活动的Android应用。然后,我希望能够将此活动同步到云,并在注册到用户的任何其他设备上查看/编辑活动。身份验证,设备注册以及我可以解决的所有细节,以及我遇到问题的同步策略更多。
要求将是:
这些是我对如何实现这一点的初步想法:
场景:录制活动
场景:更新活动
问题:将本地缓存与云数据同步
我不确定如何实现同步(即分别是前面场景的步骤3和4)。我不想丢弃本地缓存并重新下载所有内容以确保最新数据,因为这看起来非常低效。我希望只是下载缓存中不包含的活动,并更新缓存中但自上次同步以来已更改的活动。
是否有任何最佳实践/众所周知的同步模式(易于理解)可以帮助我实现这一目标?
亲切的问候。
答案 0 :(得分:2)
您还需要考虑连接丢失/重试,电池/电源效率以及可能应用自定义同步算法。
Android已经有一个出色的模式/ API来解决这些问题,并以有效的方式处理与后端服务器的后台同步。
关注the official android guide for sync adapter API pattern,如果您不需要它们,则不必实现内容提供程序或身份验证器,只需为它们实现存根。
以下是一些帮助您完成的示例项目......