【问题标题】:How to terminate process when home button is pressed?按下主页按钮时如何终止进程?
【发布时间】:2011-05-13 08:06:51
【问题描述】:

当按下 iphone 主页按钮时,它只会隐藏用户界面,但当前正在运行的任何进程都将继续在后台运行。我发现如果进程仍在运行,当我再次激活应用程序时,启动画面会显示很长时间,直到进程完成,然后才会显示应用程序的主页。有没有办法在按下主页按钮时终止进程?

1) 例如,如果我有一个 for 循环,并且在循环结束之前按下主页按钮,有没有办法终止循环?

2) 如果它不是一个循环,而是一个等待 sdk 函数完成该过程的委托,该怎么办。 例如。调用 UIImageWriteToSavedPhotosAlbum 保存图片后,保存完成后会调用 didFinishSavingWithError。按下主页按钮时可以终止保存过程吗?

谢谢。

【问题讨论】:

  • 1) 主线程中持久循环的概念很糟糕。他们停止了应用程序的责任。因此,将该循环放在后台线程中,并在循环内部检查您在 applicatioResignActive 发生时在主线程中设置的全局变量

标签: iphone ipad ios


【解决方案1】:

您可以尝试在应用程序的 info.plist 中添加一个新行,然后选择 “应用程序不在后台运行” 或写 “UIApplicationExitsOnSuspend”

【讨论】:

    【解决方案2】:
    1. 照铝说的做。
    2. 不做1,而是在app delegate中添加如下方法

      • (void)applicationDidEnterBackground:(UIApplication *)application

    并在方法中做一些事情,比如 exit(0)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-30
      • 2016-07-23
      • 1970-01-01
      • 2021-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多