iOS 优化方案浅析
本文转载至 http://mobile.51cto.com/iphone-413256.htm
Windows独特的注册表机制以及复杂的进程、内存管理,给了很多PC“优化”类软件极大的机遇,比如奇虎360工具就是从Windows优化 功能开始逐渐发迹的。
Windows 独特的注册表机制以及复杂的进程、内存管理,给了很多PC“优化”类软件极大的机遇,比如奇虎360工具就是从Windows优化 功能开始逐渐发迹的。时至移动时代,“优化”这个概念已经在中国深入人心,一旦用户遇到手机系统缓慢或者剩余空间不足等问题,最先想的是去找一款优化内存 及清理缓存的应用,然而在iOS平台“优化”类工具其实并不适用。
内存清理不适合iOS
iOS本身的内存调用机制与Mac同源,但是与Windows有本质的区别。

Windows 为了兼容古老和不规范的程序,允许程序直接控制硬件,导致windows系统权限不足,而许多windows程序也不规范,因此 在退出进程后往往许多内存并没有真正还给系统变成了空闲内存,导致时间一长系统可用内存越来越少。所以,Windows系统之下,需要一款软件进行内存优 化并且及时释放空闲内存。
但 Mac或者iOS却不是这样,Mac系统会将内存分为自由(Free)、空闲(inactive)、活跃(active)以及固定 (wired)四个类型,并且根据系统需要进行相互转化,所以如果系统本身没有Bug的话,内存一旦能够充足供应,系统就不会出现内存枯竭,进而并不需要 优化类的工具进行干预。
不过问题依旧产生了,随着iOS版本的升级,设备开始出现缓慢或者内存不足的现象,姑且忽略Bug的原因,其本质应该是系统越来越高的多进程需求,让低版本的设备内存开始吃力,而这并不是系统原因而是硬件原因。
当然iOS并不是完美无缺,iOS6就出现了很多内存管理方面的问题,很多问题直接影响了设备的速度,当然这些问题也不是一款优化内存的应用可以解决的,而需要苹果官方的修复。
鉴于以上的原因,iOS平台的用户并不适合内存清理类工具,即使清理内存,效果与系统本身“自净”功能相差不大。
内存优化工具的骗局
iOS系统并不适合内存清理操作,当然系统本身也并不允许应用针对内存进行操作。不过还是有很多内存优化应用打着“优化”的旗号招摇撞骗。

内存100%显示界面
比 如一款名为“内存100%”的应用,App Store拥有免费与收费两个版本,声称能够提高系统速度优化内存,实际上该应用仅是一个欺诈应用,免费版仅有一个“点击购买专业版”的功能,点击之后需 要购买专业版应用,之后悲剧再次产生,购买专业版应用的用户购买的功能仅仅是查看iOS设备内存状态,优化功能完全没有,当然在没有越狱的情况下,这款应 用也不可能修改系统内存的情况,也就没有内存清理的功能,让人郁闷不已。

iOS版360手机卫士
例 如,“内存100%”的应用在App Store中还有很多,不过这些应用100%没有权限操作系统内存,更不要提优化内存了,简直是赤裸裸的欺诈。除了“默默欺诈”的应用以外,360手机卫 士iOS版也声称支持内存优化,不过360手机卫士正逐渐弱化这个功能,其描述也仅仅是炒作的味道,并未有实际的功效。
越狱设备的所谓优化
尽管iOS本身可以自行优化及管理内存,并且可以自行清空缓存,但是越狱后的设备,给予了应用修改系统内存的权限,一批Cydia内存优化工具也开始崭露头角。

iOS越狱

killbackground清理缓存
不 过这类工具的本质是一样的,就是关闭一些后台程序进而达到控制内存的目的。其中最常用的要数killbackground,看名字就知道其作 用主要是关闭后台进程。关闭后台进程自然能够腾出一些内存,但是所关进程是否是系统进程,是否会影响系统运行就不得而知了,当然关闭进程同时给系统带来了 不稳定因数,可能进程关闭的下一秒系统就会崩溃Down机。

