iOS:以编程方式从应用程序退出到主屏幕并优雅退出动画?

iOS: Exit from the app to Home Screen programmatically with gracefully exit with animation?

根据 Technical Q&A QA1561 不推荐任何退出应用程序的方式。适当的方法是允许用户自行退出应用程序,而不是强制退出或中止应用程序的执行。

然而,Microsoft Teams iOS App 以某种方式设法不仅避免了崩溃,而且还优雅地退出了动画,类似于按下设备上的 "Home" 按钮。

Video recording or programmatic exit in the MS Teams iOS app

请注意,在上述示例中没有按下主页按钮。该应用程序以编程方式执行动画退出

  1. 这是 iOS 的记录功能吗?还是 MS Teams 的开发人员使用某种私有 API?
  2. 无论如何,如何以编程方式退出带有动画的应用程序,使其不会显示为崩溃?

如何在您的设备上重现此行为:

  1. 下载 MS Teams 应用程序
  2. 登录
  3. 将设置中的主题从 "Dark" 更改为 "Light",反之亦然,然后单击 "Relaunch"。观察,应用程序如何以动画退出。

代码:

   @IBAction func minimizeOrKillApp(){            
        UIControl().sendAction(#selector(URLSessionTask.suspend), to: UIApplication.shared, for: nil)
        //Comment if you want to minimise app
        Timer.scheduledTimer(withTimeInterval: 0.2, repeats: false) { (timer) in
            exit(0)
        }
    }

Download sample code

不推荐,您的应用将被拒绝。我们都是开发者,我们知道如何从审核团队那里批准它

Apple developer question