编译Android源代码流程及Linux环境变量设置


本文假定已经获得Android系统源码。

1 首先要学会如何设置android编译环境变量

android的编译源码需要使用root权限,因此用su获取root权限后,在源码的根目录依次执行命令:

source build/envsetup.sh

之后就可以输入

help

查看可以使用的编译命令了,此时可以交互一下,输入

tapas

依次根据需要选择即可

  1. 第一步,选择目标设备:   
  2. Build for the simulator or the device?   
  3.      1. Device   
  4.      2. Simulator   
  5. Which would you like? [1]   
  6. 第二步,选择目标代码格式:   
  7. Build type choices are:   
  8.      1. release   
  9.      2. debug   
  10. Which would you like? [1]   
  11. 第三步,选择产品平台:   
  12. Product choices are:   
  13.      1. emulator   
  14.      2. generic   
  15.      3. sim   
  16. You can also type the name of a product if you know it.   
  17. Which would you like? [generic]  

交互配置过程可以用

choosecombo 1 1 9 3

快捷完成,至此编译环境设置完毕。adb等命令可以使用了。需要注意的是,每次重起机器后,环境变量需要重新设置一遍。

2 修改android源码

找到android源码根目录:packages/apps/   这里面就是所有应用程序相对于系统来说独立的模块,比如AlarmClock文件夹。

可以修改其中的源文件了。

3 编译

mm编译当前文件夹所有内容

mmm编译指定文件夹内所有内容

编译完成后会输出apk到根目录下的:out/target/product/****/system/app

4 push

首先保证是root权限,可以push了。进入croot目录,croot命令返回android源码根目录。

adb push out/target/product/***/system/app /AlarmClock.apk  system/app/

5 运行手机查看结果

相关内容