编译 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
相关推荐
Jouzzy6 小时前
【Android安全】Ubuntu 16.04安装GDB和GEF
android·ubuntu·gdb
极客先躯6 小时前
java和kotlin 可以同时运行吗
android·java·开发语言·kotlin·同时运行
Good_tea_h9 小时前
Android中的单例模式
android·单例模式
计算机源码社14 小时前
分享一个基于微信小程序的居家养老服务小程序 养老服务预约安卓app uniapp(源码、调试、LW、开题、PPT)
android·微信小程序·uni-app·毕业设计项目·毕业设计源码·计算机课程设计·计算机毕业设计开题
丶白泽14 小时前
重修设计模式-结构型-门面模式
android
晨春计15 小时前
【git】
android·linux·git
标标大人16 小时前
c语言中的局部跳转以及全局跳转
android·c语言·开发语言
竹林海中敲代码17 小时前
Qt安卓开发连接手机调试(红米K60为例)
android·qt·智能手机
木鬼与槐17 小时前
MySQL高阶1783-大满贯数量
android·数据库·mysql
iofomo17 小时前
【Abyss】Android 平台应用级系统调用拦截框架
android·开发工具·移动端