[置顶] 第8章android动态调试

第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代码

[置顶] 第8章android动态调试_第1张图片

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

 [置顶] 第8章android动态调试_第2张图片

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.297 2563  2563 V SN      : 21232f297a57a5a743894a0e4a801fc3

 

3、 栈跟踪法

1)     apktool 解包

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

2)     查看smail文件

3)     修改smail文件

[置顶] 第8章android动态调试_第3张图片

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 内容

[置顶] 第8章android动态调试_第4张图片

[置顶] 第8章android动态调试_第5张图片

 

 

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调试

[置顶] 第8章android动态调试_第6张图片

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

5)     查看trace日志


 

 

你可能感兴趣的:([置顶] 第8章android动态调试)