android app两种调试方法
方法一:
1、使用apktool的-d選項(xiàng)反編譯apk文件
?? java ?-jar ?apktool.jar ?d ?-d? target.apk? -o ?output
2、在AndroidManifest的application節(jié)點(diǎn)中添加 android:debuggable="true"
3、在入口點(diǎn)的類的onCreate中添加如下代碼等待調(diào)試
?? invoke-static{}, Landroid/os/Debug;->waitForDebugger()V
4、回編譯apk
?? java ?-jar ?apktool.jar ?b ?-d ?output ?-o ?newTarget.apk
5、對apk進(jìn)行簽名
?? java -jar signapk.jar testkey.x509.pem testkey.pk8 newTarget.apk signed.apk
6、將簽名后的apk安裝到手機(jī)或者模擬器上
?? adb install signed.apk
7、將1中的smali代碼導(dǎo)入到Android Studio中
?? file→open→output目錄→下斷點(diǎn)
8、打開Monitor查找相應(yīng)的進(jìn)程
?? 運(yùn)行→monitor 或者Tools ->Android ->Android Device Monitor
9、配置遠(yuǎn)程調(diào)試選項(xiàng)
?? Run→Editor Configurations→Defaults→Remote,點(diǎn)擊+號(hào)新增一個(gè),Host為localhost,Port為8700
10、打開apk,點(diǎn)擊綠色的小蟲子就可以開始調(diào)試了
?
?
方法二:無需修改原apk文件
1、用 Android killer等工具反編譯apk文件
2、將smali代碼入到Android Studio中,安裝smaliidea插件
File→Settings→Plugins→Install plugin from disk…→Restart
3、配置遠(yuǎn)程調(diào)試選項(xiàng),打開monitor
4、使用adb以debug方式啟動(dòng)apk
?? adb shell am start -D -n package/activitiyname
5、下斷點(diǎn)開始調(diào)試,在watch中添加寄存器
轉(zhuǎn)載于:https://www.cnblogs.com/1chavez/p/5187029.html
總結(jié)
以上是生活随笔為你收集整理的android app两种调试方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IDEA主题设置与eclipse代码风格
- 下一篇: java 文件转换成二进制_java实现