ios后台机制

最近在做关于界面信息保存的模块,查阅相关的资料,对ios的后台机制有一个系统的了解,现在总结出来:

IOS是“伪后台”,iOS 中所谓的“后台驻留”并不是指“执行中的程序”,而是“最近使用过的程序”。

关闭--------这个程序以彻底关闭或尚未被开启

待用--------程序处于开启状态,但是并未收到任何指令(例如:程序开启但用户锁定了机器)

使用中----正常使用中的程序

后台--------程序不在开启状态但仍然在后台运行代码

暂停--------程序仍然在使用内存但并未运行代码,程序在关闭后只有5秒的处理时间

事实上你根本就不需要管理
iOS 的多任 务后台,因为你所看到留在后台当中的程序并非真正的在运行,其实多任务后台并不是实质上的任务管理器,更确切的说,更像是类似浏览器历史记录的东西,只不过专门针对程序的记录而已。总体来讲多任务后台只是一个让用户可以 在最近打开的程序中做切换的一个工具而已,对以上理论最好的证明就是当你重启你的 iPhone后,在多任务后台中还是会显示所有 你最近开启过的程序,显然他们不可能在运行。所以当你按Home键离开程序后,你根本不需要再去管多任务后台的东西,因为有
90%的程序都会在你按Home键离开程序后停止运作。

技术上来讲,所有的程续在按Home键后
只有5秒钟的后台时间,iOS在将这些程序变 为暂停状态前给予它们一个非常有限的时间来清除所需清除的内容,之后程序变会被保留在 记忆体中以便可以快速的开启它。特殊需求的程序可以达到10分钟。另外,当程序有特殊需求在后台运行更久
而并非5秒钟时,Speirs 使用了 Instacast 做为例子对其进行了讲解,当 Instacast 正 在后台下载 podcasts 时它会告诉iOS系统它正在下载东西,这样使得iOS系统给于其多10 分钟的时间而并非5秒钟的时间,一但10分钟 时限到达后 Instacast 将会被强制切换至暂 停模式。当然还有相当一部分的程序是长期在后台
工作的,如邮件、音乐、GPS、Voip、电子 报等。这些程序都会一直在后台运行直至它完成它本身的任务。

ios后台机制

时间: 2024-10-14 02:09:22

ios后台机制的相关文章

ios后台传输机制

http://www.appcoda.com/background-transfer-service-ios7/ http://www.raywenderlich.com/51127/nsurlsession-tutorial https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/URLLoadingSystem/Articles/UsingNSURLSession.html ios后台传输机制

WP与IOS与Android的后台机制相同与不同

简介: 1.Windows Phone与IOS的后台机制是 后台挂起 + 待机 + 通知代理 这样一种模式.也就是说一个程序在后台的时候,处于一种挂起状态,程序不能访问CPU.网络和其他系统资源,除了内存(虚拟内存)以外,不消耗任何资源.这么做的主要好处,就是快速程序切换,可以通过长按返回键或Home快速访问最近使用的程序. 2.WP 与 IOS 与 Android 在系统内存紧张的时候,程序会被强制退出,只留一个墓碑.也就是大家常说的墓碑机制了. 3.WP部分操作允许后台程序使用服务代理来长时

IOS研究之IOS7四种后台机制

 IOS 7中,实际上APP拥有四种后台模式,无论是哪一种后台机制,均需要利用苹果给予的相应后台接口实现.IOS7系统中,开发者可以灵活利用多种后台接口(API)实现更加智能的应用操作.对获取开机累计时间不了解的看NSProcessInfo获取系统开机累计时间 一,无后台仅推送 第一种后台方式为传统的无后台操作,仅有苹果推送机制,这种方式出现在iOS 3.x以下的大部分系统版本上.这个方式下,应用在按下Home键后即会关闭退出,其数据通过苹果搭建的推送服务器传输,并不需要应用后台运行.这种方

IOS后台运行机制 与 动作

当用户按下"Home"键或者系统启动另外一个应用时,前台foreground应用首先切换到Inactive状态,然后切换到Background状态.此转换将会导致先后调用应用代理的applicationWillResignActive:和applicationDidEnterBackground:方法. 在applicationDidEnterBackground:方法返回后,大部分应用在之后不久转入suspended状态.对于请求特定后台background任务的应用,比如播放音乐应

IOS 7四种后台机制

本文总结了IOS7中的几个后台处理方式,特酷吧摘录部分如下.原始链接:http://mobile.hiapk.com/evaluate/special/131012/1457001.htmlIOS 7中,实际上APP拥有四种后台模式,无论是哪一种后台机制,均需要利用苹果给予的相应后台接口实现.IOS7系统中,开发者可以灵活利用多种后台接口(API)实现更加智能的应用操作.一,无后台仅推送第一种后台方式为传统的无后台操作,仅有苹果推送机制,这种方式出现在iOS 3.x以下的大部分系统版本上.这个方

iOS后台运行机制-实践总结

从2015年,接触到的项目里,就会有这样的需求:APP需要像Android那样,在后台状态下,执行正常的功能.到现在已经一年多了吧,一直在研究这个方面,写下一些心得,希望与大家共同交流探讨. 首先,我们要知道,苹果对APP占用硬件资源管的很严,更不要说应用后台时候的资源占用了.正常情况下,使用应用时,APP从硬盘加载到内存,开始工作:当用户按下home键,APP便被挂起,依然驻留在内存中,这种状态下,不调用苹果已开放的几种后台方法,程序便不会运行:如果在这个时候,使程序继续运行,则为后台状态:如

关于iOS后台问题( 一 )(ios后台刷新,后台定位,后台下载,真后台)

关于iOS的后台,以下引用一些文段进行一下脑补,请同学们大致看一下,有个基础,原文出处 ----------------------------------------------------------------------------------------------- OS 7中,实际上APP拥有四种后台模式,无论是哪一种后台机制,均需要利用苹果给予的相应后台接口实现.IOS7系统中,开发者可以灵活利用多种后台接口(API)实现更加智能的应用操作.一,无后台仅推送第 一种后台方式为传统

IOS消息机制应用实例--异常处理

IOS消息机制应用实例--异常处理 最近发现了一个在项目中常用的异常处的工具NullSafe,分析了它的实现原理,不小心发现了一个小Bug,现将其分享出来,关于这篇文章的Demo已经上传至GitHub,看完如有收获,欢迎Star,如有疑问欢迎issue,大家一起学习.在IOS开发中我们可能会遇到下面的情景:服务器给我们返回得某个字段是null,比如someValue:null,这个时候我们利用第三方工具转化之后会得到someValue = <null>,这个时候如果我们判断这个someValu

《转之微信移动团队微信公众号》iOS 事件处理机制与图像渲染过程

致歉声明: Peter在开发公众号功能时触发了一个bug,导致群发错误.对此我们深表歉意,并果断开除了Peter.以下交回给正文时间: iOS 事件处理机制与图像渲染过程 iOS RunLoop都干了什么 iOS 为什么必须在主线程中操作UI 事件响应 CALayer CADisplayLink 和 NSTimer iOS 渲染过程 渲染时机 CPU 和 GPU渲染 Core Animation Facebook Pop介绍 AsyncDisplay介绍 参考文章 iOS RunLoop都干了什