升级系统后内存略显不足
实 际上,越狱后的内存清理工具,笔者以为比较适合解决因升级高版本iOS带来的系统缓慢问题。在苹果近期公布的几个iOS版本中可以看出,系统 所占空间、内存以及多进程数量正在逐渐增多,而低版本的设备开始有些吃不消,这个时候凭借经验关闭一些不常用的进程,优化内存不失为权宜之计。
iOS 优化方案浅析的更多相关文章
- iOS界面跳转的一些优化方案
原文地址: http://blog.startry.com/2016/02/14/Think-Of-UIViewController-Switch/ iOS界面跳转的一些优化方案 App应用程序开发, ...
- 从350ms到80ms,揭秘阿里工程师 iOS 短视频优化方案
内容作为 App 产品新的促活点,受到了越来越多的重视与投入,短视频则是增加用户粘性.增加用户停留时长的一把利器.短视频的内容与体验直接关系到用户是否愿意长时停留,盒马也提出全链路内容视频化的规划,以 ...
- Adapter优化方案的探索
概要:使用Adapter的注意事项与优化方案本文的例子都可以在结尾处的示例代码连接中看到并下载,如果喜欢请star,如果觉得有纰漏请提交issue,如果你有更好的点子可以提交pull request. ...
- MySQL 大表优化方案(长文)
当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑.部署.运维的各种复杂度,一般以整型 ...
- [转] 钉钉的H5性能优化方案
对于一个H5的产品,功能无疑很重要,但是性能同样是用户体验中不可或缺的一环.原本H5的渲染性能就不及native的app,如果不把性能优化做起来,将极大地影响用户使用产品的积极性. 用户感受 当用户能 ...
- 移动 H5 首屏秒开优化方案探讨
转载bang大神文章,原文<移动 H5 首屏秒开优化方案探讨>,此文仅仅用做自学与分享! 随着移动设备性能不断增强,web 页面的性能体验逐渐变得可以接受,又因为 web 开发模式的诸多好 ...
- 揭秘盒马鲜生 Android 短视频秒播优化方案
短视频作为内容重要的承载方式,是吸引用户的重点,短视频的内容与体验直接关系到用户是否愿意长时停留.因此,体验的优化就显得尤为重要.上一篇我们分享了 iOS 短视频秒播优化,这篇我们来聊聊 Androi ...
- 【腾讯Bugly干货分享】OCS——史上最疯狂的iOS动态化方案
本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/zctwM2Wf8c6_sxT_0yZvXg 导语 在 ...
- Tomcat 配置详解/优化方案
转自:http://blog.csdn.net/cicada688/article/details/14451541 Service.xml Server.xml配置文件用于对整个容器进行相关的配置 ...
随机推荐
- APUE 学习笔记(十) 高级I/O
1. Unix IPC(InterProcess Communication) 同一主机的各个进程间的IPC:管道.FIFO.消息队列.信号量.共享存储器 不同主机上的各个进程间IPC:socket套 ...
- 【HDOJ6218】Bridge(线段树,set,网格图,连通性)
题意:给定一张2×n的网格图,一开始矩阵所有相邻点之间有一条边 有q个询问,每次给出两个相邻的点的坐标,将其中的边删除或者添加,问如此操作之后整张图的割边数量 n,q<=2*10^5, ...
- 慕课 python 操作数据库
test_connection import MySQLdb conn = MySQLdb.Connect( host = '127.0.0.1', port = 3306, user = '**** ...
- unity3d自动寻路教程
U3D的自动寻路插件是不少,但是其实U3D的PRO版本就提供了相当实用的自动寻路组件了,以下教程分别讲解自动寻路的路径选择优先,上楼梯跳下的条件判断等等实用方法,教程分三编,但这个教程没有讲到Navm ...
- CUDA程序计时
之前写的CUDA程序,想测量一下性能,网上很多用的是CPU端计时,很不准确.翻了一下书,发现这里应该使用事件来计时. CUDA中的事件本质上是一个GPU时间戳,这个时间戳是在用户指定的时间点上记录的. ...
- AC日记——Andryusha and Socks Codeforces 780a
A. Andryusha and Socks time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- Hibernate游记——盘缠篇(jar包)
需要的jar包我都放我百度网盘了 jar(包含注解需要的jar)包传送门:http://pan.baidu.com/s/1o60OYvg
- 推荐一款基于 AI 开发的 IDE 插件,帮助提升编码效率
最近在浏览技术社区的时候,发现了一款神奇 IDE 插件,官网称可以利用 AI 帮助程序员写代码,一下子吸引了我的好奇心.赶紧下载下来使用一番,感觉确实蛮神奇,可以火速提升编程效率. 这款插件叫做 ai ...
- Maven设置代理
很多时候电信的网络对于出国不太稳定,针对一些库下载速度比较慢,所以在使用SSR出国时配置maven使用是一种不错的选择.当然,还有另一种选择,就是使用国内的镜像库. 操作步骤: 1.打开{M2_HOM ...
- javascript 对象初探 (六)--- call()和apply()初探
在javascript中,每个函数都具有call()和apply()两个方法,您可以用她们来触发函数,并指定相关的调用参数. 此外,这两个方法还有另一个功能,就是她可以让一个对象去‘借用‘另一个对象的 ...