这就是我现在执行同步的方式:
* get preference "timestamp" and save to variable TIMESTAMP
* save current time to preference "timestamp" (2)
* query server side items with update time bigger than TIMESTAMP
* for each item
* compare with local item's per item update_time
* if server side is newer
* update local
* else if local is newer
* set item update time to now (1)
* upload
* save back
* else if equal
* do nothing
*
问题是,下次同步时,最后一次同步的项目会出现在“什么都不做”部分,但我的应用是移动应用,所以有很大的数据浪费。
我考虑过将item的更新时间设置TIMESTAMP
为一个客户端在两次之间检查了服务器,这个项目被遗漏了。
我正在使用 Google Tasks API,我无法更改服务器端的实现。
有什么建议么?