繁体   English   中英

如何在 Swift5 中关闭应用程序时更改应用程序状态?

[英]How to change the app status when the app is turned off in Swift5?

我运行我的应用程序没有问题。

但是,如果您单击我的应用程序上的共享按钮并完成共享,关闭我的应用程序并单击另一个应用程序上的共享图像,则不会 go 到登录屏幕。 为什么不识别后台状态?

switch UIApplication.shared.applicationState {
    case .background:
        LoginScreen()
        break
    case .inactive:
        WebViewScreen()
        break
    case .active:
        WebViewScreen()
        break
    default:
        break
}
return true

因此,如果我按下共享按钮和 go 到我的应用程序,我可以 go 到 webview 屏幕没有失败。 但是当应用程序关闭时,我不想 go 到 webview 屏幕。

编辑:2016 年文件

表 2-3 应用状态 State

描述

不运行

该应用程序尚未启动或正在运行,但已被系统终止。

不活跃

该应用程序正在前台运行,但当前未接收事件。 (虽然它可能正在执行其他代码。)应用程序通常仅在转换到不同的 state 时短暂停留在此 state 中。

积极的

该应用程序正在前台运行并正在接收事件。 这是前台应用程序的正常模式。

背景

该应用程序在后台并执行代码。 大多数应用程序在被暂停的过程中都会短暂输入此 state。 但是,请求额外执行时间的应用程序可能会在此 state 中保留一段时间。 此外,直接在后台启动的应用程序会输入此 state 而不是非活动的 state。 有关如何在后台执行代码的信息,请参阅后台执行。

暂停

该应用程序在后台,但未执行代码。 系统会自动将应用程序移动到此 state,并且在这样做之前不会通知它们。 暂停时,应用程序仍保留在 memory 中,但不执行任何代码。

当发生内存不足的情况时,系统可能会在不通知的情况下清除挂起的应用程序,以便为前台应用程序腾出更多空间。

2016 Apple 文档的状态值为“ Notruning ”。 现在没了吗? 有替代的状态值吗?

当应用程序出现另一个应用程序时,例如电话来电,或者在您的情况下通过共享按钮。 您的应用程序将 go 在非活动 state 中而不是在后台。 请输入打印语句并尝试找出您的应用程序在哪个 state 中,我怀疑它不在后台 state 中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM