准备工具:

apktool

eclipse


调试步骤:

1.对apk使用apktool反编译出可调试的smali代码到testout文件夹

apktoold的-dtest.apk-otestout注意-d参数是生成可调试代码2,在AndroidManifest.xml中,设置application为可调试:android:debuggable="true"3,找到Lancher入口4,在入口类的OnCreate方法中,在第一句前插入invoke-static{},Landroid/os/Debug;->waitForDebugger()V记得添加a=0;以上2-4步也可以用shell命令:amstart-D-n包名/类名进入调试等待5,重新打包,记得仍然用-d参数apktooldb-dtestout-odebug.apk6,重签名7,安装apk,并启动,此时程序触发调试点8,打开eclipse,导入smali工程1)File->New->Project->JavaProject->Next2)ProjectName随便起,Usedefaultlocation选项去掉,Location选择out文件夹,然后Next3)把smali文件夹设为SourceFolder,然后Finish9,下断点10,打开DDMS,查看待调试程序的端口,860011,回到eclipse,配置远程调试1)菜单Run->Debug->DebugConfigurations2)双击RemoteJavaApplication,Host处默认localhost就行,Port填第10步得到的8600,然后Apply->Debug。

更多相关文章

  1. 在vs2012中用C#开发Android应用Xamarin环境搭建
  2. Android调试.so库常用工具
  3. andriod ADT环境安装 could find 盘符:\android_sdk\tools\ad
  4. Android(安卓)通过wifi调试程序
  5. Android(安卓)Studio真机调试方法
  6. 模拟器上调试android launcher---android launcher移植之(三)
  7. Android(安卓)wpa_cli 调试方法(adb shell 命令)
  8. Eclipse中跟踪调试Android源代码
  9. FAQ_11_解决ADT的Logcat罢工问题

随机推荐

  1. android VersionCode 与VersionName
  2. tcpdump android
  3. 设备的search按钮调用自己程序的search模块
  4. [React-Native]Android(安卓)命令打包
  5. Android——Log,Toast提示框,Intent跳转
  6. android竖着的seekbar
  7. Android(安卓)动态生成布局 (多层嵌套)
  8. 用java1.6编译android-froyo
  9. ImageButton一些总结
  10. Android中使用shape