以编程方式终止iOS应用程序

以编程方式终止iOS应用程序,ios,exit,terminate,Ios,Exit,Terminate,我有一个应用程序,当某个特定操作触发时,我关闭该应用程序并要求用户重新打开它 问题在于,当应用程序执行退出(0)时,应用程序会停留在应用程序堆栈中(当我两次单击home按钮时)。我希望将其完全删除,以便在应用程序打开时再次执行viewDidLoad()。您无法自行终止应用程序 根据苹果的人类用户指南 不要以编程方式退出 永远不要以编程方式退出iOS应用程序,因为人们倾向于 将此解释为崩溃。但是,如果外部环境阻止 您的应用程序无法按预期运行,您需要告诉 用户了解情况并解释他们能做些什么。 根据应用

我有一个应用程序,当某个特定操作触发时,我关闭该应用程序并要求用户重新打开它


问题在于,当应用程序执行退出(0)时,应用程序会停留在应用程序堆栈中(当我两次单击home按钮时)。我希望将其完全删除,以便在应用程序打开时再次执行
viewDidLoad()

您无法自行终止应用程序

根据苹果的人类用户指南

不要以编程方式退出 永远不要以编程方式退出iOS应用程序,因为人们倾向于 将此解释为崩溃。但是,如果外部环境阻止 您的应用程序无法按预期运行,您需要告诉 用户了解情况并解释他们能做些什么。 根据应用程序故障的严重程度,您有两个 选择

显示一个有吸引力的屏幕,描述问题并建议解决方案 校正屏幕提供反馈,让用户放心 你的申请没有问题。它将用户置于控制之下, 让他们决定是否要采取纠正措施,并 继续使用应用程序或按Home(主页)按钮并打开 不同应用

如果仅应用程序的某些功能不起作用,请显示 当人们激活该功能时,屏幕或警报。展示 只有当人们试图访问不可用的功能时,才会发出警报 发挥作用


看看这个答案:

为什么?绝对没有必要这样做。我需要在我的代码中使用它。不,你需要以不需要手动重新启动的方式对应用程序进行编程。仅仅因为该应用程序列在最近的应用程序列表中并不意味着它正在运行,但正如其他人指出的那样,调用
exit
是违反苹果的指导方针的。不,你不需要,没有理由这样做,将viewDidLoad中的任何自定义逻辑放入其他函数并调用该函数。好的,那么当用户再次打开应用程序时,有什么方法可以重新加载该应用程序?我希望ViewDidLoad再次执行,将代码部分输入到需要重新执行的单独方法中。从viewDidLoad调用该函数,并从要退出应用程序的代码中调用。