在iOS上的更新过程中,系统是否会终止后台/内存中的应用程序?

smi*_*org 1 iphone ipad ios

如果第三方应用程序以iOS为背景(仍在内存中)并且用户从App Store更新应用程序,应用程序是否会在安装过程之前或期间终止?升级后有没有办法让后台应用程序保留在内存中?application:didFinishLaunchingWithOptions:在更新后打开时,应用程序是否始终会收到回调?

(我的假设是应用程序被杀死并完全从内存中删除,因为应用程序的可执行代码在更新期间可能已更改.)

Pet*_*esh 7

它会被杀死.无论是在更新之前,期间还是之后终止都是无关紧要的 - 当收到applicationDidEnterBackground时,你应该保存状态:.有没有办法,一个应用程序可以继续执行,一旦它的底层代码已经改变-结构可能已经改变,所以它做的一切完全不同,你可能已经重写了线程模型.

如果兼容,您将必须保存状态并尝试恢复它; 否则你应该从头开始.您应该在applicationDidEnterBackground中保存状态: call - 您可能无法在applicationWillTerminate: call中获得机会,因为它可能不会被调用.