设为首页收藏本站

移动叔叔

搜索
查看: 921|回复: 0
打印 上一主题 下一主题

[其它] 【小呆福利】知识普及贴:小白必须知道的一些知识

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-1 07:42:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你真的了解Android吗?
谷歌为我们带来了一个不同于iOS的Android新系统,如今,昔日的菜鸟已成一方霸主,使用Android手机的人也越来越多,但是,你真的了解Android吗?
其实从很多方面,Android系统的机制都和其他系统也很大不同,更多的时候,用户是把使用其他系统的经验带到了Android手机上,例如很多人买到Android手机的第一件事就是安装“高级任务管理器”或者“Auto task killer”等杀进程软件...今天,编辑就和大家从最浅显易懂的方式分享下Android的某些与众不同的机制。

1 RAM占用率和软件运行速率并不挂钩

使用过Symbian或Windows Mobile系统的用户普遍都会有一个习惯——频繁关注剩余RAM的多少,恨不得把一份RAM掰成两瓣儿使,且生怕后台有什么应用程序开着耗光手机电量,但Android采用的是不同的内存管理机制:当用户从程序切回主界面时,该程序会被暂停,系统此时不会给它分配CPU资源,这样做一来可以增加下次进入该程序的速度,二来不会在多任务的时候耗电过于严重,三来更不会拖慢系统速度,正所谓一石三鸟。经常使用Android程序的用户可能就有这样的体验,Home键切回主界面再回来的时候,程序还要从主界面再次Loading,这就是该机制所致。


实际上,Android程序对于RAM的消耗很厉害,这是因为Android实际上是基于Java的,每个打开的应用程序都带有一个Java虚拟机,因此相比其他系统会消耗更多的RAM,但这样做有很大好处——单一的程序崩溃并不会影响到系统的稳定性,算是一个有益的Android特性。

我们可以看到,Android平台在保证多任务的同时兼具了兼顾了稳定性和速度,但正是由于其他平台给用户带来的思维定势,让很多Android用户认为后台只要开多了自然会变慢,自然会缩短续航时间,但其实用户大可不必在这方面费脑筋。


2 担心RAM会被系统占满,肿么办?

细心的朋友可能会问,RAM是有限的,如果被程序占满了怎么办?Android系统在这方面的处理同样是自动化的——内存回收机制,这个机制是由Linux内核中的LowMemory Killer完成的。


具体来讲就是,Android系统有一个按重要性从高到低排列的表格,所有应用程序按照重要度高低对号入座(分为FOREGROUD_APP,VISIBLE_APP,SECONDARY_SERVER,HOME_APPHIDDEN_APP,CONTENT_PROVIDER,EMPTY_APP等),位于这个排行榜末尾的程序自然就是Android下手的主要对象。例如六个程序分别属于这六个类型,从高到底排为1,2,3,4,5,6,对应的内存阀值分别为8MB,12MB,20MB,32MB,48MB,60MB(假设),当空闲RAM小于48MB的时候,系统会杀掉5和6;当空闲RAM小于20MB的时候,系统会杀掉3到6的程序,此处笔者简化了此机制,实际上是所有程序类型和内存阀值一一对应,严密执行的。

因此,用户在使用一般应用程序或待机的时候(例如UC浏览器),完全可以把内存管理的工作交由Android系统来完成。当然,在需要开启大型游戏的时候,杀进程还是有用的,更多空余的RAM能够提高游戏启动速度。


3 我的机器跑分10000!

安兔兔这个软件相信Android用户都已经非常熟悉,它能够针对一款Android的硬件从I/O,CPU,3D,2D等方面做出测试,并生成与其他机型和横向柱状图,一时成为很多Android玩家比拼硬件水准的一个标尺。然而笔者在测试过程中发现,类似的软件实际上并不够客观,优化的好坏、固件的版本等因素会很大程度左右测试结果。例如在安兔兔2.9.3版测试中,经过超频和优化的Nexus S的得分甚至能够跑到10082(双核旗舰一般也在5000左右徘徊)。单就安兔兔来说,它对于双核手机的实际性能体现也有些无能为力,因此建议大家客观看待这些跑分结果。

4 是不是双核比单核耗电厉害?


很多人觉得双核CPU会更耗电,其实使用过摩托罗拉Atrix 4G的用户应该最有发言权,使用双核的Atrix 4G由于核心协同工作提高了工作效率,反而更省电,Android手机最费电还是屏幕,尽可能减少屏幕开启时间和调低屏幕亮度,是延长待机时间最有效直接的方式。

关于应用程序自启动,相信很多人都有这个疑问,“我明明关了程序,为什么过一会儿它又自动运行了?”笔者查阅了很多资料,相关资料非常少,但笔者可以确定的是,这些自动启动的服务都是插件必须、同步需要,或后台正在运行的Service对应的应用程序,有些时候后台程序并不是真的启动,而是保持了暂停状态,以便用户最快速进入,这是上面提到的Android系统的一个优点,只要启动的程序没有Service项,它们实际上都只是出于暂停状态,并不会消耗CPU资源或者电力,和这些程序较劲其实是没有任何意义的。

当然,如果真想杜绝它们自启动的话,方法还是有的,第一种是在手机待机的时候关闭网络,这样绝大部分应用程序都不会再自行启动;第二是Root后删除对应的自启动应用程序,从源头上灭掉这些程序,不过这两种方法在笔者看来绝对是弊大于利的。


您需要登录后才可以回帖 登录 | 注册

© 2008-2024 移动叔叔. 版权所有,专业的网络售后平台 ( 闽ICP备18006692号-3 )

商务合作点击这里给我发消息|Email:service@mobileuncle.com|手机版|移动叔叔     

GMT+8, 2024-12-2 14:28 , Processed in 0.135046 second(s), 11 queries , Gzip On, Memcache On.

返回顶部