AppDelegate 中的应用程序 didFinishLaunching 是不是总是在更新后打开应用程序后被调用?
Posted
技术标签:
【中文标题】AppDelegate 中的应用程序 didFinishLaunching 是不是总是在更新后打开应用程序后被调用?【英文标题】:Does application didFinishLaunching in AppDelegate always get called after opening an app post-update?AppDelegate 中的应用程序 didFinishLaunching 是否总是在更新后打开应用程序后被调用? 【发布时间】:2017-10-10 22:17:47 【问题描述】:假设您的设备上有一个最近刚刚关闭(但没有终止)的应用。 5 分钟后,应用程序更新通过 App Store,应用程序从 1.0 升级到 2.0。
更新后打开应用时,AppDelegate 中的 didFinishLaunching 是否总是被调用?应用程序是否因更新而终止?我假设是这样,因为可能会有一些巨大的代码更改,但我想确认一下。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
【问题讨论】:
【参考方案1】:是的,didFinishLaunchingWithOptions
在更新后总是会被调用,因为应用程序在您打开时基本上会重新启动,然后在新的代码更改后(不管它们的当前状态如何)。
您可以在模拟器中轻松测试此行为 - 只需重新运行应用程序而不关闭它并在 didFinishLaunchingWithOptions
中设置断点。
【讨论】:
以上是关于AppDelegate 中的应用程序 didFinishLaunching 是不是总是在更新后打开应用程序后被调用?的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 AppDelegate 中的 coreData 错误?
AppDelegate.m 类中的@interface 错误