android 6.0系统编译,[求助]在Android6.0的系统重新编译framework替换不生效

尝试一:

1.export export WITH_DEXPREOPT=false

2.修改framework后,使用mm在"framework/base"下编译该模块

3.在out/target/product/xxx/system/framework/下生成了framework.jar

4.adb remount

5.adb push framework.jar /system/framework

6.adb shell stop;start

第一种尝试发现自己在framework中添加的代码并未生效,后来发现在android6.0以上真正生效的时framework/arm/*下的.oat .art 文件,于是尝试第二种方案

尝试二:

1.export export WITH_DEXPREOPT=true

2.修改framework后,使用mm在"framework/base"下编译该模块

3.在out/target/product/xxx/system/framework/arm/下都生成了boot.oat和boot.art

4.adb remount

5.将生成的文件替换系统中的文件adb push framework /system/framework/arm

6.adb shell stop;start

第二种尝试下手机卡在Android界面,当时以为代码写的有问题,于是使用干净的源码编译了与原始系统的boot.oat boot.art文件相同,然后push后还是卡在android启动时的界面,将备份的原生系统的boot.oat,boot.art push 进去则正常启动。

想问一下Android在启动加载framework时有类似验证文件完整性的机制吗?

替换framework一定要重新编译system.img吗?

最后于 2020-12-1 13:39

被Craft_A编辑

,原因:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值