编译 Android 11源码

参考小米6 lineageos官方编译文档:https://wiki.lineageos.org/devices/sagit/build

单独编译 framework

以LineageOS18.1(Android 11)为例:

1、在源码根目录执行:

bash 复制代码
make framework-minus-apex

2、用生成的framework.jar替换系统的framework.jar

bash 复制代码
adb root
adb remount
adb push framework.jar /system/framework/framework.jar

3、重启zygote

bash 复制代码
adb shell stop
adb shell start

如果卡开机界面不能进入系统,修改下面配置,并编译完整系统刷机,再编译framework.jar单独替换:

1、build/make/core目录下board_config.mk文件

1)WITH_DEXPREOPT := ture 改为 WITH_DEXPREOPT := false

2、build/make/core目录下dex_preopt_config.mk文件

1)WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY ?= ture 改为 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY ?= false

2)注释下面代码:

bash 复制代码
ifeq (,$(filter eng, $(TARGET_BUILD_VARIANT)))
   ifneq (true,$(WITH_DEXPREOPT))
     ifneq (true,$(WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY))
       $(call pretty-error, DEXPREOPT must be enabled for user and userdebug builds)
     endif
   endif
 endif
相关推荐
拭心11 小时前
Google 提供的 Android 端上大模型组件:MediaPipe LLM 介绍
android
带电的小王14 小时前
WhisperKit: Android 端测试 Whisper -- Android手机(Qualcomm GPU)部署音频大模型
android·智能手机·whisper·qualcomm
梦想平凡14 小时前
PHP 微信棋牌开发全解析:高级教程
android·数据库·oracle
元争栈道14 小时前
webview和H5来实现的android短视频(短剧)音视频播放依赖控件
android·音视频
阿甘知识库15 小时前
宝塔面板跨服务器数据同步教程:双机备份零停机
android·运维·服务器·备份·同步·宝塔面板·建站
元争栈道16 小时前
webview+H5来实现的android短视频(短剧)音视频播放依赖控件资源
android·音视频
MuYe16 小时前
Android Hook - 动态加载so库
android
居居飒16 小时前
Android学习(四)-Kotlin编程语言-for循环
android·学习·kotlin
Henry_He19 小时前
桌面列表小部件不能点击的问题分析
android
工程师老罗20 小时前
Android笔试面试题AI答之Android基础(1)
android