1.使用apktool反编译apk
apktool -d d xxx.apk -o xxxx
2.修改AndroidManifest.xml 给application标签添加
android:debuggable="true"
在入口activity的初始化处添加
a=0;// invoke-static {}, Landroid/os/Debug;->waitForDebugger()V
3.重新打包
apktool -d b xxxx
4.打开adt,新建java project
去掉use default location
浏览解包的xxx文件夹,要先删除里面的build 和 dist文件夹
然后finish
找到自己要中断的位置设置断点,也可以放在waitForDebugger()后面的invoke语句上来使程序中断在开始位置
5.手机端运行 xxx.apk 黑屏或者白屏,打开eclipse的ddms,找到要调试程序的端口号,
run菜单 debug configure项,选中刚才创建的项目
设置要调试的项目端口开始debug