# 修改系统
ro.debuggable
值# ①. 首先尝试直接修改系统的
ro.debuggable
,原因很简单,修改系统的值,就不用针对单个app
设置了,下面列出几种方法# 方法一:注入
init
进程,修改内存中ro.debuggable
的值,这个也是之前惯常的做法,通过大佬写的mprop
工具可以修改内存中所有的属性值,只需要按照操作步骤,cmd
敲七八行即可,还有人出了一键式的bat
脚本。下载工具mprop
: https://github.com/wpvsyou/mpropadb push mprop /data/local/tmp # 将下载的 mprop 放入 /data/local/tmp 当中
adb shell
su
cd /data/local/tmp/
chmod 777 mprop # 添加可执行权限
./mprop ro.debuggable 1 # 修改 ro.debuggable 的值为 1
getprop ro.debuggable # 查看 ro.debuggable 的值,此时应该返回 1
adb kill-server # 重启 adb 进程
此方法因为是修改内存中的值,所以重启会失效。
# 方法二:大佬的一键式脚本 (只支持 windows),下载链接:https://bbs.pediy.com/thread-223294.htm, 直接命令行执行
run.bat
,出现以下界面就ok
了此方法因为是修改内存中的值,所以重启会失效。
# 方法三:
magisk
提供的修改指令,现在大部分手机的root
应该都会使用magisk
实现,代码也不多,挺方便。adb shell #adb 进入命令行模式
su #切换至超级用户
magisk resetprop ro.debuggable 1
stop
start # 一定要通过该方式重启
此方法因为是修改内存中的值,所以重启会失效。
# 方法四:
MagiskHide Props Config
模块修改(永久有效), 要求Magisk
版本在 19 以上,且安装了Busybox
模块。关于busybox
安装可以百度教程MagiskHide Props Config
下载链接:https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf/releases ,不要下载最新版,最新版我没找到ro.debuggable
的设置,大佬可以研究研究,我用的5.4.1
adb push MagiskHidePropsConf-v5.4.1.zip /sdcard/Download # 下载的 zip 推送到手机的下载目录下
打开
magisk
-> 模块 -> 从本地安装 -> 选择推送的zip
包 -> 等待安装完成 -> 重启然后进入
adb shell
设置,su
开启root
权限,输入props
输入菜单中是
Edit MagiskHide props
的序号,版本不同可能目录会不一样,然后进入二级目录,再输入ro.debuggable
的序号,输入两次y
,等待重启即可。Enter your desired option: 3 # 输入 3
MagiskHide Props Config v5.4.1
by Didgeridoohan @ XDA Developers
=====================================
MagiskHide props
Select an option below:
=====================================
Change some of the sensitive props set by MagiskHide.
1 - ro.debuggable
2 - ro.secure
3 - ro.build.type
4 - ro.build.tags
5 - ro.bootmode
6 - ro.boot.mode
a - Change all props
b - Go back to main menu
e - Exit
Pick several options at once by
separating inputs with a comma.
Example: 1,3,4
See the module readme or the
support thread @ XDA for details.
Enter your desired option: 1 # 根据上面菜单输入 1
MagiskHide Props Config v5.4.1
by Didgeridoohan @ XDA Developers
=====================================
ro.debuggable
=====================================
Currently set to 0.
You currently have the safe value set.
Are you sure you want to change it to 1?
Enter y(es), n(o) or e(xit): y # 当前是 0,是否改成 1,输入 yes 或 y
Working. Please wait...
MagiskHide Props Config v5.4.1
by Didgeridoohan @ XDA Developers
=====================================
Reboot - ro.debuggable
=====================================
Reboot for changes to take effect.
Do you want to reboot now (y/n)?
Enter y(es), n(o) or e(xit): y # 是否重启,输入 yes 或 y
Rebooting...
重启后进入
adb shell
, 查看ro.debuggable
推荐此方法,重启依然有效
# 方法五:使用
xposed
插件,buildprop
git
地址:https://github.com/jecelyin/buildprop (只有源码需要自己编译,或者下这个编译好的:度盘链接)需要安装
xposed
框架(或者edxp
,lsp
),安装成功打开插件,按下图设置好且xp
框架中启用即可。使用
xp
框架的可以使用这个插件# 方法六:通过修改
boot.img
,然后重新刷入,比较折腾的一种,感兴趣的可以看原文章:https://bbs.pediy.com/thread-197334.htm不推荐,虽然也可以一劳永逸,但是比较折腾,刷机操作失误还容易变砖
# ②. 修改
app
为可调试 厂商出于安全的考虑,发行版的
App
都会将debuggable
设置为false
, 所以要修改为true
,才可以调试。因为并不推荐这种做法,所以只列一下流程反编译
app
,可以参考之前apktool
的文章:Apktool
的安装及使用打开反编译的
app
,在application
中添加android:debuggable="true"
,然后保存重打包
apk
, 还是利用apktool
生成证书
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -keyalg RSA -validity 10000
# -genkey 意味着执行的是生成数字证书操作,
# -v 表示将生成证书的详细信息打印出来,显示在 dos 窗口中;
# -keystore debug.keystore 表示生成的数字证书的文件名为 “debug.keystore”;
# -alias androiddebugkey 表示证书的别名为 “androiddebugkey”,可以与 Keystore 一样;
# -keyalg RSA 表示生成密钥文件所采用的算法为 RSA;
# -validity 10000 表示该数字证书的有效期为 10000 天,意味着 10000 天之后该证书将失效
删除重打包
apk
的签名文件,文件名为META-INF
apk
重签名,根据刚才的证书jarsigner -verbose -keystore debug.keystore -storepass android -keypass android -signedjar sign.apk temp.apk androiddebugkey
# -verbose 显示出签名详细信息
# -keystore debug.keystore 签名证书文件。
# -storepass 证书口令,生成证书时填的
#-keypass 证书密码,生成证书填的
# -signedjar signed.apk 表示签名后生成的 APK 名称,
# temp.apk 表示未签名的 APK,
# androiddebugkey 表示 debug.keystore 的别名
安装重签名的
sign.apk
,就可以调试了
你想研究
App
的通讯协议和加密字段,这已经足够让人焦头烂额,你可能会遇到繁杂的代码、诡异的反抓包,So
层的加密…… 而如果你对App
进行重打包,那就要面对App
额外的保护措施,比如重打包失败,签名验证等。因为重打包这个操作主要是开发盗版App
和破解版App
做的事,这对厂商来说更加难以忍受,只是修改一个debuggable
字段就要揽上这么多事,显然吃力不讨好。参考文章:
https://bbs.pediy.com/thread-197334.htm
https://www.cnblogs.com/lsgxeva/p/13490827.html
https://blog.csdn.net/jinmie0193/article/details/111355867