Linux系统编译应用

编译:
(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下面找就行。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值