JEB Decompiler中文网站 > 新手入门 > JEB Decompiler如何调试Smali代码 JEB Decompiler断点调试无效怎么办
教程中心分类
JEB Decompiler如何调试Smali代码 JEB Decompiler断点调试无效怎么办
发布时间:2025/10/27 09:41:26

品牌型号:联想拯救者R7000

系统:Windows 10专业版

软件版本:JEB 5.20.0.202411121942

JEB Decompiler是一款安卓逆向分析工具,支持动态调试Smali代码。很多用户可能不知道如何调试Smali代码,或者在调试过程中遇到【断点调试无效】的情况。本文将为大家介绍JEB Decompiler如何调试Smali代码,JEB Decompiler断点调试无效怎么办的相关内容。

一、JEB Decompiler如何调试Smali代码

JEB Decompiler支持以Debug的方式调试Smali代码,下面我就为大家详细介绍调试Smali代码的步骤。

1、准备工作

安装JEB Pro版本,建议安装最新版,还需要配置ADB工具并连接模拟器(如雷电模拟器)或真实安卓设备,确保安卓设备已开启USB调试模式,USB调试模式需要先打开【开发者模式】,不同品牌的设备开启方式不同,例如小米手机需要连续点击MIUI版本即可开启。

USB调试
图1:USB调试

2、修改APK

在导入前,用【AndroidKiller】安卓修改器,修改一下AndroidManifest.xml里可调试权限android:debuggable="true",重新编译后签名APP,把APP导入到JEB中,直接默认配置,点确定。

修改APK
图2:修改APK

3、检验APK

等待进度条完成,JEB就加载好了APP,双击【Manifest】,查看application的【debuggable属性】,正常显示为true,即可开始调试。

查看是否允许调试
图3:查看是否允许调试

4、开始调试

用数据线连接手机和电脑,电脑会弹出【是否允许电脑调试手机】之类的提示,要选择允许。手机打开APP,在JEB中点【绿色瓢虫】图标开始调试。

Debug调试
图4:Debug调试

当出现下面这个弹框时说明已经连接好了,这个时候选择【附上】,如果此处显示为空,说明未成功连接手机或模拟器,或者手机未开启USB调试功能。

连接手机
图5:连接手机

5、断点调试

连接成功后,手机上的操作会被转发到电脑端,并且程序会在断点处停下来,我们可以看到此处的变量值、线程等,从而调试Smali代码。

调试Smali代码
图6:调试Smali代码

二、JEB Decompiler断点调试无效怎么办

我们在调试Smali代码时,可能会遇到断点调试无效的情况,大概率是因为未命中断点,例如断点设置在【if】语句的内部,可能If语句的“条件”不成立,不会执行if语句内的代码,而断点打在if语句内,就会出现【断点调试无效】的情况。

断点位置
图7:断点位置

如果断点调试无效,并且弹出下图窗口,需要检查电脑和手机之间的连接是否正常,我们还可以在CMD中执行命令【adb shell am start -D -n 包名/入口Activity名】,例如【com.goldze.mvvmhabit/.MainActivity】来启动调试APP。

APP未运行
图8:APP未运行

三、总结

以上就是JEB Decompiler如何调试Smali代码,JEB Decompiler断点调试无效怎么办的相关内容。本文为大家介绍了使用真机或者模拟器安装APK并连接到电脑进行Smali代码调试的步骤。如果遇到了断点调试无效的情况,可以参考上文内容排查问题所在,希望本文对你有所帮助。

读者也访问过这里:
135 2431 0251