发布网友 发布时间:2022-05-08 23:06
共3个回答
热心网友 时间:2024-01-10 05:35
技术性太强的就不说了,简单点说。
先来说iOS。
iOS的后台机制简单说是按程序的类别来采取不同的后台管理方法。
iOS将所有程序分为两类:
普通系统程序(比如自带的软件)
第三方程序(你自己安装的软件)
iOS会将这两类程序用三种后台方法处理:
系统级别后台(永远不退出,退出了系统就崩溃了,比如springboard)
原生程序后台(所有系统程序的默认选项。比如电话,信息,音乐等等,特点是支持后台,但并非一直在后台运行,当完成当前动作后(比如音乐全部播放完毕)会停止动作,仍然会占用一部分内存,但软件已经停止活动,如果内存不足还会把空闲多余部分释放出来,如果内存还不足还会完全关闭。
不支持后台,但有数据进度存储或支持任务完成。一般适用于所有APP STORE的软件,基本都不支持原生后台(苹果规定的)但是在最小化时会有数据进度保存下来,再次打开时会直接加载进度回到退出前的界面,如水果忍者,街霸4等。
这里注意,自带双击home调出来的任务管理器,官方真正的名称是“最近打开的程序列表”。在这个列表中,你并不能看出后台运行的状态的。
以上是iOS的后台机制。
下面来说说WP7。
WP7不一样的是,他对手机里所有的应用都一视同仁。但会针对不同程序所占内存等条件动态地调整其后台状态。
WP7的后台状态共四种。
live agent(实时后台):简单点说,就是处于这个状态的后台程序就是所谓的“真后台”。解释一下就是这一级别的任务可以得到与前台任务相同的资源,包括网络连接和电池使用,但是微软*了这一级别的任务最大运行数量(5个),超过这个数量的任务之后,按照时间顺序,最早后台的任务将依次进入冻结状态。
冻结: 这个级别的后台任务与iOS的原生程序后台类似,后台冻结住任务的网络连接和内存资源的使用,当内存吃紧的时候,按照打开的顺序,最早打开的程序会进入墓碑状态。
墓碑状态: 这一状态是目前所有Windows Phone软件后台使用的机制,也就是后台时,把程序运行的状态作为一个文件保存在内存中,等到恢复任务是,再直接从这个文件中恢复任务,以保证使用的延续,缺点是需要有一个加载的过程。
关闭: 当内存完全不够是,按照顺序,关闭最早打开的任务。
从以上的解释可以看出,在WP7系统中,程序是否支持后台运行要看程序支持哪个层次的后台机制。
还有就是例如QQ设计了一个推送的功能,这个是一种常驻的后台,它会在你手机开机时一直运行,iOS也有这个推送机制。
WP8的后台机制新增了一个特性叫做快速回复,系统允许程序将自己锁定在实时后台和冻结两种状态,不会被墓碑,但是这也是有*的。
希望能帮到你。如果还有不懂可以追问。^_^
热心网友 时间:2024-01-10 05:36
阐述IOS与WP后台区别前先解释说明两个后台。热心网友 时间:2024-01-10 05:36
wp7墓碑后台就是快速载入,相当于只保留了应用的主要部分需要恢复,恢复速度不如ios