http://blog.csdn.net/andyhuabing/article/details/7095834
=======================================================================================================
其实一句话就搞定了:
谷歌新一代Android 4.0系统拥有全新设计的UI,界面简化,运行速度能力提升。系统内置全新的壁纸,在使用手机上的触摸按钮时会出现发光效果,并且增加了语音输入、人脸识别、照片编辑、流量监测、Android Beam功能。
三个设计准则:取悦用户,简化生活,与众不同,Android4.0在设计中遵循了这样的准则,因此是一个幅度很大的升级。
重点是如下几大亮点:
1 全新设计的UI,拥有一流的新UI ,并且界面简化,运行速度提升
2 运行速度大幅度提升
3 系统对硬件没有要求
4 游戏支持能力提升
=======================================================================================================
它们是怎么完成的,这些靠字面意思是搞不定的,那么就让我们一起来阅读其frameworks代码解读一下吧,大致了解一下吧。
hardware :增加了hwcomposer.h(Hints are set by the HAL and read by SurfaceFlinger);定义增加了audio及camera这块,以前2.3是没有这块的;对gralloc分成gpu及fb单独处理的模块,更清晰了。bionic :标准C代码: 虽然有393个文件发生变更,但主体功能上没有变动。prebuild :工具链与以前的版本基本一致,不过ARM使用的arm-eabi-4.4.3进行了修改,具体点不得而知。(默认情况下,android的编译系统使用prebuild目录下提供的默认编译链,且针对不同目标平台,会提供多个版本的编译链,比如针对mips平台。)build :这涉及到整个android系统的编译规则,差异达到82个文件,没有一个个的比较查看,后面开发编译过程中就会涉及到frameworks :核心框架代码:这一块肯定是涉及到变化最大的点,从全新设计UI这块特性可以看出,差异文件达到3100个文件,并增加了9000个文件左右,这块变动相当大,就应该就是真正升级的核心点了。dalvik虚拟机 :总共有671个文件发生变更,这一块的话我正在看2.3的虚拟机设计代码,后面再单独写出来system :其中core是关于最小化可启动的环境代码,extras是针对底层调试及检查工具的代码,差异文件达到257个libcore :与媒体播放框架代码相关,后面再深入研究一下external :增加了一些开源库代码packages :作为基于SDK的开发者一般看的都是packages/apps目录下的程序实例,其中Setting是最爱;而packages/providers是内部自带的数据库源程序。development :是一些开发的例子/模板对于SDK及NDK与移植无关,所以暂时没有关注它。
----------------├── build----------------├── ndk├── sdk├── prebuilt├── bionic----------------├── frameworks├── dalvik├── system├── libcore├── external----------------├── packages├── development├── cts----------------├── bootable├── hardware├── device├── kernel----------------
整个代码量太大,从原来的2.3版本的1G左右到目前达到1.7G左右代码,这些增加及修改的代码够学习很久了,最好的方式还是边做边看边学吧,自然就熟悉起来了。
是用beyond compare比较工具比较代码的,当然还有比BC3.0作为代码比较更好用的其他工具。