什么';从服务器端数据库到iPhone进行单向同步的最佳方式是什么?

什么';从服务器端数据库到iPhone进行单向同步的最佳方式是什么?,iphone,sqlite,data-synchronization,Iphone,Sqlite,Data Synchronization,我的服务器上有一个大约3mb大的数据库。我想将其与我的iphone应用程序一起发布 最重要的是,我希望将对数据库的更改(插入、更新、删除)升级到iphone。最好的方法是什么?我的意思是-什么是必要的 -服务器 -客户端(=iphone) -之间;如何传输这些数据 我在使用服务器端技术方面相当自由;现在,我在服务器上有一个sqlite数据库,里面装满了我想同步到iPhone的数据。您需要多久更新一次数据库,以及更改的紧急程度如何 如果数据库更新不频繁且不紧急,我会让应用程序在启动时检查数据库的新

我的服务器上有一个大约3mb大的数据库。我想将其与我的iphone应用程序一起发布

最重要的是,我希望将对数据库的更改(插入、更新、删除)升级到iphone。最好的方法是什么?我的意思是-什么是必要的 -服务器 -客户端(=iphone) -之间;如何传输这些数据


我在使用服务器端技术方面相当自由;现在,我在服务器上有一个sqlite数据库,里面装满了我想同步到iPhone的数据。

您需要多久更新一次数据库,以及更改的紧急程度如何

如果数据库更新不频繁且不紧急,我会让应用程序在启动时检查数据库的新版本,如果数据库已更改,则下载整个新文件

应用程序在启动时总是从已知的URL下载一个小的元数据文件。元数据文件包含最新版本的版本标识符和可下载该版本数据库的位置。如果版本标识符已从应用程序已有的版本更改,则将下载新版本。如果版本标识符没有更改,或者无法检查,则应用程序可以继续使用其拥有的版本

专业提示:如果要显示下载进度条,请在元数据文件中包含数据库的大小。蜂窝网络通常具有透明代理,可以从HTTP响应中删除内容长度头。

尝试使用web挂钩

WebHook的概念很简单。A. WebHook是一个HTTP回调:一个HTTP回调 当某事发生时发生的帖子 发生;一个简单的事件通知 通过HTTP POST

一个web应用程序实现 WebHooks将向URL发布消息 当某些事情发生时。当一个网站 应用程序允许用户注册 他们自己的URL,用户可以 扩展、定制和集成 应用程序具有自己的自定义功能 扩展或甚至与其他 web上的应用程序。对于 用户,Webhook是一种接收 有价值的信息发生时, 而不是不断地投票 没有收到任何数据 大部分时间都很宝贵。网钩 具有巨大的潜力和潜力 只受你想象力的限制!(没有, 它还不能洗盘子

您可以在此处找到有关Webhooks的更多信息:
不知道您是否考虑过使用同步框架来管理同步。如果你对此感兴趣,可以看看开源项目OpenMobster的同步服务。您可以执行以下同步操作

  • 双向
  • 单向客户端
  • 单向装置
  • 启动
除此之外,所有修改都会自动跟踪并与云同步。当网络连接断开时,您可以使应用程序脱机。它将跟踪任何更改,并在连接返回时在后台自动将其与云同步。它还可以像iCloud一样跨多个设备提供同步

此外,云中的修改使用推送通知进行同步,因此即使数据存储在本地,数据也始终是最新的

以下是指向开源项目的链接:


这里是iPhone应用程序同步的链接:

hm。。。听起来很有趣。我了解web钩子的工作原理(至少,我想我了解)。但结合iPhone。。。如何更新应用程序的用户?只有推送通知才能实现,对吗?我的意思是-他们必须在我的应用程序中注册他们的手机,每当有什么变化,我必须做推送通知-或者我遗漏了什么?是的。推送通知可以工作。无论哪种方式,您都必须为您的注册用户提供某种身份验证。基本上,您可以创建一个CRON作业,将通知发送给用户列表(显然已注册和验证的用户)