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

相关推荐
与籍同行10 分钟前
20200201工作笔记常用命令要整理
android·笔记
tangweiguo0305198714 分钟前
Android屏幕适配利器:Kotlin动态尺寸计算工具类完整封装
android·kotlin
aningxiaoxixi2 小时前
android property 系统
android
speop2 小时前
TASK05【Datawhale 组队学习】系统评估与优化
android·java·学习
SmartSoftHelp开发辅助优化3 小时前
SmartSoftHelp 之 SQL Server 数据库安全备份与安全还原详解---深度优化版:SmartSoftHelp DeepCore XSuite
数据库·安全·oracle
Alfadi联盟 萧瑶4 小时前
安全运营与威胁对抗体系
安全
PrDarcyLuo5 小时前
【IEEE会议推荐】第五届区块链技术与信息安全国际会议
人工智能·安全·网络安全·区块链·信息与通信
androidwork5 小时前
Android 内存溢出(OOM)的 Kotlin 排查与优化指南
android·开发语言·kotlin
xzkyd outpaper5 小时前
Android中PID与UID的区别和联系
android·计算机八股