深入浅出 - Android系统移植与平台开发(一) 分类: Android移植2012-09-05 14:16 16173人阅读 评论(12) 收藏 举报 androidgitgooglejdkubuntu   目录(?)[+]   +-------------------------------------------------+ +      本系列为连载,不定期会更新       + +-------------------------------------------------+…
作者:唐老师,华清远见嵌入式学院讲师. 一.Android4.0系统的下载与编译 Android系统的下载与编译,Google的官方网站上已经给出了详细的说明,请参照Android的官方网址: http://source.android.com/source/index.html 内容主要分为:         1. 准备Android下载与编译环境         2. 下载源码         3. 编译源码及内核源码 下面我们依次来说明其步骤及注意事项. 1. 准备Android下载与编译…
一. 修改化定制Android4.0系统 Android系统启动时,先加载Linux内核,在Linux的framebuffer驱动里可以定制开 机界面,Linux内核启动成功后,挂载根文件系统,启动Android系统,这个时候设备屏幕上开始出现滚动的Android动画,等全部的 Android服务启动完毕之后,开始启动Android的HOME界面,也就是桌面. 而在这个过程中,我们可以将开机界面和Android动画全部定制为自己需要的效果. 在整个开机过程中,屏幕上会出现三次内容:       …
作者:唐老师,华清远见嵌入式学院讲师. 1.   编译Android模拟器 在Ubuntu下,我们可以在源码里编译出自己的模拟器及SDK等编译工具,当然这个和在windows里下载的看起来没有什么区别. 编译Android模拟器的步骤和编译Android系统很相似: Ø  build/envsetup.sh Ø  lunch sdk-eng Ø  make sdk 在每次执行make的时候,编译系统会自动的验证上次编译项和这次编译项,如果两次不一样,会删除所有的目标代码,其实现在./build/…
2.3编译Android源码 Android源码体积非常庞大,由Dalvik虚拟机.Linux内核.编译系统.框架代码.Android定制C库.测试套件.系统应用程序等部分组成,在编译Android源码之前,必须要先掌握Android源码的组成. 2.3.1Android源码目录结构 在Android源码中,按照不同功能代码被放在不同的目录下: 目录 描述 bionic 针对Android系统定制的仿生标准C库.链接器等所在目录,Android系统并没有使用Linux的glibc库,bioinc…
第四章.Android编译系统与定制Android平台系统 4.1Android编译系统 Android的源码由几十万个文件构成,这些文件之间有的相互依赖,有的又相互独立,它们按功能或类型又被放到不同目录下,对于这个大的一个工程,Android通过自己的编译系统完成编译过程. 4.1.1 Android编译系统介绍 Android和Linux一样,他们的编译系统都是通过Makefile工具来组织编译源码的.Makefile工具用来解释和执行Makefile文件,在Makefile文件里定义好工程…
作者:唐老师,华清远见嵌入式学院讲师. 编译Android源码 关于android系统的编译,Android的官方网站上也给出了详细的说明.http://source.android.com/source/building.html Ø 初始化编译环境 切换到Android源码目录: [plain] view plaincopyprint? 1.   $ cd WORKING_DIRECTORY 执行下面命令,加载编译过程中用到的命令.环境变量: [plain] view plaincopypr…
首先非常感谢原文作者为我们提供的知识库,因为有你们的贡献,我们的开发难度更显简单 原文 :   http://blog.csdn.net/mr_raptor/article/details/30113417 4.3定制Android平台系统 通常产品厂商在拿到Android源码后会在Android源码基础上进行定制修改,以匹配适应自己的产品,从本节开始,我们从最原始的Android源码系统里一步一步定制出自己的Android系统.本节主要内容包含:根据Android源码,添加新产品编译项,定制系…
作者:唐老师,华清远见嵌入式学院讲师. Android的启动速度一直以来是他的诟病,虽然现在Android设备的硬件速度越来越快,但是随着新 版本的出现,其启动速度一直都比较慢,当然,作为程序员,我们是可以理解的,智能手机本身就要启动很多服务来支持应用的功能,并且Android系统大部 分还是使用的Java语言编写的,必然要运行在Java虚拟机里,这也决定了它运行速度和启动速度都相对较慢.同时,Android系统为了在执行用户应 用程序时提高用户体验,还做了一些预加载机制,这也牺牲了开机启动时间…
作者:唐老师,华清远见嵌入式学院讲师. 1. HAL的module与stub HAL(Hardware AbstractLayer)硬件抽象层是Google开发的Android系统里上层应用对底层硬件操作屏蔽一个软件层次,说白了,就是上层的应用不用关心底层硬件具体如何工作的,只要向上层提供一个统一的接口即可,这种设计思想广泛的存在于当前的软件架构设计里. 严格来讲,Android系统里完全可以没有HAL硬件抽象层,上层应用层可以通过API调用到底层硬件,但是Android自出现开始一直打着开源的…