当我打开 iPhone 3G 时,应用程序第二次在闪屏上崩溃
Posted
技术标签:
【中文标题】当我打开 iPhone 3G 时,应用程序第二次在闪屏上崩溃【英文标题】:App crashing in splash screen in iPhone 3G second time when i open 【发布时间】:2011-09-15 13:55:12 【问题描述】:我正在为 iphone 3G 和 iPhone4 开发一个应用程序,如果我在 iPhone 4 中测试我的应用程序一切正常,但如果我在 iPhone 3G 中测试我的应用程序,应用程序工作正常,但如果我很快点击我 iPhone 的主页按钮如果我单击我的应用程序图标,只显示启动画面,并且只显示启动画面,如果我在关闭它后等待大约 30 秒,它就会崩溃该应用程序没有崩溃。 我不知道是什么问题这是我的代码的问题吗?还是 iPhone?或者我需要处理任何 appdelegate 方法,例如
1.applicationDidBecomeActive: 2.applicationWillResignActive: 3.applicationDidEnterBackground: 4.applicationWillEnterForeground: 5.applicationDidFinishLaunching:
提前感谢任何帮助。谢谢。
【问题讨论】:
【参考方案1】:确保您没有在以下方法中进行任何繁重的处理
-
applicationDidBecomeActive
applicationDidFinishLaunching
applicationWillEnterForeground
如果在上述方法中花费时间,ios 将终止您的应用程序,因此请保持这些方法干净并在您的 RootViewController 等中进行处理
【讨论】:
【参考方案2】:我建议您在以下方法中使用断点来准确了解程序中发生的情况:
applicationDidBecomeActive
applicationDidEnterBackground
applicationDidFinishLaunching
viewDidUnload (and all previous methods just before the unloading of the
last view before you press your home button)
Allover your MainDelegate
尝试让应用程序在后台运行,看看会发生什么。
【讨论】:
【参考方案3】:由于 iPhone 3G 速度较慢,当您尝试再次启动它时,它仍在关闭您的应用程序。 它没有直接关闭可能是因为您正在做的事情比您预期的要长一点。
它并没有真正崩溃,你看到的只是应用程序自行关闭它。这就是为什么如果您在几秒钟后尝试它会起作用的原因。
主要是- (void)applicationWillTerminate:(UIApplication *)application
或- (void)applicationDidEnterBackground:(UIApplication *)application
。
只需确保您尽可能退出应用程序,例如在用户关闭应用程序之前保存所有数据。
【讨论】:
以上是关于当我打开 iPhone 3G 时,应用程序第二次在闪屏上崩溃的主要内容,如果未能解决你的问题,请参考以下文章
为什么当我第二次在Android Studio中使用导航启动动作时,导航目的地丢失了?
核心图像过滤器的输出图像第二次在 UIImage 上运行时为零