Android Q userdebug模式framework层调试指南

    Android Q userdebug模式framework层调试指南



引言

  随着Android版本的迭代,原来先前的一些调试方法都发生了相应的变化譬如我们常见的framework层的调试,这里我们简单的来说明一下Android Q版本userdebug如何调试framework层!

注意这里的Android版本为Q(10),且模式为userdebug!这点需要注意。




一.快速调试service.jar


1.1 快速调试service.jar方式一

  由于这是实战性的东西,没有啥好过多语言性描述的!直接上步骤:

1.构建好编译环境
2.修改/framewrok/base/service目录下面的相关文件,然后make -j8 service编译模块
3.adb连接上开发终端
4.adb push services.jar  /system/framework/
5.adb push services.jar.prof  /system/framework
6.adb push oat/arm64/services.art  /system/framework/oat/arm64/
7.adb push oat/arm64/services.odex  /system/framework/oat/arm64/
8.adb push oat/arm64/services.vdex  /system/framework/oat/arm64/

1.2 快速调试service.jar方式二

  由于这是实战性的东西,没有啥好过多语言性描述的!直接上步骤:

1.构建好编译环境
2.修改/framewrok/base/service目录下面的相关文件,然后make -j8 service编译模块
3.adb连接上开发终端
4.adb shell " rm /data/dalvik-cache/arm64/system@framework@services.jar@classes.* "
5.adb shell " rm /system/framework/oat/arm64/ -rf    "
6.adb shell " rm /system/framework/arm64/ -rf "
7.adb push services.jar  /system/framework/services.jar
8.adb push services.jar.prof /system/framework/services.jar.prof
9.adb shell sync
10.adb reboot



二.快速调试framework.jar


2.1 快速调试framework.jar方式一

  这也是实战性的东西,没有啥好过多语言性描述的!直接上步骤:

1.构建好编译环境
2.修改framework模块下的相关文件,然后make -j8 framework编译模块
3.adb连接上开发终端
4.​adb push framework.jar  /system/framework/
5.adb push boot-framework.vdex  /system/framework/
6.adb push arm/boot-framework.art  /system/framework/arm/
7.adb push arm/boot-framework.art.rel  /system/framework/arm/
8.adb push arm/boot-framework.oat  /system/framework/arm/
9.adb push arm/boot.art  /system/framework/arm/
10.adb push arm/boot.oat  /system/framework/arm/
11.adb push arm64/boot.art  /system/framework/arm64/
12.adb push arm64/boot.oat  /system/framework/arm64/
13.adb push arm64/boot-framework.art  /system/framework/arm64/
14.adb push arm64/boot-framework.art.rel  /system/framework/arm64/
15.adb push arm64/boot-framework.oat  /system/framework/arm64/

2.2 快速调试framework.jar方式二

  这也是实战性的东西,没有啥好过多语言性描述的!直接上步骤:

1.构建好编译环境
2.修改framework模块下的相关文件,然后make -j8 framework编译模块
3.adb连接上开发终端
4.adb shell " rm /data/dalvik-cache/arm64/ -rf  "
5.adb shell " rm /system/framework/oat/arm64/ -rf    "
6.adb shell " rm /system/framework/arm64/ -rf "
7.adb shell "rm /system/framework/boot-framework.vdex"
8.adb push framework.jar  /system/framework/
9.adb shell sync
10.adb reboot



三.注意点

如果大家有修改frameworks/base/services/java/com/android/server/SystemServer.java文件中的逻辑,一定要把第一步中framework也替换掉否则会因为SystemServer类找不到导致system_server进程启动失败,手机会无限重启!

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值