当iOS应用程序直接进入后台状态时?

时间:2012-06-13 12:51:19

标签: ios multitasking

有人能告诉我iOS应用程序直接进入后台状态的情况吗?

这里我引用了iOS应用程序编程文档中多线任务部分的内容。

  

如果你的应用程序在后台启动而不是通常处理   某种类型的背景事件 - 发射周期略有变化   如图3-3所示。主要的区别在于,而不是你的   应用程序被激活,它进入后台状态来处理   事件然后很快就被暂停。

已添加...

在iOS应用程序编程文档中,如果您看到图3.3中标题为将应用程序启动到后台,则流程就像这样用户点击应用程序图标 - > main() - > UIApplicationMain() - >输入背景。当用户点击应用程序图标时,应用程序是否有机会直接进入后台。我像这样解释了这个图像。这是对的吗?

感谢。

2 个答案:

答案 0 :(得分:1)

方案

假设您已注册本地/推送通知申请。然后你的应用程序将在后台启动运行一些代码,这些代码写在你的applicationDidEnterBackgroud:委托方法中,然后立即终止。

检查清单2

Apple documentation

修改

  

应用程序也可能在运行时发现本地通知有用   在后台和一些消息,数据或其他项目到达   可能是用户感兴趣的。在这种情况下,他们应该出席   立即使用UIApplication方法的通知    presentLocalNotificationNow :( iOS为应用程序提供有限的时间   在后台运行。。清单2-2说明了你将如何做   此

答案 1 :(得分:1)

后台启动的一个场景(App X)

  • X在其Info.plist中注册了位置背景模式
  • X由用户运行,并在运行时注册重要的位置更改
  • 用户切换到另一个应用程序Y,因此X转到后台然后暂停(只要有重要的位置更改要处理,它将返回到后台模式,然后再次暂停)
  • 应用程序Y占用大量内存,因此暂停的应用程序(包括X)被踢出内存
  • 显着的位置变化。现在X已经发布到后台。