我有一个问题我把我的iPhone 6放在iOS 12 beta 1上,这是我的应用程序中的一个方法,当按下弹出按钮在iOS 12上不起作用但在iOS 11.4.1上工作
这就是我使用的方法:
UIControl().sendAction(#selector(URLSessionTask.suspend), to: UIApplication.shared, for: nil)
在iOS 11中,应用程序正常退出,在iOS 12中,当按下弹出按钮时,应用程序不会退出,只执行任何操作。
我知道这是Swift 4.2,当我浏览新闻和修改时,我没有看到类似于使用新方法的链接来正确关闭应用程序。
我需要这个,因为如果此人不接受条款和条件,我会用它关闭应用程序。
答案 0 :(得分:8)
您可以调用退出方法
exit(-1)
或者您可以使用 NSXPCConnection.suspend
UIControl().sendAction(#selector(NSXPCConnection.suspend),
to: UIApplication.shared, for: nil)
此外,Apple不建议强制终止您的应用。你怎么做的并不重要。
检查this帖子。
答案 1 :(得分:4)
尝试此代码:
DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
UIApplication.shared.perform(#selector(NSXPCConnection.suspend))
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
exit(0)
}
}
这将等待1秒钟,应用将需要0.5秒才能关闭。您可以在此代码段之前使显示变暗。
答案 2 :(得分:0)
如果您不介意触发崩溃错误,这将是终止应用的最简单方法。
// Create an array and "index out of range"
[0][1]