调试Android APK

301 阅读1分钟

##拆解 app 并修改清单文件和打包

step 1: 下载 apktool

  • brew install apktool

step 2 : 反解apk :

  • apktool d -f -o ./result/ ./com.gaurav.avnc_12.apk

step 3: 修改解包以后的代码

  • 添加android:debuggable=“true”
  • 找到主Activity或者Application,在其中加上Debug.waitForDebugger的smali代码 invoke-static{}, Landroid/os/Debug;->waitForDebugger()V

重打包

  • apktool b ./result

重签名

  • 创建签名文件
    • keytool -genkey -alias watson.keystore -keyalg RSA -validity 40000 -keystore watson.keystore
  • 给 apk 签名
    • jarsigner -verbose -keystore watson.keystore -signedjar signed.apk com.gaurav.avnc_12.apk watson.keystore


启动 app 并开始调试

  • step 1: start
adb shell am start -D -n com.keep.domino.kiukiu/main.org.cocos2dx.lua.GameBase
  • step 2: 查看wps的所有的进程信息
adb shell ps | grep com.keep.domino.kiukiu
  • step 3: 端口映射
adb forward tcp:11005 jdwp:24547

参考