在 iOS 中,强制退出 App 有以下几种方法:
exit(0);退出整个 App[NSThread exit];退出当前线程,在主线程执行可以退出 Appabort()异常中止 App,可以通过捕捉信号SIGABRT来进行异常处理assert()断言也会让 App 异常中止
因为不管使用何种方式杀掉 App,都会产生正在使用中的资源不能正常释放的问题,比如数据库写入一半 App 中止了。
Apple 官方不建议中止 App,如果在开发中需要结束进程,推荐使用 abort() 或者 assert() 来触发程序退出。
替代方案
把 App 切换到后台而不是中止程序运行:
[UIApplication.sharedApplication performSelector:@selector(suspend)];
