在下次运行之前以后台模式关闭应用程序[重复]

Posted

技术标签:

【中文标题】在下次运行之前以后台模式关闭应用程序[重复]【英文标题】:Closing an app in background mode before next run of it [duplicate] 【发布时间】:2016-10-31 18:52:27 【问题描述】:

我有一个应用程序。我们在使用它时登录。这是一个来自同一设备的多用户应用程序,一次只有一个用户。当用户按下主页按钮时,我需要退出应用程序,而不是进入后台模式。当它进入后台模式时,它会返回到最后一个活动屏幕而不是登录屏幕,然后有人点击应用图标进入应用。

我该怎么做:

按下主页按钮关闭应用程序

或者当应用程序从后台操作再次变为前台活动时调用哪个方法,以便我可以在其中编写需要将应用程序重定向到登录视图的代码?

谢谢!

【问题讨论】:

您不能强制退出应用程序,但这似乎无关紧要,因为“当它进入后台模式时,它会返回最后一个活动屏幕而不是登录屏幕”是您可以控制的 - 您知道应用程序何时出现在前台,因此只需在此时显示您想要的任何内容。 【参考方案1】:

每当您点击主页按钮时,都会调用“applicationDidEnterbackground”方法。 将 nil 分配给所有当前用户变量。

在“applicationWillEnterForeground”方法中比较所有当前用户变量的值。

如果它是 nil -> 启动登录屏幕。

【讨论】:

【参考方案2】:

转到您的 info.plist 并添加密钥 "Application does not run in background"。这一次当用户点击主页按钮时,应用程序完全退出。

【讨论】:

以上是关于在下次运行之前以后台模式关闭应用程序[重复]的主要内容,如果未能解决你的问题,请参考以下文章

应用程序未运行时的iOS后台模式?

如何检测应用程序何时在后台 Swift 中强制关闭 [重复]

Android跨进程通信AIDL服务

iPhone:重复后台任务

防止计时器在后台模式下暂停

离子如何在应用程序关闭之前触发功能?