安卓手机容易卡,是不是应用不能装太多,不然后台进程太多运行及启动会变卡,对吗?

您好, []|
手机变慢根源浅析:后台程序太多
随着智能机的普及,手机可以安装各种应用软件,让手机的功能更强大。但是手机用户在享受各种软件应用带来的便捷的时候,却常常发现在发短信、打开菜单甚至拨号的时候,变慢了。那么,为何我的手机会变慢?本文将带着大家去找一找解决方案。扩展存储卡,不能让手机变快为何我的手机会变慢?对这个问题,很多人认为手机存储空间不足导致的。因此大多数人给出的解决办法是更换大容量内存卡。而事实上,手机运行缓慢一般是因为运行内存不足导致的,是大量程序占用了手机运行内存。因此,更换大容量内存卡,只是解决了手机存储容量不足的问题,无法解决手机变慢的问题。 手机变慢,源于后台程序太多那么,运行内存到哪里去了?答案是"后台程序太多"。 现在很多手机应用程序安装了之后,会跟随手机启动而自启动;甚至有一些手机应用软件在前台看似已经删除,但是仍然可以通过预留的自启动程序在手机后台偷偷运行,从而占用手机宝贵的运行内存,从而让手机变慢。发烧友级别的用户会提出:格式化手机,是将这些随机启动程序彻底删除的好办法。但是格式化手机有一定的技术难度和风险,不是所有的手机用户都能够操作的。可以试用QQ安全助手,提高手机速度那么,有没有办法让用户一眼看到这些后台程序,并进行删除或者关闭呢?其实,QQ安全助手软件就可以实现程序管理和进程管理。通过程序管理,用户可以完全删除那些不需要的手机应用;通过进程管理,则可以直接看到那些后台运行的程序,并可选择性的关闭后台程序,从而为手机释放内存空间,提高手机运行速度。目前,QQ安全助手软件已覆盖了S60V3、V5和Android这三大大手机平台,除了具备程序管理、进程管理外,还具备上网流量管理、拦截垃圾短信、骚扰电话、私密保险箱、手机令牌等功能,是一款绿色安全的"傻瓜化"手机安全软件,适合手机用户使用。
[责任编辑:shulaiyang]
(请登录发言,并遵守)
如果你对科技频道有任何意见或建议,请到交流平台反馈。【】
新闻排行财经科普数码科技
Copyright & 1998 - 2016 Tencent. All Rights ReservedAndroid 手机是否会越用越卡?
不是说用个一会会有点卡顿,而是一个 Android 手机,用个半年后就怎么刷机都不会跟最开始一样流畅了。
【前言】答得不是很全面,也没法一次性太详细地展开,想到哪写到哪,不然写成论文就累死了...想到别的点再更新吧...【原因分析】Q:不是说用个一会会有点卡顿,而是一个 Android 手机,用个半年后就怎么刷机都不会跟最开始一样流畅了。A:目前想到的可能原因有:1,手机存储芯片随着使用自然变慢有些手机存储芯片是 TLC,可能有提供一个特性,在内部存储区域的dirty区域小于 1/3之前呈现 SLC 特性,随着各种使用,最后 dirty 区域会大于 1/3,然后退化为 TLC。TLC 慢,SLC快。这个特性是 EMMC 厂商加速出厂时的刷机速度引入。需要说明的是,可能并不是所有TLC都有这个特性,另外,对于大size的emmc,这个性能下降并不明显,低端一些的,比如8G的速度可能掉到几M写速度,16G的到十多M顺序写,32G和64G的会好一些,是变慢但可能影响不大,大部分场合都感觉不出来。2,硬件老化和各种跌落导致零件损坏如果有部分器件损坏,可能会导致相应的驱动以及上层服务工作异常,负载很高,从而导致其他正常任务无法获得足够的处理器资源而变慢。3,各种器件,触点老化导致手机能耗增加,容易发热以后会触发系统温控,从而引起cpu降频导致系统变慢4,各种新的大版本升级固件相比第一版固件,往往没有相当的研发和测试投入,可能会导致新固件反而没有老固件优化到位,所以感觉卡顿。没有优化到位,也可能有供应商的原因,比如说GPU的闭源库更新可能无法跟上Android新的显示架构更新。当然,不排除新版本因为Android新版本引入了新技术(比如ART)以及其他方面的优化技术积累而做得更好。5,落下一个很重要的原因,那就是随着硬件的更新换代,Android也不停地迭代,并且几乎每一个版本都耗费更多的资源(更多的是内存与flash),所以就同样的硬件配置,老版本Android可能顺畅得很,而新版本已经跑不动了。随着 Android 新功能的不断增加,对内存的消耗已经是无法刹车了,早期 512M 的如果不做特殊的定制和裁剪,可能完全跑不动了,1G的甚至都必须配 ZRAM swap(时间换空间)。但是,也需要看到Google其他方面的努力,比如说ART,比如说下一代Android M即将推出的Doze和App Standby。--------如果是针对同一个固件,原因则:1,主要是各类软件开启后导致后台软件运行得越来越多,各类默认负载不断加大,空闲处理器资源减少2,随着后台应用的叠加,内存耗费也会逐步增加,导致最后空闲内存下降,新的任务启动甚至老的任务回到前台需要内存资源时可能需要触发zram swap或者lowmemkiller,这些都会不可避免的带来延迟,而一旦有持续的内存泄露,甚至无法回收内存而会导致系统最后崩溃3,还有一个特别典型的原因就是,当后台驻留应用泛滥后,随着内存耗费的增加,内存的碎片化会很严重,也就是物理连续的内存会越来越少,这会引起严重的IO性能衰退,可能会导致IO从顺序操作转变为随机操作。4,类似地,随着应用增多,系统更容易发热,更容易触发系统温控,从而引起降频等动作,各类资源供给降低自然会引起体验下降5,除此之外,部分温控技术引入了降FPS,这个是明显影响用户体验感知的,当然这也无可厚非,平衡发热和性能一直是硬件固化之后的必由之路【解决办法】一,对用户1,一键清理后台2,自启动管理,只允许部分自启动3,后台管理,只允许部分后台3,重启4,换新机(建议选购时用16G+,8G的话确认下是不是MLC,更多选购考虑的因素很多,没法一一列出,后面有机会从技术的角度写个新机选购指南。)注:第2,3个有的系统自带(包括最新版的MIUI,Flyme等都有自带了),有的要安装第三方app,比如绿色守护,下一代Android M有Doze+App Standby,具体效果如何,让我们拭目以待吧。二,对手机厂商研发方面做好各类预研,选型,设计,开发,测试和优化,例如:1,限制后台任务个数2,解决系统和内核内存泄露3,错误注入与容错4,更均衡的cpu/gpu/mem/emmc等5,做好结构散热6,优化系统能耗7,智能清理后台+白名单8,优化应用9,资源配额10,防止信号干扰11,自启动管理+白名单 ……其中,Android本身在好几个方面还有极大地改善空间,比如说IO资源配额和信息Push,这些都是客制化厂商和Google需要努力的空间,甚至需要厂商之前协同制定统一的标准。部分性能问题跟功耗关联,有兴趣可以看我早期写的“长篇大论”,,当然,里头的东西也不是很全面,后续有空再展开。三,对应用开发厂商很多应用做得很流氓,包括很多大厂,想尽办法让自己驻留在后台,还没有节制的活动;而另外一部分可能受限于技术积累和架构能力,开发出来的应用对各类系统资源的需求很大。前段时间Google放出了好多性能优化相关的视频,这个是很好的信号吧,不过整个行业的应用质量要逐步提高起来,还是需要一个过程,先期望那些大厂能做一些实质的努力。当然,供应商们的驱动,HAL以及上层APP也会有很多优化的空间。【结尾】Android 在不断地迭代,包括客制化厂商和Google 都在不断努力完善,所以长远来看,体验应该是不断优化的...对于用户来说,学习一些选购知识和一些基本的用法就好了,实在不行就换个口碑更好的机子或者自己到体验店或者借其他同学的手机感受下,然后稍微学习一些简单的用法就好。好的系统的交互设计往往会降低用户的学习成本。对于身在客制化厂商或者应用开发的各类Engineer,学习一些优化知识,研究各种改善体验的技术,研究竞品,相互学习,与公司内部各个部门协同,致力于改善用户体验应该是我们持久的使命。除了性能,稳定性,功耗,温控和安全等几个,事关用户的核心体验,都需要整个行业一起努力,持续的优化。用户不是傻子,最后都得拿产品说话。
我的NOTE2做了实验,因为拿到手就ROOT了,所以没法自动更新大概用了一年半,觉得有点卡了,重新刷了一下当时那个版本的包之后感觉和最开始一样快……顺便说一句,备份恢复时才发现,竟然有1W3的短信,而且之前进短信APP不卡曾经有个E71,大概6200条短信,进收件箱需要50秒,然后每一步操作(呼出菜单,移动光标,全选之类的)也都要这么久,删都删不掉……
之前写的一篇文档-------------------------------------------------问题0Android是不是用久了会变卡?答是问题1为什么答原因有以下几个:1、安迪-比尔定律 简单来说,用户所使用的Android设备的硬件性能并没有随着应用和Android系统版本的更新而提升。当需要更高性能的系统和应用出现时,用户还在使用老一代甚至老几代的设备时,呵呵,卡吧。 此现象存在于所有的操作系统中,比如总拿来与Android对比的iOS系统,多用一下一个运行着iOS7的iPhone4,你会懂的。 相关参考:2、一种长得很像磁盘碎片的东西 用久了才会卡?器件老化导致的硬件原因?其实勉强可以算是硬件原因,但是却不全是老化的原因。移动设备的存储一般都是闪存,用久了仍然会产生一些像磁盘碎片的东西。大致原理类似于SSD,如下:当我们在操作系统中删除一个文件时,系统并没有真正删掉这个文件的数据,它只是把这些数据占用的地址标记为‘空’,即可以覆盖使用。但这只是在文件系统层面的操作,硬盘本身并不知道那些地址的数据已经‘无效’,除非系统通知它要在这些地址写入新的数据。
在HDD上本无任何问题,因为HDD允许覆盖写入,但到SSD上问题就来了,我们都已知道闪存不允许覆盖,只能先擦除再写入,要得到‘空闲’的闪存空间来进行写入,SSD就必须进行GC(垃圾回收)操作。在没有Trim的情况下,SSD无法事先知道那些被‘删除’的数据页已经是‘无效’的,必须到系统要求在相同的地方写入数据时才知道那些数据可以被擦除,这样就无法在最适当的时机做出最好的优化,既影响GC的效率(间接影响性能),又影响SSD的寿命。相关参考:3、群雄割据,你争我夺 在利益面前,节操是什么?后台应用明目张胆的偷跑,各种开机自起后台自起闹事。看到吐槽的诸位,相信大家对这一点导致卡顿和运行迟缓都有切身体会了,不再赘述。
主要自己得会用,别装什么乱七八糟的东西,下个绿色守护之类的。
苹果也卡呀!这是安卓和苹果都有的问题,甚至是所有操作系统都面临的问题,只是卡的严重程度不同罢了。原因好几条,最直接的一条是各种文件的增多造成。至于你所谓的“怎么刷机都不会跟最开始一样流畅了”,我只能说,可能你刷的就是个破系统吧,因为这种事情我简直是闻所未闻过!
因为大部分软件升级后会占用更多的资源~而且android对权限的控制比较小,写的很渣嗯软件比较多,搞得系统很卡~系统本身很牛逼,上边跑的app太渣
拖累了系统
亲儿子上了 6.0.1 ,app 都来自 play 商店,也没装国产 bat 全家桶,还是迷之卡顿。
销售价格和市场定位,决定了你的手机在你从商店里买了后的待遇。对于500的安卓机,卖出去就不管了,这东西还有可能是外包出去做的,体验是个什么gui;对于定位自家旗舰,国外的的安卓机和国内的2K+的安卓机,投入了最大的资源,卖出去了还得支持两年系统更新维护,不说用户怎么使用,至少在企业那边就已经不同了,良心好好的,可能会三年,问问骚尼用户,亲儿子更别说了。定位低端的安卓机用起来那么溜,还把正儿八经的安卓旗舰放不放在眼里了,亲儿子+某大厂旗舰用户。
不会,我自己用过的3台安卓机都不会,只要平时管好后台,基本不会卡顿,刷了新rom更是流畅如飞。
作为果黑我也不得不承认,安卓会不时卡顿,不过我相信,下一个安卓版本一定会比ios快,就像wp粉相信win10会崛起一样
已有帐号?
无法登录?
社交帐号登录为什么安卓手机不能完全禁止应用程序后台运行?
38回复/2亮 1887浏览
引用20楼 @ 发表的:软件会自动后台,就像流氓软件一样。不能完全禁止。是吗,可是我用的时候没有软件能自动跳出来
北冥有鱼,其名为咸,咸之大,够全步行街吃好几年
安卓它妈linux的机制就这样,把常用的程序自动加载在后台方便快速启动。win系统后来也有SuperFetch技术与它类似,安卓继承了这一点。
从技术上这一点是好的,然而这个技术被滥用了,程序利用系统对程序权限的开放给自己添加了各种唤醒途径,比如度娘全家桶,运行一个百度的程序再去看后台缓存,度娘全家桶都在那呆着了。发自手机虎扑
他朝两忘烟水里
引用21楼 @ 发表的:是吗,可是我用的时候没有软件能自动跳出来你没有仔细查看。
北风吹,秋风凉,谁家娇妻守空房,你有困难我帮忙,我住隔壁我姓王。
引用22楼 @ 发表的:安卓它妈linux的机制就这样,把常用的程序自动加载在后台方便快速启动。win系统后来也有SuperFetch技术与它类似,安卓继承了这一点。
从技术上这一点是好的,然而这个技术被滥用了,程序利用系统对程序权限的开放给自己添加了各种唤醒途径,比如度娘全家桶,运行一个百度的程序再去看后台缓存,度娘全家桶都在那呆着了。是的,太TM坑了。结果就是越来越卡。
北风吹,秋风凉,谁家娇妻守空房,你有困难我帮忙,我住隔壁我姓王。
引用17楼 @ 发表的:二手价格差不多,为什么不能比你比手机都是这么比的???
引用25楼 @ 发表的:你比手机都是这么比的???当然要不然2000快的合6000快的比?
引用10楼 @ 发表的:苹果刚开始6000快,我这个可是599的手机我家电脑6年前攒的8000几乎常规范围内的顶配,那现在玩gta5为什么除了硬盘啥都不达标,底配都死机完全没法打开,而现在一台3000的笔记本都能中档画质玩的飞起?
引用3楼 @ 发表的:流畅是流畅,但是跟苹果比还是差了点,只是现在安卓不影响操作了,记得之前买的安卓手机,打开愤怒的小鸟得1分钟。。进入游戏和cpu还有闪存也有关系 苹果cpu不堆核心 但是面积也不小 性能也是顶级的
引用3楼 @ 发表的:流畅是流畅,但是跟苹果比还是差了点,只是现在安卓不影响操作了,记得之前买的安卓手机,打开愤怒的小鸟得1分钟。。这是3年前的安卓还不是旗舰吧
引用22楼 @ 发表的:安卓它妈linux的机制就这样,把常用的程序自动加载在后台方便快速启动。win系统后来也有SuperFetch技术与它类似,安卓继承了这一点。
从技术上这一点是好的,然而这个技术被滥用了,程序利用系统对程序权限的开放给自己添加了各种唤醒途径,比如度娘全家桶,运行一个百度的程序再去看后台缓存,度娘全家桶都在那呆着了。所以这种流氓软件无法在Google Play上架
引用29楼 @ 发表的:这是3年前的安卓还不是旗舰吧打开愤怒的小鸟一分钟的那个?
10年的安卓机528mhz赫兹。
楼主还在用安卓2.3??
引用25楼 @ 发表的:你比手机都是这么比的???手机不是按照价位来比的么?
引用4楼 @ 发表的:说的好像苹果不会卡一样,同学的iphone4s还不如我的魅蓝3流畅你拿一个2011年发布的手机跟2016年发布的手机比,也是很看得起苹果了
虎扑~最科比的篮球世界!
苹果的系统也可以后台运行了
引用3楼 @ 发表的:流畅是流畅,但是跟苹果比还是差了点,只是现在安卓不影响操作了,记得之前买的安卓手机,打开愤怒的小鸟得1分钟。。以前的安卓低配高价…现在千元机配置基本够用了…加上安卓一直在优化
引用34楼 @ 发表的:你拿一个2011年发布的手机跟2016年发布的手机比,也是很看得起苹果了那我总不能拿5000快的手机合几百块的比吧
引用33楼 @ 发表的:手机不是按照价位来比的么?那也不能拿一个五年前的手机跟今年的比吧
您需要登录后才可以回复,请
& 允许多选
26人参加识货团购308.00元7人参加识货团购249.00元10人参加识货团购778.00元10人参加识货团购418.00元3人参加识货团购259.00元28人参加识货团购168.00元15人参加识货团购499.00元8人参加识货团购538.00元10人参加识货团购169.00元12人参加识货团购169.00元31人参加识货团购399.00元4人参加识货团购369.00元&&文章正文
安卓手机为什么越用越卡 处理器高也不好使
  有没有感觉你用的Android手机很卡?貌似手机配置都已经挺不错的了,四核、八核、&2GB RAM这样的配置居然还会发生动画掉帧、点击某个按钮或图标出现停顿一会儿之类的情况?高通、MTK、英伟达之类的芯片制造商不是整天宣称什么制程、架构 如何先进,什么一秒钟多少万多少亿次浮点运算,怎么还整天被iPhone用户嘲笑很卡很不爽?
  关于Android系统存在卡顿和不流畅的问题,似乎是个千古谜案&&即便到现在也还有很多Android用户坚持说他们新买的旗舰已如丝般柔滑, 却真正在流畅的细微处比iOS差了一截。不过从古到今,试图解释Android卡顿的观点就有千百种,据说即便是采访Android内部开发工程师,他们 也说这是个说不清道不明的问题。这次我们就从相关Android卡顿的几个主流说法谈起,尝试从相对浅显的角度来理解这一问题。
  都是Dalvik VM虚拟机惹的祸?
  按照普通人对虚拟机的理解,就是平常一直在用Windows操作系统,想装个Mac OS玩玩又没钱买苹果电脑咋办?&&装个虚拟机。从这个角度来理解,不管是出于玩机还是开发、或考虑兼容性的问题,用过虚拟机的同学就知道,这东西的效率 和原生安装方式不在一个层面,不管是从驱动、资源利用等各角度来看都是如此。
  Android的系统框架上,在最底层的Linux内核之上就跑了个虚拟机,在Android 4.4之前,这个虚拟机叫Dalvik VM。绝大部分Android应用就运转在Dalvik VM虚拟机之上&&很多人,甚至是程序员认为,Android系统之所以不流畅和卡顿,罪魁祸首就是此虚拟机,想想我们平常应用层面虚拟机的运行效率就知 道了,再牛逼的硬件也抵不住软件这么坑啊。
  早年的Android系统能有如此奇葩的框架和执行思路并不是因为Andy Rubin真的很二。Android选择这条路的原因是看中互联网上浩瀚的Java资源&&Java应用可以运行在Android这种Linux内核的系 统上正是拜虚拟机所赐,对于一个当时的新生系统而言,想要尽早构建起应用生态,这是个捷径&&也是Android现在拥有这么多应用资源的关键所在(虽然 苹果就没这么做)。
  不过另有一个帮派的程序员表示,这个层面的虚拟机和我们平常自己在电脑上装的虚拟机根本不是一回事,它的执行效率并没有人们想象的不堪,实际使用中和直接调用底层基础函数也没差多少。
  我们从谷歌后来的行动看到,情况好像没有这么简单。早在Android 2.3时期,谷歌就意识到Dalvik并非长久之计,就为Android引入了NDK&&这是个真正的开发包,使用C/C++语言也可以为Android 开发应用,以这种方式开发的应用不会跑在虚拟机上。彼时的程序员认为,这是Android从应用层真正开始具备与iOS相抗衡实力的开始,但这种梦想很快 就被打破,一方面是让开发者放弃Java全面转向C/C++并不现实,而且后两者开发难度甚高,涉及内存操作甚至与设备驱动程序对话,对于Android 这种机器种类繁多的系统而言,开发者采用NDK很不现实(类似《极品飞车》这种大型3D游戏运行代码理应采用C++,所以这类游戏针对Android手机 的不同处理器甚至还有不同的版本)。
  所以在Android 4.4时期,谷歌为之引入了一种新的ART虚拟机,用以替代Dalvik。ART的特点是相比Dalvik更为高效:Dalvik虚拟机在每次运行应用时 会将之编译为二进制机器代码,ART的改进之一就在于在应用安装的时候就将二进制代码编译完成(所以每个应用安装所占空间会更大),这叫预编译模式,而不 是等到每次运行应用才编译。
  理论上听来,ART似乎的确较Dalvik效率更高些,谷歌自己说ART对比Dalvik速度平均提升幅度达到80%,不过各位已经在用 Android 4.4甚至5.0的小伙伴有这种体会吗?或许今后随着Android生态以及系统自身的完善,ART可以表现出更大的优势,起码现在我们没怎么看出来它对 系统流畅性体验改善有多大贡献。
  另外,在系统框架层面,除了探讨虚拟机可能是拖垮Android流畅性的元凶之一这种说法,还有人也会谈到Linux这类宏内核在驱动方面的先天不足,这些或许都是阻碍Android有丝般流畅的要素,但是否还有其他原因呢?
  硬件加速弱爆了
  显示系统图形界面的时候,如果画图的工作都交给CPU完成,这效率是可想而知的,犹如你让一位精通数学的同学画图,多少他倒是能画,只是能不能画好 很成问题。如果GPU,也就是专门的画图工作者能够协助这个过程,情况自是大不相同。虽说系统流畅性是个相当大的话题,但硬件加速是否做得好就成为其中的 重要因素。
  完善如上所述的这个过程,几乎是贯穿Android 2.x早期,到最新的Android 5.1,甚至此后很长一段时间内,谷歌需要努力的方向。针对系统图片、网页等2D图形绘制,Android所用的是谷歌早在2005年就收购的 Skia(那时Android都还没出生,Chrome也采用Skia作为2D图形引擎)。
  Skia原始版本的图形光栅处理完全基于CPU和软件运算,也就是说早期Android的2D图形绘制对GPU的利用率存在严重不足,相较iOS和Windows Phone这种在硬件加速领域有着很久积累的系统完全不是一个水平。
  在Android的系统设置-调试选项中,有个&强制进行GPU渲染&选项,开启这个选项以后会发现某些应用的运行的确更流畅了,但有些则出现了更 糟糕的使用体验。在Android 2.3时代,国外科技博客DorothyBrowse特别强制开启这种Skia GPU加速,尝试进行Webkit渲染(Chrome的渲染引擎)测试,结果发现相较CPU自己画图,所谓的GPU加速居然出现了反效果,可知当时的 Skia GPU加速在Android平台有多么不成熟。
  在Android 3.0之前,这套系统都没有真正行之有效的图形加速方案(即便从初版开始,Android就在努力融合硬件加速),Android 3.0才实现窗口相对完整的硬件加速绘制。实际上,即便是到Android 4.1,谷歌大肆宣传的黄油计划,过渡动画帧率达到60fps,通过预判和缓冲来提升效率,其GPU加速支持也并不完整。谷歌自己的官方文档中就提到,并 不是所有2D图像操作的API都已经支持硬件加速。
  不过总的说来,Android的GPU加速是朝着逐步完善的方向发展的,最新版相较过去已经有了很大程度的提升,从系统级应用和各类操作这些年来流 畅度的明确提升就能感觉得到,即便这种提升在iOS和Windows Phone面前还是显得有些无力。可是来到第三方应用,这个问题又变得非常复杂。
  第三方应用质量很悲剧
  在宣称如&丝般顺滑&、甚至&赶超iOS&的Android 4.1问世以后,不说和iOS比实际如何,其系统级应用倒真的流畅了很多,可是第三方应用死性未改,该怎么卡还是怎么卡。这就是个相当复杂的问题了。
  其一,在Android一步步向前的步伐中,API Level越高,GPU硬件加速也的确愈加完善,比如Android 5.1所用API Level 22。所谓的API Level,标识的是Android平台框架的API版本。这个API可以理解为Android所跑虚拟机针对应用开发而支持的功能,随着版本号的变化, 这些&功能&在发生着升级或转变。对Android的系统应用而言,采用最新的API是理所当然的,流畅性也保持在最佳状态。
  但对第三方应用来说,采用最新的API,就意味着对旧版本系统的抛弃。比如微信应用更新,如果很任性地用上API Level 22,那么最新版的微信将只支持Android 5.1,人类可以忍受吗?所以微信迄今为止还在采用API Level 9,微博则为API Level 14。这种API的迭代,也是苹果为何高度追求系统一致性的重要原因。想想Android系统的碎片化问题,第三方应用要变得更高效,好像是个根本无法完 成的任务。
  这还只是第三方应用开发的一环。其二,Android应用开发者的&随性&让Android应用的效率更加悲惨。比如说谷歌在应用开发的指导原则中提到,如果应用不够流畅,应该看看是否存在&过度渲染(OverDraw)&的问题,就是布局重叠、重复绘制。
  要检查这个问题,有兴趣的同学可以一起来做这个实验。在Android系统设置的开发者选项中,选择&显示GPU过度绘制&,此时整个界面变得花花 绿绿一片。这些色块所表达的是,无色透明状态为最佳,蓝色表示很好,绿色为不错,浅红色表示较差,深红色为过度绘制问题严重。类似Instagram等应 用的情况似乎挺好,而某博和Facebook过度渲染的问题就很严重。这只是Android应用开发中的一个例子,如此这般罔顾开发原则的状况那是数也数 不清的。在Android相对开放的应用世界中,这种情况是不会有警察去抓的,显然iOS全程把关App Store就不会这么悲剧。
  其三,在天朝这样一个奇特的国度,开放的系统无疑为许多应用开发商提供了大好机会。很多应用当安装到你手机中,其行为习惯可能是你完全不知道了,而且可能实情会更令你震惊,这就是下面一个话题了。
  内存居然还不够用?装越多APP手机越卡
  相关Android装越多应用,手机越卡的解释非常多样,甚至包括对于固态存储原理的解释。或许这些都是原因所在,不过更关键的原因是这样 的:Android系统中有个叫做Receiver(接收器?)的东西,负责传递系统接收到的变化,就像是神经系统。比如说按下Power键锁屏,长按关 机,或者长按相机按键启动相机应用,或者插入耳机,都是在Receiver接收到以后通知相应apk,后由程序给出响应。
  应用本身就可以跟系统注册任何形式的Receiver,其较大的用处之一是通知系统启动某个程序。比如YouTube的Receiver在开机时、 系统语言切换后、系统账户改变后这三种情况下自动启动YouTube应用本身&&这是个比较常见的Receiver。而国内的诸多&异士&是如何写 Receiver的呢?
  某些著名视频站APP在下面这些情况下都会启动,包含开机时、网络状况改变时(2G、3G与WiFi间切换)、安装其它App时、卸载其它APP 时、用户唤醒机器时.。。对于用户而言,无论你怎么杀进程清内存,只要这些操作被触发,Receiver就会启动相应程序,话说连个WiFi、下个新应用 都要启动该应用,哪有透明度可言,真是独有社会主义特色。
  此类国产APP相当多见,常见Receiver动作还有:耳机拔出或插入时、文件下载完成后、WiFi扫描SSID完成后,都启动程序,是不是感觉 灰常神奇?它们的宗旨就是永远不会被你杀死,什么一键杀进程,分分钟给你活过来,除非彻底卸载它们,或禁用相应Reciever。在这种情况 下,Android系统对于内存容量的要求自然是非一般的。
  所谓的内存回收机制此刻都已不值一提,何以iPhone 1GB内存流畅运行至今,而Android现如今已是3GB时代;这也是很多Android优化文章告诉用户,如果某应用一周不用就卸载的核心所在,环境使然。你听说过iOS优化让用户卸应用的吗?
  可以说,除了Android本身的顽疾之外,导致上述绝大部分问题的根源就是Android的碎片化,无论是Android自身开放的态度让各种高 配、低配的手机都在使用,还是手机制造商对Android进行的二次开发。要将硬件加速做好、规范第三方应用质量,在Android开放的理念下是几近不 可能完成的任务,且谷歌自己都难以收拾局面。
  Android的开放和碎片化带来的问题还远不止上面这些,一个典型的例子是iOS和Windows Phone都具备了特别出色的信息推送机制,比如说QQ、微信接收消息,在iOS和Windows Phone中,应用本身不需要常驻后台,通过每台手机和推送服务器保持唯一连接,就能收到推送通知,无论对性能和功耗的节省都具备了极大的意义。
  Android系统当然也具备了消息推送的可行性,但由于碎片化问题,以及国内因为某种原因不得不去掉谷歌服务的现状,令Android不同应用采 用五花八门的推送机制。许多Android应用获取消息的方式是轮询(而非推送),即应用主动地与服务器连接并查询是否有新消息,可想而知它对系统和网络 资源的消耗。
  关乎Android系统本身,则除了文首提到的虚拟机机制,还有许多相当微妙的问题形成它与iOS之间的流畅性差异,比如Android对多任务的 支持更类似于桌面系统,本身就只有靠堆砌硬件才能满足这种多任务的需求,当然iOS的多任务也已经不像很多人理解的那样,是多年前的&假后台&了,它针对 第三方应用开放的多任务API正越来越多。
  总之,Android的卡顿和不流畅是个极其复杂、庞大的问题,上面所提的这些也只是挖掘了其中的一部分。就Android系统的发展轨迹来看,从 初代问世至今,其发展史都可以看做是谷歌在系统流畅性问题上所做的一次次努力,流畅性改善甚至是Android前行的一条线索,所以谷歌也才毫不吝啬地一 次次地宣传,我们的系统更流畅了,不管相较竞争对手有多大差距和多少不可控性,现在的Android也已经比过去流畅了很多,虽然未来还有很长的路要走。
热门机型对比
京公网安备 86 京ICP证140355号 京网文【-109号&
&&北京手游达趣科技有限公司 版权所有

我要回帖

更多关于 win10后台程序太多 的文章

 

随机推荐