第8章android动态调试

环境配置

1、 Ubuntu 15.10 系统IP:192.168.153.130

1、 andriod动态调试支持

1)启动andriod虚拟机

2)使用adb命令查看jdwp线程

root@strom-virtual-machine:~# adb shell getprop ro.debuggable

1

这里的“1”表示开启调试功能

2、 代码入注,吐出注册码

1)apktool 解包

root@strom-virtual-machine:~/apktool/app# apktool d -fapp-release.apk

2)查看MainActivity$1.smali代码

3)修改line42代码加入如下:

4)进行重新打包apk

root@strom-virtual-machine:~/apktool/app# apktool b -f app-release

I: Using Apktool 2.0.3

I: Smaling smali folder into classes.dex...

I: Building resources...

I: Building apk file...

5)安装apk包到andriod虚拟机中

root@strom-virtual-machine:~/apktool/app/app-release/dist#

adb install app-release_sign.apk

1603 KB/s (236634 bytes in 0.144s)

pkg: /data/local/tmp/app-release_sign.apk

Success

6)执行安装完的程序

输入用户名“admin”和任意的注册码

7)输入adb命令查看注册码的MD5加密信息

root@strom-virtual-machine:~/apktool/app/app-release/dist# adblogcat -s SN:v

--------- beginning of main

--------- beginning of system

03-18 05:39:08.2972563 2563 V SN : 21232f297a57a5a743894a0e4a801fc3

3、 栈跟踪法

1)apktool 解包

root@strom-virtual-machine:~/apktool/app# apktool d -fstackTrace.apk

2)查看smail文件

3)修改smail文件

4)重新打包

root@strom-virtual-machine:~/apktool/app#apktool b -f stackTrace

5)安装打包签名后的apk程序

root@strom-virtual-machine:~/apktool/app# adb installstackTrace_sign.apk

1341 KB/s (159647 bytes in 0.116s)

pkg: /data/local/tmp/stackTrace_sign.apk

Success

6)查看logcat信息

root@strom-virtual-machine:~#adb logcat -s System.err:V *:W

7)查询smail 方法的onCreate 内容


4、 Method Profiling调试方法

1)开启andriod虚拟机

2)安装apk程序

root@strom-virtual-machine:~/AndroidStudioProjects/methodProfiling/app#adb install app-release.apk

adb server is out of date. killing...

* daemon started successfully *

1463 KB/s (236161 bytes in 0.157s)

pkg: /data/local/tmp/app-release.apk

Success

3)使用MethodProfiling调试

4)运行程序,程序运行完后“stopMethod prifiling”

5)查看trace日志


更多相关文章

  1. 关于Studio和EclipseSHA1值的查看
  2. Android学习笔记(三):Andriod程序框架
  3. android coredump 调试
  4. Android应用程序基础(Application Fundamentals)之二
  5. ANDROID应用程序的混淆打包分享
  6. 动态调试Android笔记
  7. Android培训---创建Android工程
  8. 最小物联网系统设计——使用说明
  9. android编程如何让程序后台运行

随机推荐

  1. Flutter中高级培训
  2. java.net.SocketTimeoutException: Conne
  3. android 多点触摸实例
  4. Android开发实战一之搭建开发环境(最新版
  5. Android 代码设置RelativeLayout元素居中
  6. Android(安卓)篡改apk文件的可行性分析
  7. android-制作透明按钮
  8. android wearable-Creating a 2D Picker,
  9. 1. android帧动画
  10. Android的水平进度条和圆形进度条实例