- 首先使用apktool解包:
apktool d wenshuapp.apk
- 修改AndroidManifest.xml,添加
android:debuggable="true"
, 使用AS调试smali需要apk设置调试标识(不然AS会显示错误:Unable to open debugger port (localhost:7800): java.net.SocketException “connection reset”) - 使用apktool打包:
apktool b wenshuapp -o ./weshuapp_debug.apk
,并签名安装到手机。 - 打开android sudio,新建项目,导入smail文件夹:
- 点击run->edit configuration->设置端口为8700
- am启动app,并设置端口转发
adb shell
am start -D -n com.lawyee.wenshuapp/com.lawyee.wenshuapp.ui.MainActivity
查询端口命令:
ps | grep lawyee
设置端口转发:
adb forward tcp:8700 jdwp:25667
7、最后android studio,设置smali断点,点击debug smali,成功断住app,可以尽情调试了。
8、最终还是用hook关键代码做的,最简单的方法,需要hook的代码大家可以分析一下,很明显。