ios - 如何模拟应用程序在后台被杀死?

标签 ios ios-simulator

我正在尝试验证我的应用程序 (App1) 在启动另一个应用程序 (App2) 后被系统关闭时是否正常运行。有什么方法可以模拟或强制这种行为吗?

在 App2 运行时告诉模拟器模拟内存警告不会执行任何操作,直到 App1 返回前台。从调试器中终止 App1 会模拟相同的应用程序事件序列吗?

编辑:当我的应用程序启动第二个应用程序来处理文件时,它被置于后台。然后,第二个应用程序重新启动我的应用程序,我正在尝试验证当第二个应用程序正在执行时系统关闭时我的应用程序是否正常运行。

最佳答案

iOS 14.5 及更高版本

在设备上启用设置 - 开发人员 - 快速应用终止:

screenshot of Settings - Developer - Fast App Termination

这将在后台运行时终止而不是暂停您的应用程序。这主要用于测试状态恢复逻辑。


iOS 14.4 及更早版本

正如其他答案所指出的,您可以通过强制退出或停止调试器来立即结束您的应用程序。在这些情况下,您的应用不会收到警告。

如果您要测试您的 applicationWillTerminate 方法,请在您的 .plist 中将 UIApplicationExitsOnSuspend 设置为 YES,然后切换应用程序或按主页按钮。确保将键设置为 bool 值,而不是字符串“YES”。

关于ios - 如何模拟应用程序在后台被杀死?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14969396/

相关文章:

iphone - iPhone 中的数据保护 API 未加密

iphone - 普通风格的tableview : can we display only the required number of rows?

ios - SwiftUI 自定义 PickerStyle

ios - NSDate 中超过一年的错误

ios - 使用选定的文件在 iOS 中创建静态库

ios - iPhone 应用程序中的 Google 帐户自动登录

iphone - 如何在iOS模拟器中测试UI Interpolating Motion Effect?

ios - 将 Redis 库编译到 iOS 项目 ("_OBJC_CLASS_$_ObjCHiredis"时出错,引用自 :)

ios - 在模拟器中而不是在设备上运行时进行条件编译

ios - SwiftUI:路径的坐标空间