abd:Andorid debug bridge
开发人员的调试工具与测试人员的测试工具
1、手机与电脑通过USB链接;
2、开放手机root权限步骤,此处以vivo 为例(如何搜索:关键词手机型号加开发者权限):
1)进入设置,搜索关于手机;
2)进入版本信息,找到软件版本号,连续点击7次后就会开启开发者权限(不同手机操作不同,可以进行搜索);
3)进入开发者选项,打开usb调试,然后打开电脑控制台输入adb devices,手机会弹出是否允许这台电脑调试该手机的提示,选择允许即可,这样就连接成功了。
1、adb shell:进入手机的环境
通过此命令进入手机的环境,然后就可以通过linux命令进行相关查询,由于手机也是linux环境下的,所以linux命令也同样适用。最后输入exit就可以退出。
2、adb logcat:查看实时日志
直接在控制台输入adb logcat可以查看实时日志,当我们APP程序出问题时,程序员要错误信息时,我们就可以用这个命令来查看错误日志,由于这样查看日志一直在更新无法找出错误,因此我们可以先在电脑本地储存盘,新建一个log.txt记事本,然后输入命令:
adb logcat > 储存盘:/log.txt
然后操作出问题的程序,这个时候我们就把程序的错误日志写入到我们创建的记事本中了,然后点击CTRL+C退出,最后打开这个记事本就可以查看到这个程序的错误信息。
1、安装流程
程序员发送.apk包给测试,测试把包下载到本地,然后打开控制台,通过命令adb install 储存.apk包位置/.apk包的名称就可以安装这个APP,注意安装的时候需要在手机上允许安装。
如安装储存在d盘的tcw_146187.apk,命令如下:
adb install D:/tcw_146187.apk
2、查找package包
1)获取到package包(adb shell am monitor)
打开控制台输入adb shell am monitor,然后打开手机中你需要获取package包的APP,就可以找到该APP的package包;
2)找到package包(adb shell dumpsys window | findstr mCurrentFocus)
先打开手机中你需要获取package包的APP,然后输入命令:adb shell dumpsys window | findstr mCurrentFocus就可以找到这个APP的package包;
3)找到所有的APP包(pm list package)
先输入adb shell然后再输入命令:pm list package就可以查看所有APP的包,然后就可以找到所需APP的包;
4)找到除了系统应用的第三方应用包(adb shell pm list packages -3)
打开控制台,输入命令:adb shell pm list packages -3,就可以找到除了系统应用的第三方应用包;
3、卸载流程
打开控制台输入adb shell am monitor,然找到该APP的package包;输入adb uninstall # 卸载软件名,即可卸载软件
crash,即崩溃,anr是crash的一种。在程序中可能会出现你未捕获到的异常,这就造成了崩溃。
错误日志关键词:crash、ANR。
造成崩溃的原因:
空指针:nullpointException
数组越界:ArrayIndexoutof boundsException
多次启动线程:illegalThreadstateException
数字格式化问题 :java.lang.NumberFormatException
内存溢出(OOM):java.lang.OutOfMemoryError
adb shell pm list packages # 显示设备里面所有应用的包名
adb shell service list # 显示当前运行的系统服务
adb shell dumpsys activity top # 显示当前最前端的 Activity
adb shell cat /proc/cpuinfo # 显示设备的CPU信息
adb shell cat /proc/meminfo # 显示设备的内存使用情况
adb shell wm size # 查看屏幕分辨率
adb install # 安装软件名
adb uninstall # 卸载软件名
adb shell monkey -v 数字: # 运行进程多次
adb shell ps | findstr monkey # 查看正在运行的进程
adb shell kill PID # 停止正在运行的进程
adb shell ps | findstr 包名 # 查找特定进程
adb shell dumpsys meminfo PID # 获取内存信息