Android 4.4如何在512MB内存流畅运行?

&">nbsp;       谷歌最近发布的Android 4.4 KitKat系统对低配置设备进行了特别照顾,希望以此来解决长期困扰着Android平台的碎片化问题。那么KitKat是如何做到能够在512MB内存上流畅运行的呢?国外媒体对这个问题进行了解释:

Project Svelte

Jelly Bean的Project Butter给Android带来的流畅的触控体验,而KitKat所引入的Project Svelte也有着相似的目标,不过照顾的是那些真正的低端设备。

那么Project Svelte到底是什么?首先,谷歌从所谓的Google Experience当中分离了Android核心,并让两者都变得更为轻巧。系统本身得到了瘦身,那些不必要的后台服务被剔除,而那些必不可少的功能所消耗的内存也被缩减。此外,大批的谷歌服务,比如YouTube和Chrome,也都得到了相同的对待,性能不减但更加流畅。与此同时,核心系统进程会防止应用占据太多内存。最后,Android现在会逐步启动多项服务,而非同时,这样做能够降低内存需求的峰值,从而提升系统的稳定性。

在优化的上,谷歌并不会独自解决这个复杂的问题,而是在借助厂商和开发者的帮助。为了达成这个目标,谷歌带来了一系列的工具来帮助下一代的设备利用这些优化,比如内存调换,KSM,以及调整Dalvik JIT代码缓存的能力。而其他的一些工具,包括新的API,会帮助开发者增加自己应用的灵活性。根据特定的设备以及内存大小,开发者们可以对应用的功能进行调整,如果内存较低,应用可以选择部分或彻底关闭需求高内存的功能。此外,开发者还能够利用新的procstats和meminfo工具,以及对于RenderScript Compute(GPU加速)更为广泛的支持,这同时也能为KitKat带来性能上的提升。

终结Gingerbread

在突破了10亿用户大关之后,谷歌现在当然要朝着“下一个10亿”进发了。而由于高端手机市场的饱和,谷歌把工作重点放在了一个老问题上:大多数入门级设备无法稳定运行Android 2.3 Gingerbread以上的系统。由于Gingerbread问世已经3年,这个问题对于谷歌、开发者和厂商们来说都很严重。谷歌和开发者想要拓展自己的服务,而后者想要制作出更具竞争性的产品。根据谷歌公布的最新数字,超过26%的Android设备依然还在使用Android 2.3,这是个相当庞大的群体。

当然,谷歌到底能否终结掉Gingerbread目前还是个未知数,但预装KitKat的低端设备可能还需数月才会问世,而现有那些老旧设备则需要数年的时间才会被逐步淘汰——这些设备是不大可能获得KitKat升级的。但谷歌的努力值得赞赏,因为至少有一家业界巨头开始注重低端市场了。

时间: 2024-07-30 13:40:22

Android 4.4如何在512MB内存流畅运行?的相关文章

都是逼出来的!安卓4.4 KitKat 只需 512MB 内存流畅运行毫无压力

class="post_content" itemprop="articleBody"> 安卓4.4 KitKat 号称最少只需 512MB 系统内存即可流畅运行,某种程度上却是也做到了,相比之前的多次空口许诺着实令人惊喜,那么,Google 是如何做到的呢? 说来很有趣.发展至今,安卓系统在功能特性上已经很成熟了,Google 也开始在4.x时代转向其他方面.Jelly Bean 4.1的时候,Google 提出了"黄油工程"(Proje

Android 5.0再曝光 512MB内存足矣

一直以来 都有传言称下一代Android5.0操作系统会在上个月的GoogleI/O 大会上亮相,但遗憾的是就连Android4.3都没有在大会上出现,更别提Android5.0了. 目前最 新的消息显示Android5.0将会在10月底http://www.aliyun.com/zixun/aggregation/18782.html">正式发布,谷歌已经在两个新 彩蛋中暗示了Android5.0的存在.值得一提是10月份正好是摩托罗拉XPhone发布的日子,也许它将会是首款搭载Andr

Android 加载大图片时内存溢出怎么办

  尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图, 因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存. 因此,改用先通过BitmapFactory.decodeStream方法,创建出一个bitmap,再将其设为ImageView的 source, decodeStream最大的秘密在于其直接调用JNI>>nativeDecodeAs

Android Studio 3.0上分析内存泄漏的原因

以前用eclipse的时候,我们采用的是DDMS和MAT,不仅使用步骤复杂繁琐,而且要手动排查内存泄漏的位置,操作起来比较麻烦.后来随着Android studio的潮流,我也抛弃了eclipse加入了AS. Android Studio也开始支持自动进行内存泄漏检查,并且操作起来也比较方便. 封面 戳我下载 Android Studio 3.0 这个不用梯子我会告诉你吗 1.写在前面 Google在上周发布了Android Studio 3.0的正式版本,周四早晨在上班的地铁上就看到群里在沸沸

给android studio 重新分配更大内存的时候出现了无法修改的情况

问题描述 给android studio 重新分配更大内存的时候出现了无法修改的情况 因为重新装了一根内存条,以前给AS分配的运行内存是1G现在想重新分配2G给它,按照网上的教程,是修改studio64.exe.vmoptions文件中的参数就好了,结果最后无法保存文件,显示拒绝访问 解决方案 修改没问题 你这显示的奇怪呀,记事本怎么显示的是 studio64.exe -记事本 少了 .vmoptions studio64.exe.vmoptions -记事本

linux系统可以在512MB内存运行吗?

问题描述 linux系统可以在512MB内存运行吗? 请教linux系统可以在512MB内存运行吗?因为书上说:系统空间占据了虚存空间的最高1G字节,在物理内存是从最低的0地址开始,以0xC0000000做一下偏移,便完成了地址映射.换句话说,物理内存的低1G空间,必须给内核留着.那512MB或1G内存,用户进程岂不没有一点自己的空间?那不就跑不了用户程序了吗? 还有个问题是,反正1G都是自己的,为什么不直接使用物理地址,还要0xC0000000偏移一下? 解决方案 linux系统可以在512M

如何在 windows 7下运行 android?

问题描述 如何在 windows 7下运行 android? 我在 Windows 7 环境下安装了 android sdk.但是当我运行它时,有错误提示说 xcopy 不能作为命令被识别.如何解决这个问题? C:>android.bat 'xcopy' is not recognized as an internal or external command, operable program or batch file. Usage: java [-options] class [args..

【Android开发】如何在tab选项卡标签页添加手势滑动ViewFlipper

问题描述 [Android开发]如何在tab选项卡标签页添加手势滑动ViewFlipper 如何在tab选项卡标签页添加手势滑动ViewFlipper,我在包中的一个main.java中写了添加了A的选项卡代码,在另一个A.java中加载了A的XML界面,然后我想在A中添加手势滑动翻页的功能,我尝试在A.java中添加ViewFlipper,但出现了这种情况部分代码如下:final int FLIP_DISTANCE = 50; ViewFlipper flipper; GestureDetec

压缩-android展示多张大图导致内存溢出问题

问题描述 android展示多张大图导致内存溢出问题 现在在开发一个联系人头像展示功能,每一屏页面大概展示72张图片,已做了异步加载,但是由于图片太大了,依然会导致内存溢出,请问有没有什么好的不会导致图片变模糊并且执行效率比较高的压缩方法,或者请问有没有其他好的解决方法? 解决方案 Android 内存溢出问题android从Uri得到Bitmap内存溢出问题Android使用bitmap导致内存溢出(oom)问题 解决方案二: 你的图片是头像,那么肯定显示的比较小,你在网络读取图片的时候,执行