1 概述
安卓调试技巧
2 adb
2.1 logcat
adb logcat
//直接查看日志
adb logcat | grep xxx
//查看并过虑指定日志
logcat能很好地调试出apk启动后崩溃,运行时崩溃等各种问题。
2.2 shell
adb shell
run-as com.hongbeibang.app
cd /data/data/com.hongbeibang.app/
ls
shell能直接远程登录手机上的控制台,在上面做命令行的工作,能很好地调试出安卓数据写入是否正确。能使用run-as来启动com.hongbeibang.app,那么,com.hongbeibang.app包里面必须要先指定debuggable = true,不然会失败。
adb push [local-file] [remote-file]
adb pull [remote-file] [local-file]
push与pull用来同步安卓与PC上的数据文件
adb root
//指定adb以root权限启动
adb shell
su
//shell提权到root用户
手机root以后,adb的权限就放开了,可以在上面安装各种调试工具。
3 反编译工具
有时候我们需要看看gradle的打包脚本有没有问题,经常用来调试ClassNotFoundException的错误。
3.1 unzip
apk文件的本质是个zip包,将apk的后缀更改为zip,然后双击解压就能看到apk里面的数据了。
3.2 dex2jar
➜ comhongbeibangapp ~/Desktop/dex2jar-2.0/d2j-dex2jar.sh classes.dex
dex2jar classes.dex -> ./classes-dex2jar.jar
解压apk后,我们会看到一个class.dex文件,这个是存放所有java源代码的,由于android运行时本质还是个java环境,所以我们可以将dex文件直接转换为jar文件,这时候dex2jar就上场了。
3.3 jd-gui
获取了jar包后,问题就容易了,用jd-gui直接打开jar包就能看到java源代码了,在这里可以看一下gradle生成的代码有没有问题。
- 本文作者: fishedee
- 版权声明: 本博客所有文章均采用 CC BY-NC-SA 3.0 CN 许可协议,转载必须注明出处!