后台 App Fetch 和 App 快照
Background App Fetch and App Snapshotting
我正在开发一个应用程序,我使用 iOS 的 "background app fetch" 来使我的应用程序数据保持最新。这工作正常,除了应用程序的 "snapshot" 未使用此提取更新。
当我说 "snapshot" 时,我指的是 iOS 进入背景时拍摄的图像。这是在您的应用程序加载之前显示的第二个图像。目前,这意味着用户(尤其是旧手机上的用户)可能会看到旧信息一秒钟左右,然后用新信息替换它。
是否有人知道更多关于应用程序何时拍摄快照以及是否可以强制执行(例如,当我在后台获取新数据时)。
或者谁能想出一种方法来实现这种效果?
查看 Managing the State Restoration Behavior 上的文档。一旦从后台加载新数据,就无法更新快照。您可以做的就是告诉 UIApplication
不要显示快照,而是使用 -ignoreSnapshotOnNextApplicationLaunch
.
显示默认启动图像
然而,在我看来,这不应该是必要的。我可以想象 Apple 将通过 iOS 9.
改进这一点
如何在您的应用程序即将进入后台时将其重置为 "neutral" 状态?例如显示一个空 table。
你不会有最新的数据,但你也不会有错误的数据。
我正在开发一个应用程序,我使用 iOS 的 "background app fetch" 来使我的应用程序数据保持最新。这工作正常,除了应用程序的 "snapshot" 未使用此提取更新。
当我说 "snapshot" 时,我指的是 iOS 进入背景时拍摄的图像。这是在您的应用程序加载之前显示的第二个图像。目前,这意味着用户(尤其是旧手机上的用户)可能会看到旧信息一秒钟左右,然后用新信息替换它。
是否有人知道更多关于应用程序何时拍摄快照以及是否可以强制执行(例如,当我在后台获取新数据时)。
或者谁能想出一种方法来实现这种效果?
查看 Managing the State Restoration Behavior 上的文档。一旦从后台加载新数据,就无法更新快照。您可以做的就是告诉 UIApplication
不要显示快照,而是使用 -ignoreSnapshotOnNextApplicationLaunch
.
然而,在我看来,这不应该是必要的。我可以想象 Apple 将通过 iOS 9.
改进这一点如何在您的应用程序即将进入后台时将其重置为 "neutral" 状态?例如显示一个空 table。
你不会有最新的数据,但你也不会有错误的数据。