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

相关推荐
漏刻有时6 小时前
PHP GeoJSON转PNG地图渲染程序开发笔记、源码解读、问题复盘与整改方案
android·笔记·php
-SOLO-7 小时前
解决VMware 显示比例被重置的问题
android
alexhilton7 小时前
探究Android Views、Flutter和Compose如何渲染你的UI
android·kotlin·android jetpack
Bruce_Liuxiaowei8 小时前
轻量级 IOC 管理方案:Streamlit 驱动的恶意IP情报平台
网络·jvm·网络协议·tcp/ip·安全
数字新视界9 小时前
用电安全管理系统解决方案
物联网·安全·电力监控系统·用电安全·大榕树
Lesile10 小时前
Android:Hilt框架入门 · 在ViewUI和ComposeUI下的应用
android·android jetpack
用户4238162290710 小时前
Android 16 WebView 页面顶部挖孔/通知栏不能显示UI问题排查
android
weixin_7275356211 小时前
Loop 已死,Graph 新生:AI 工作流的范式革命
android·人工智能·rxjava
数据知道11 小时前
容器安全入门:Docker 逃逸原理与 5 个经典 CVE
安全·网络安全·docker·容器