iOS中出现意外退出的方式有哪些?

时间:2013-09-28 05:19:00

标签: ios crash

我的应用不允许在后台运行。 我在方法中保存了标记unexpectedExit

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

并在下一个方法中清除标记unexpectedExit

- (void)applicationWillTerminate:(UIApplication *)application;
- (void)applicationDidEnterBackground:(UIApplication *)application

缺少清算标志的可能原因是什么?

我知道下一个:

  1. 一些越狱的工作人员 - 我发现越狱设备并忽略他们的任何崩溃
  2. 用户创建的崩溃(使用0x00000000deadfa11代码) - 长按锁定按钮直到UI更改+长按主页按钮 - 直到崩溃。当接近传感器开启时,这种类型的碰撞是不可能的。
  3. 手动重启设备 - 同时长按锁定+主页按钮。当接近传感器开启时,这也是不可能的。
  4. 电池放电。我看到当电池电量为0时 - 它会在退出应用程序时直接断电。我跟踪电池充电
  5. 可以由CrashLytics或PLCrashReporter或类似的
  6. 处理的崩溃
  7. low memory相关的崩溃。根据{{​​3}} app应该可以使用

    处理它

    (void)applicationDidReceiveMemoryWarning:(UIApplication *)application;

  8. 崩溃documentation(带有0x8badf00d代码)也未被任何崩溃工具处理(据我所知),我不知道有什么方法可以捕获这个。你知道吗?

  9. 现实告诉我,我想念一些东西。它可以是什么? 我上面的建议有什么错误吗?

2 个答案:

答案 0 :(得分:2)

您是否考虑过附上mach exception handlersignal handler,并使用它来设置标记?要求在iOS中终止应用程序的所有方式的完整列表似乎是永远无法回答的问题 - 每个版本都有可能添加新异常,更改异常代码或以不同方式响应unix信号。你究竟想用旗帜做什么?

答案 1 :(得分:0)

查看“捕获未捕获的异常”。 您可以在this article的末尾找到简要说明。