编译:
(1)初始化编译环境
source build/envsetup.sh
(2)选择项目
lunch 列举所有
X //X为对应项目序号 (编译分支:17.aosp_coral-userdebug)
(3)编译源码
make -j X // X为编译使用线程数量
(4)编译单个模块:
mmm或者mm 如:mmm packages/apps/Settings
2.Android Studio 导入系统源码
(1)初始化编译环境
source build/envsetup.sh
(2)选择项目
lunch 列举所有
X //X为对应项目序号
(3)
make idegen -jX //X为编译使用线程数量
(4)执行生成依赖脚本
sudo development/tools/idegen/idegen.sh //生成依赖关系android.iml 工程配置android.ipr
(5)开启配置文件写入权限
sudo chmod 777 android.iml
sudo chmod 777 android.ipr
(6)修改android.iml 文件
orderEntry标签下仅保留
根据需要将不需要对项目及文件exclude掉
列举部分路径,具体需要根据工作需要调整
使用android studio 选中android.ipr打开即可
Ps:如果出现jdk版本不匹配则:
1.解压jdk-11后在目录 ~/jdk-11下面:
cp -r ~/jdk-11/ /usr/lib/jvm/
gedit ~/.profile (末尾处加 export JAVA_HOME=/usr/lib/jvm/jdk-11)
source ~/.profile
2.生成软连接
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-11/bin/java 300
update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-11/bin/javac 300
3.选择java和javac命令用那个版本。如只有一个版本,可省略此步
sudo update-alternatives --config javac
sudo update-alternatives --config java
3.系统烧录流程
(1)检测手机USB驱动是否正常
lsusb //能正常找到对应手机驱动
adb reboot bootloader //重启进入 bootloader
(2)检测手机fastboot模式是否正常
fastboot devices
(3)全部烧录
fastboot flashall
(4)部分烧录(根据需要烧录相对应模块)
该部分需要在源码根路径或者相对应对镜像文件所在路径执行
fastboot flash aboot out/target/product/BUILDPROJECTNAME/emmcappsboot.mbnfastbootflashbootout/target/product/BUILD_PROJECT_NAME/emmc_appsboot.mbn
fastboot flash boot out/target/product/BUILDPROJECTNAME/emmcappsboot.mbnfastbootflashbootout/target/product/BUILD_PROJECT_NAME/boot.img
fastboot flash system out/target/product/BUILDPROJECTNAME/system.imgfastbootflashuserdataout/target/product/BUILD_PROJECT_NAME/system.img
fastboot flash userdata out/target/product/BUILDPROJECTNAME/system.imgfastbootflashuserdataout/target/product/BUILD_PROJECT_NAME/userdata.img
fastboot flash persist out/target/product/BUILDPROJECTNAME/persist.imgfastbootflashrecoveryout/target/product/BUILD_PROJECT_NAME/persist.img
fastboot flash recovery out/target/product/BUILDPROJECTNAME/persist.imgfastbootflashrecoveryout/target/product/BUILD_PROJECT_NAME/recovery.img
4.Settings源码整理
packages/apps/SettingsIntelligence (智能化)
packages/apps/Settings
frameworks/base/packages/SettingsLib(基础库)
frameworks/base/packages/SettingsProvider
5.编译结果:
路径:out\target\product\coral\system_ext\priv-app\Settings\Settings.apk
应用编译结果基本都在img同级目录vendor , product , system , system_ext , system_other下面找就行。
242

被折叠的 条评论
为什么被折叠?



