在你的android 目录下:
sudo git clone https://android.googlesource.com/platform/manifest
cd manifest
git branch -a
默认取得的是master了。
用
repo init -u https://android.googlesource.com/platform/manifest -b
android-2.3.5_r1
就取到了 android-2.3.5_r1 版本
原则:只要有Android.mk的文件夹就可以用mmm或者mm来编译
具体的编译用framework.jar来说明:
1.首先需要设置编译环境
export ARCH=arm
export CROSS_COMPILE=./prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
这两个就不用说了
2. source ./build/evnsetup.sh
设置android编译命令即mmm, mm等
3. choosecombo Device release myproduct eng
这个不能少
4. make clean-framework
删除out中已经生成的framework以及intermedia文件
5. mmm -j4 framework/base
或者
cd framework/base
mm -j4
6. 拷贝新的framework.jar到设备中,然后重启zygote使新的framework.jar生效
mount -w -r -o remount,rw -t ubifs ubi0:system /system
adb push Z:out argetproductmyproductsystemframeworkframework.jar /system/framework/
adb shell stop
adb shell start
其他的模块的编译和应用和这个类似
7. 模块调试完成后如果想生成system.img可以使用下面的命令:
make snod -j4
最终的system.img就在out argetproductmyproduct中
这种方式要比重新编译整个framework要快的多。