Android10如何设置ro.debuggable=1?

说明:仅供学习使用,请勿用于非法用途,若有侵权,请联系博主删除

作者:zhu6201976

目录

一、背景

二、如何解决?

三、操作步骤


一、背景

Android 10 开始的限制:ro.debuggable 是只读属性

从 Android 9(部分设备)和 Android 10 开始,Google 加强了对系统属性的保护:

  • ro.debuggable只读属性 ,保存在只读的 boot.img 中(准确地说,是 boot 的 default.prop 区域或内核命令行)。

  • 不能通过 setpropmprop 或任何用户态工具真正修改这个属性。

二、如何解决?

要真正开启 ro.debuggable,通常需要更深层次的系统修改,例如:

  1. 修改 boot.img 并重新刷写 (Modify and Re-flash boot.img): 这是最常见也是最有效的方法,但需要解锁 Bootloader 并具备一定的 Android 刷机知识。

    • 解锁 Bootloader
    • 获取 Boot Image : 从官方固件中提取 boot.img 文件。
    • 修改 default.prop : 在 boot.img 内部,有一个 default.prop 文件,其中包含 ro.debuggable 属性的定义。你需要解包 boot.img,修改这个文件,将 ro.debuggable=0 改为 ro.debuggable=1
    • 重新打包并刷写 : 将修改后的 boot.img 重新打包,并通过 fastboot 命令刷写到手机上。
    • 注意: 这种方法会使您的设备脱离官方支持,并且可能会影响 OTA 更新。
  2. 使用 Magisk 等工具进行修改 (Using Magisk or Similar Tools) : 某些 root 解决方案(如 Magisk)提供了修改系统属性的方法,有时甚至可以实现对 ro. 属性的"欺骗性"修改,让某些应用或服务认为 ro.debuggable1。你可以尝试安装 Magisk,然后使用其 resetprop 命令来尝试修改 ro.debuggable

    • 安装 Magisk : 这也需要解锁 Bootloader 并刷入修补过的 boot.img
    • 使用 resetprop : 在 Magisk 环境下,可以尝试 resetprop ro.debuggable 1。但同样,对于真正的只读属性,这可能只是在某些层面上生效,并不能改变底层系统行为。

三、操作步骤

此处通过方案二 使用 Magisk 工具进行修改亲测有效

手机型号:Pixel3

系统版本:Android10

操作步骤:

1.安装Magisk GitHub - topjohnwu/Magisk: The Magic Mask for Android

2.进入手机shell 执行以下命令:

resetprop ro.debuggable 1

stop

start

getprop ro.debuggable 发现已成功修改为1

相关推荐
阿巴斯甜11 小时前
Android 报错:Zip file '/Users/lyy/develop/repoAndroidLapp/l-app-android-ble/app/bu
android
Kapaseker11 小时前
实战 Compose 中的 IntrinsicSize
android·kotlin
xq952712 小时前
Andorid Google 登录接入文档
android
黄林晴14 小时前
告别 Modifier 地狱,Compose 样式系统要变天了
android·android jetpack
冬奇Lab1 天前
Android触摸事件分发、手势识别与输入优化实战
android·源码阅读
cipher1 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
城东米粉儿1 天前
Android MediaPlayer 笔记
android
Jony_1 天前
Android 启动优化方案
android
阿巴斯甜1 天前
Android studio 报错:Cause: error=86, Bad CPU type in executable
android
张小潇1 天前
AOSP15 Input专题InputReader源码分析
android