iPhone - 使用 sqlite3 将对象同步到服务器

发布于 2024-10-31 03:07:24 字数 226 浏览 3 评论 0原文

嘿。我正在寻找有关如何将 iPhone 上的 sqlite 数据库中存储的信息与我的主服务器同步的最佳实践。

为了提供更多信息,iPhone 应用程序存储用户正在阅读的书籍,并允许他们以列表形式浏览书籍。有关本书的所有信息都存储在服务器上,并且可以从网站上进行编辑。因此,当用户启动应用程序时,我需要将手机上的 sqlite 数据库与我的主服务器同步,以获取当前的图书列表。

有人有建议吗?
谢谢。

Hey. I'm looking for best practices on how to sync information stored in my sqlite db on the iphone with my main server.

To give more information, the iPhone app stores books a user is reading and allows them to browse the books in a list form. All the information about the book is stored on a server and is editable from a website. So when the user starts the app I need to sync the sqlite db on the phone with my main server to get the current list of books.

Anyone have suggestions?
Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

将军与妓 2024-11-07 03:07:24

基本上,您希望在每次启动应用程序时处理“更改”而不是整个图书列表。因此,第一次,您需要下载所有内容(或在 iPhone 中植入一些初始数据),然后跟踪更新。

然后在后续启动时,启动 NSThread(在 applicationDidFinishLaunch: 中),将自某个时间戳以来对图书列表的更改下载到 iPhone。解析数据,更新数据库,记录新时间戳,然后重新加载 UITableView 或您正在使用的任何视图。

如果您要允许在 iPhone 上进行编辑,则会遇到额外的并发问题(例如,同时编辑同一本书)。

Basically, you want to deal with the "Changes" and not the whole book list every time the app is launched. So the first time, you'd download everything (or seed the iphone with some initial data), then keep track of the updates.

Then on subsequent launches, kick off an NSThread (in applicationDidFinishLaunch:) to download the changes to the book list, since some timestamp, to the iPhone. Parse the data, update your db, record a new timestamp, then reload your UITableView or whatever View, you're using.

If you're going to allow editing on the iphone you have additional concurrency issues (e.g. editing the same book at the same time).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文