何时/不使用同步适配器

时间:2012-06-04 00:31:03

标签: java android sync

我正在试图弄清楚我是否需​​要在我的Android应用中使用同步适配器。

程序方法示例:

  1. (WITH network coverage)用户所做的更改将自动发送到服务器。
  2. (没有网络覆盖)更改将保存在sqlite表中,并等待在线广播上传更改。
  3. 发送到服务器的更改将保存到sqlite表中,在某种程度上镜像服务器上的内容。
  4. 服务器上的更改将使用C2DM框架通知用户更改。
  5. 当应用程序收到通知时,它将从服务器获取必要的数据并更新sqlite表。
  6. 问题是,我应该使用同步适配器进行这项工作吗?如果是这样的话,基于我上面的例子的高级方法是什么。谢谢。

2 个答案:

答案 0 :(得分:2)

您要与哪个服务器应用程序同步?如果您的应用想要将用户数据与服务器同步,那么C2DM(使用同步适配器)可能就是您的选择。它确实提供了开销。我发现在大多数情况下,简单的restful接口更容易创建和维护。

如果您想要更详细的答案,则必须提供有关您的应用的更多信息。

答案 1 :(得分:1)

如果您不关心电池耗尽,请使用SyncAdapter进行定期双向同步(向下和向上)并仅修改本地数据库以与用户的操作进行交互。这样,您只需要服务器端的两个脚本,一个用于下游同步,另一个用于上游同步。

当然你需要

1)。 3个标志,即insert_state,update_state和delete_state,用于本地数据库以指示脏数据。

2)。本地和远程数据库的uuid

GoogleIO RESTFUL SYNCING参考:http://www.youtube.com/watch?v=xHXn3Kg2IQE