2012-04-02 43 views
0

我们不希望使用exit(0)来关闭应用程序,但是我们希望允许应用程序以编程方式转到后台,并且每个用户都可以执行此操作。有没有办法将应用程序以编程方式发送到后台而不退出?模拟主页按钮的点击?将应用程序发送到后台进程

提前致谢!

回答

1

不可能。主页按钮点击运行到私人的GSEvents框架。这是exit()或不幸的是。

+0

不过,我已经在很多地方,该应用可以开始使用出口拒绝读取(0)。我们不想要这个。然而,我们希望让用户能够设置一个选项,允许应用程序在处理过程中将其本身最小化,并执行其他操作。我们的后台进程令人惊叹,但我们可以选择自动执行此操作。我们不想用退出(0) – mejim707 2012-04-02 02:36:23

+0

来解决这个问题。具有讽刺意味的是,很多Zinga应用程序使用退出函数 – CodaFi 2012-04-02 02:37:26

+0

但是,这会导致后台处理无法工作,因为应用程序实际上终止了,不干净,但确实如此。我们需要完成后台任务。 – mejim707 2012-04-02 02:42:03

2

有没有办法将应用程序以编程方式发送到后台而不退出?

不。用户应该是在控制应用程序 - 应用程序不应该移动到自己的背景(或退出)。

+0

但是,我读过很多地方的应用程序可能会被拒绝使用退出(0)。我们不想要这个。然而,我们希望让用户能够设置一个选项,允许应用程序在处理过程中将其本身最小化,并执行其他操作。我们的后台进程令人惊叹,但我们可以选择自动执行此操作。我们不想通过退出来解决这个问题(0) – mejim707 2012-04-02 02:36:57

+1

你想做什么以及你能做*的事情恐怕是两件不同的事情。最好的解决方案是让您的应用程序在用户进行任何处理时保持对用户有用。如果这是不可能的,让用户知道该应用正在做什么,并让他们如果他们想要点击主页按钮。不要调用exit() - 让用户保持控制。 – Caleb 2012-04-02 03:00:11

0

下面的代码可用于iOS应用程序发送到后台编程,而不退出

DispatchQueue.main.async { 
     UIApplication.shared.performSelector(inBackground:NSSelectorFromString("suspend"), with: nil) 
    } 
相关问题