【问题标题】:Libraries for Online / Offline Mobile Syncing在线/离线移动同步库
【发布时间】:2012-01-17 02:06:36
【问题描述】:

我正在为 Android 开发一个 PhoneGap 应用程序(也适用于 iOS)。

应用程序将在线/离线。我目前正在使用 javascript / jquery 在服务器端对 WCF JSON 服务进行 ajax 调用。

这是我的同步机制。这是非常临时的,我需要从数据库表 x 同步,所以我将在服务器端编写一些代码来加载该数据并将其公开到服务上。我将在客户端编写一些代码,以在服务上调用该方法并将其同步到客户端的数据库中。

确保数据不会发生冲突几乎是您自己的要求。

只是想知道周围是否有任何库可以同步这样的数据?想想 SQL 复制(但不是 SQL 复制)。

我可以编写许多这样的应用程序,所以一个通用的解决方案是理想的。

更新:

这个问题又被提出来了。为什么我们有一个 HTML5 标准,规定我们可以有离线数据库,并在设备上缓存 html 页面和 javascript,但我们没有同步数据的标准方法?

这表明我们希望能够通过我们的应用程序离线。

当然,在一个简单的应用程序中可能很容易做到这一点,而这正是我们一开始就应该开发的。

但我们将要编写的下一个应用程序会复杂得多。

【问题讨论】:

    标签: jquery cordova


    【解决方案1】:

    afaik,没有。

    已经有人对 django 提出了类似的问题: Data Synchronization framework / algorithm for server<->device?

    这主要取决于您要同步的数据类型以及冲突解决策略。

    如果您不必解决冲突,一个简单的 transactionID 以及在重新建立连接时服务器和客户端中丢失的事务的重播。

    我过去也做过一些非常临时的事情,问题是不要让每个项目的解决方案过于复杂。

    【讨论】:

      【解决方案2】:

      【讨论】:

        【解决方案3】:

        我想邀请您看看开源项目,OpenMobster 的同步服务。您可以执行所有类型的同步操作(双向、单向客户端、单向设备、启动等)。除此之外,所有修改都会自动跟踪并与云同步。当网络连接中断时,您可以让您的应用程序离线。它将跟踪任何更改,并在连接返回时自动在后台将其与云同步。

        目前,Android 和 iOS 仅支持原生开发。但是,下一个版本 2.2-M8 将支持与 Android 上的 PhoneGap 的端到端集成,而 2.2-M9 将添加 iOS。

        这里是开源项目的链接:http://openmobster.googlecode.com

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-12-05
          • 1970-01-01
          • 2020-01-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多