千影

RE:从零开始安卓系统优化(理论篇)
手机优化主要有两个方法,硬件与软件。硬件主要通过更换硬件,优化散热,超频等等提高性能。这一方法并不适合大众。而现在...
扫描右侧二维码阅读全文
31
2016/10

RE:从零开始安卓系统优化(理论篇)

手机优化主要有两个方法,硬件与软件。硬件主要通过更换硬件,优化散热,超频等等提高性能。这一方法并不适合大众。而现在智能手机都可以多任务处理,所谓三心二意。我们让他该一心一意时专心致志,就可以提高速度了。所以这里主要说从软件方面的优化。

安卓与IOS对比

大家总是说安卓机不好用,安卓手机卡。其实,并不是如此,造成两者的差别主要是因为后台服务机制的不同。Android是真后台,它允许APP留存在后台,依靠着Service服务组件继续运行,抢占前台CPU资源,这也是Android手机容易卡顿的根源。苹果呢在ios7以后则为智能后台,主要有四种形式无后台仅推送、墓碑式的后台机制、智能调度后台、真后台(有严格限制)。
那么下面我们就详细讨论一下安卓的后台机制。

安卓后台

安卓的后台的设计本身就是淡化用户对后台的管理,由系统来完成系统资源的调配。

后台机制

Android系统会尽量维持一个进程的生命,直到最终需要为新的更重要的进程腾出内存空间。为了决定哪个该杀哪个该留,系统会跟据运行于进程内的组件的和组件的状态把进程置于不同的重要性等级。当需要系统资源时,重要性等级越低的先被淘汰。
当然也有后台服务与后台缓存这一区分。
服务可在后持续运行,所以在后台耗电的也只有带服务的应用了。缓存则是Android的应用在被切换到后台时,化作后台缓存,暂停运行,并不会消耗cpu资源,只保留了运行状态,在内存不足时,安卓也会杀掉这些缓存。

所谓的的清理内存

安卓的清理内存只是将后台缓存清理掉,显然没有多少卵用。系统自动清理则是当内存不够时,安卓首先会清理缓存,然后根据应用的重要性清理服务,而卡顿就是在根据应用的重要性清理服务中出现。部分国产定制系统清理了服务,可是又是由于广播接收器的存在,应用又不断重启

广播接收器

这里简单介绍一下广播接收器;安卓系统时时刻刻由于用户操作和系统状态变化产生各种事件,而事件需要程序去处理,程序安装时注册监听器表明我能处理xxx这些事件,发生某事件时,安卓发送广播消息,能处理该事件的程序就会被调用,调用的是默认程序或由用户选择程序处理。而事件有屏幕解锁、关闭、home被按下、无线网络状态变化、电量变化、收到发出短信和呼叫等等等等太多了。。。所以一个程序想启动太容易了。
比如 我用过的某版本lbe(现在不用了)会监听home事件,所以每当你按下home返回主屏幕时lbe就会启动,你用普通方法完全杀得掉?

国内app乱象

国内由于软件开发没有一个统一的规范,流氓软件也非常多,没有10个服务项没有10个广播接收器都不敢说自己是app。后果就像学生写作业一样,这个老师想让学生自己这门课好,就多布置一点作业,那个老师又多布置一点,积攒到一起学生就不堪重负。更有部分app,常驻后台就是为了推送广告。
so,安卓的优化不能一概而论,要根据具体的情况采用对应的解决方法。

优化策略

首先root这是必需的,没root还是老老实实的用原来系统吧。其次因为国内定制系统添加的控制不同,与我们有冲突,所以有条件的朋友可以刷Cm或者原生系统。同时2G内存是一个重要的分水岭。

  • 国内定制系统
  • 这一方案只需要root。采用空调狗MyAndroidTools互相搭配。
  • 安卓2G内存以下
  • 其实在这么小的内存下,就不要考虑常驻后台了。采用阻止运行空调狗MyAndroidTools。注意这一方案需要XP框架
  • 安卓2G内存以上
  • 内存2G以上清理后台基本上就没多大意义了,可以直接采用MyAndroidTools,当然适当使用阻止运行也是需要的。主要是为了省电。这个方案可以不要框架,当然,有框架更好。



那么2G内存怎么办呢,随你选择喽。




未完,针对各个优化软件以及root和框架,将会在缓慢更新,请持续关注。

最后修改:2017 年 09 月 24 日 01 : 20 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论