0

我已经使用 Recipes 示例应用程序中的代码构建了一个库样式的 SQLite iOS 应用程序,并且它可以工作 - 一台设备上的更新(最终)可靠地传播到运行同一应用程序的所有其他设备。我整天都在每小时用多个事件对其进行测试,并且所有日志事务都会到达每台设备。但是,更新传播的时间是高度可变的。如果我启动应用程序并让它静置,可能需要相当长的时间才能让云向应用程序发送更新事务,因此屏幕上的内容在同样长的时间内仍然是旧数据。更糟糕的是,没有迹象表明数据已过时。

但是,如果我让应用程序将更改发布到云,来自云的更新会相对较快地传播。这表明我可以进行黑客攻击,定期向数据库发布无意义的更改,但即便如此我也不知道我是否收到了所有更改。

第一个问题:是否存在强制交易传播的方法?a 这个线程建议不要。

第二个问题:有没有办法检测本地数据库是否过时?我不想不停地挠云副本,但时不时地这样做直到数据库是最新的可能不是一个坏主意。

4

1 回答 1

0

1)如果你找到这样的方法,请告诉我。

2)同样的东西在这里。我什至没有找到任何可靠的方法来检测当前运行的 iCloud 应用程序实例是否不是第一个实例,即其他实例已经向 iCloud 发送了更新,直到收到第一个推送(这可能需要一些未知的时间)

于 2012-02-13T01:29:18.877 回答