1、Android原生代码编译环境
Android原生代码编译需要linux环境这里就不在多说,需要自己搭建电脑环境,需要注意的是在下载代码是要注意使用的Android源码和对应的Ubuntu环境的版本需要对应,我现在使用的是Android8.0的MR1版本对应使用的Ubuntu环境是16.04
2、代码的下载过程及编译
(1)ubuntu环境搭建好后需要注意需要一些工具用来下载Android的源代码需要的工具有git、repo等
下载git的命令如下:
sudo apt-get install git 同时需要配置git的环境需要一下命令:git config –global user.email “test@test.com”
git config –global user.name “test”
下载使用repo的命令
mkdir ~/bin
export PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo这里需要注意的是如果这个命令一直下载提示下载时间超时可以自己在浏览器上面进行下载后在将下载的repo文件放到我们创建的bin目录下就可以了,这里要特别注意的是需要修改repo文件的权限和讲bin目录添加到环境变量中。
(2)源码的下载
Android的源码的国内镜像有清华AOSP和中科大镜像,我用的是清华的镜像,当然如果你可以访问国外的网站那么可以直接使用Google的镜像文件,使用国内的网站的镜像需要将repo文件中的REPO_URL这个对应的地址修改为一下的地址,我使用清华的是下面的地址,使用中科的朋友请自己查找对应的URL地址
REPO_URL = 'https://gerrit-googlesource.proxy.ustclug.org/git-repo'
源码下载的命令如下:
初始化repo环境
repo init -u https://aosp.tuna.tsinghua.edu.cn/mirror/manifest --mirror
同步代码
repo sync注意这里同步文件较多时间较长如果你的网络不是很稳定会出现很多的问题,导致源码同步失败。建议使用一下的方法下载代码:
wget -c https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # 下载初始化包 tar xf aosp-latest.tar 解压初始化文件 cd aosp 进入到解压的文件下 repo sync -l 这个方法是将我们下载的内容从repo文件夹中checkout出来,网站上面使用的 命令是repo sync 这个命令我使用的时候总是出错,建议还是在checkout代码后再进行同步代码
(3)代码的编译
源码的编译命令如下
初始化环境
source build/envsetup.sh选择编译的版本
lunch 编译过程参考的是文章的编译内容,其中的编译依赖我全部都进行了安装,一遍完成,就是编译时间太长。
https://www.jianshu.com/p/367f0886e62b
3、源码导入Android studio中
源代码如果你已经编译完成并且环境已经初始化完成那么可以直接使用一下命令进行编译make development/tools/idegendevelopment/tools/idegen/idegen.sh
编译完成后你可以在我们的工程的根目录下面找到如下的文件android.ipr,
打开Android studio在工具栏中file中找到Open...选项找到我们工程下的androidl.ipr文件,进行打开就可以将我们的所有源码导入到Android stduio中,这样方便我们查找对应的代码文件。