Android 记录一些Framework开发的命令

源码编译流程

  1. "source build/envsetup.sh" (source可以用 . 代替,即". build/envsetup.sh")

  2. "lunch",并选择要编译的项目或者"choosecombo"

  3. "make idegen -j4" (这里的 -j4 表示用4线程来编译,可以不加)

  4. "development/tools/idegen/idegen.sh",并继续等待,这个过程可能比较长

完成以上四个步骤之后,会发现在源码根目录下出现了三个新的文件(也有可能是两个)

  1. android.iml (记录项目所包含的module、依赖关系、SDK版本等等,类似一个XML文件)

  2. android.ipr (工程的具体配置,代码以及依赖的lib等信息,类似于Visual Studio的sln文件)

  3. android.iws (主要包含一些个人的配置信息,也有可能在执行上述操作后没有生成,在打开过一次项目之后就会自动生成了)

在导入项目前,手动对"android.iml"文件进行一下修改,可以使我们导入的时间尽可能的缩短一些。


刷机后第一次需要执行:

adb root

adb disable-verity

adb reboot


SystemUI编译:

make SystemUI


SystemUI安装:

adb root

adb remount

adb push 本地SystemUI.apk地址 /product/priv-app/SystemUI

adb reboot (framework开发基本要开机重启才能起效)


如果编译framework-res.apk

adb push 本地framework-res.apk地址 /system/framework/framework-res.apk

相关推荐
人生游戏牛马NPC1号2 小时前
学习 Flutter (三):玩安卓项目实战 - 上
android·学习·flutter
小馬佩德罗4 小时前
Android系统的问题分析笔记 - Android上的调试方式 debuggerd
android·调试
清霜之辰5 小时前
安卓基于 FirebaseAuth 实现 google 登录
android·google·auth·firebase
GitLqr5 小时前
数码洞察 | Apple VS DMA、三星新品、Android 16KB Page Size
android·ios·samsung
alexhilton5 小时前
SnapshotFlow还是collectAsState?对于Jetpack Compose来说哪个更香?
android·kotlin·android jetpack
Erwooow6 小时前
Android 16k jni修改
android
l软件定制开发工作室6 小时前
基于Android的景点旅游信息系统App
android
张可7 小时前
一个KMP/CMP项目的组织结构和集成方式
android·前端·kotlin
林林要一直努力7 小时前
AOSP Settings模块问题初窥
android·学习·bug·android studio
顾林海7 小时前
Android 性能优化:启动优化全解析
android·java·面试·性能优化·zygote