当我的应用程序将用户重定向到safari时(也发生在其他重定向不仅仅是safari)
UIApplication.shared.open(URL ..)
然后用户按下"返回应用程序"按钮,应用程序重新开始,而不是从重定向之前的点继续。
我有一个设置表,按下单元格时会发生重定向。 (想象一个带有&#34的单元格;来自我们的更多应用程序")
我知道这不是默认行为,所以我想念一些我无法通过谷歌找到的内容。谁可以指点我的文章或有想法?提前谢谢。
"返回应用"的屏幕截图按钮的
编辑:如果它起作用,我不使用故事板。所以考虑到评论可能我没有正确设置导航控制器,因此没有层次结构堆栈?
基于@MaximSysenko观察,应用程序在重定向发生时停止/崩溃
这是重定向发生的地方:
override public func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
switch indexPath.section {
...
//appSpecific
case 1:
if (indexPath.row == 0) {
} else if (indexPath.row == 1) {
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "permissions"), object: nil)
//tableView.deselectRow(at: indexPath, animated: true)
}
...
case 3:
else if (indexPath.row == 1) {
let url = URL(string: "itms://itunes.apple.com/us/developer/some-id")
UIApplication.shared.open(url!, options: [:], completionHandler: nil)
tableView.deselectRow(at: indexPath, animated: true)
}
答案 0 :(得分:2)
我怀疑您的Info.plist包含此密钥的真值:
<key>UIApplicationExitsOnSuspend</key>
这将导致您的应用在进入后台时完全退出。将此键值设置为false,以使您的应用程序通过从前景到后台的过渡返回前景。