最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

Anroid源码入门

IT圈 admin 29浏览 0评论

2024年5月25日发(作者:闪静雅)

Anroid源码入门

因为项目的原因,本文以android-x86-1.6源码为目标讲解。如果是android源码或

者android-x86其它版本的源码,某些模块和本文会有差异,但是整体结构上(目前)是

一致的。

一, 获得Android源码

二, 初始Android源码

Android-x86-1.6(下面以android简称)的源码顶层目录如下:

bionic bootable build dalvik development external frameworks

hardware Makefile packages prebuilt system vendor

Bionic: bionic本意是仿生学的意思。在Android中,bionic目录存放的是基本的

C库的源码。Bionic库是Google为Android开发的c库,作为glibc的替代品,相对于

glibc,bionic有3优势:

License: glibc使用的是LGPL,而bionic使用的BSD

Andoird的源码大多采用了ASL和BSD,至于为什么没有采用GPL,可以参考下面

的文章。

大小: 显然bionic要小,毕竟android是正对嵌入式平台,flash可不像硬盘动辄

几百G。

运行速度: 同样,Arm CPU的运行速度对这种底层的C库提出了更高的要求。

而且作为专门针对android开发的底层库,google可以在bionic中内建某些android

特性的支持。

总的来说,bionic相对于glic更轻量级,更适合android,且没有传染性。

这个目录在我们的开发只能算个路人,一般不会去修改里面的代码,甚至都不需要去

打开他。

Build:

Build目录存放的是build android源码过程中需要用到的各种脚本和工具。

这个目录对我们来说还是比较的重要的,虽然不一定会经常修改里面的代码,但是里

面的Makefile对于弄清楚android的编译流程是很有帮助的。

此目录的结构如下:

t core history libs

target tools

请记住core这个子目录,里面的一大堆Makefile在接下会接触到。不夸张的说,看

2024年5月25日发(作者:闪静雅)

Anroid源码入门

因为项目的原因,本文以android-x86-1.6源码为目标讲解。如果是android源码或

者android-x86其它版本的源码,某些模块和本文会有差异,但是整体结构上(目前)是

一致的。

一, 获得Android源码

二, 初始Android源码

Android-x86-1.6(下面以android简称)的源码顶层目录如下:

bionic bootable build dalvik development external frameworks

hardware Makefile packages prebuilt system vendor

Bionic: bionic本意是仿生学的意思。在Android中,bionic目录存放的是基本的

C库的源码。Bionic库是Google为Android开发的c库,作为glibc的替代品,相对于

glibc,bionic有3优势:

License: glibc使用的是LGPL,而bionic使用的BSD

Andoird的源码大多采用了ASL和BSD,至于为什么没有采用GPL,可以参考下面

的文章。

大小: 显然bionic要小,毕竟android是正对嵌入式平台,flash可不像硬盘动辄

几百G。

运行速度: 同样,Arm CPU的运行速度对这种底层的C库提出了更高的要求。

而且作为专门针对android开发的底层库,google可以在bionic中内建某些android

特性的支持。

总的来说,bionic相对于glic更轻量级,更适合android,且没有传染性。

这个目录在我们的开发只能算个路人,一般不会去修改里面的代码,甚至都不需要去

打开他。

Build:

Build目录存放的是build android源码过程中需要用到的各种脚本和工具。

这个目录对我们来说还是比较的重要的,虽然不一定会经常修改里面的代码,但是里

面的Makefile对于弄清楚android的编译流程是很有帮助的。

此目录的结构如下:

t core history libs

target tools

请记住core这个子目录,里面的一大堆Makefile在接下会接触到。不夸张的说,看

发布评论

评论列表 (0)

  1. 暂无评论