开发|Android设备adb调试

引言 日常开发经常要对Android设备进行调试,adb是Android自带的调试工具供我们使用。
参考系统及开发软件:

系统 win10
开发软件 androidstudio
1.adb的环境配置 在android开发工具中会附带adb,为了能方便全局使用adb的命令,我们对adb进行全局的环境变量配置。
1.1 复制adb所在文件路径
开发|Android设备adb调试
文章图片


1.2 配置环境变量
1)配置位置:【此电脑】右键 【属性】->【高级系统设置】->【高级】>【环境变量】
开发|Android设备adb调试
文章图片



开发|Android设备adb调试
文章图片


2)新建系统变量
开发|Android设备adb调试
文章图片


3)将【系统变量】添加到【用户变量】Path中
开发|Android设备adb调试
文章图片


4)验证环境配置是否正确
快捷键【Win+R】,在运行中输入cmd,输入命令adb version ,返回以下结果表示配置成功。
开发|Android设备adb调试
文章图片


开发|Android设备adb调试
文章图片




2.开启设备USB调试及USB连接类型
设备版本号 Android.Loliop 5.1
1)启用【开发者模式】
打开【设置】,在设置列表中找到【关于设备】选项,点击【版本号】多次,系统会提示还要按几次进入开发者模式。


然后返回设置列表,会看到新增加的【开发者选项】。
开发|Android设备adb调试
文章图片


开发|Android设备adb调试
文章图片


开发|Android设备adb调试
文章图片


2)开启USB调试
点击【开发者选项】,打开USB调试,系统提示是否允许USB调试,点击确定按钮. 在系统下拉菜单也可以看到USB已连接的提示。
开发|Android设备adb调试
文章图片


开发|Android设备adb调试
文章图片



3)选择USB连接类型(用于对设备中文件的操作)
连接USB线,返回系统桌面,下来菜单上有显示【已作为媒体设备连接】,如果不是这个选项,则点击该条目,设置成媒体设备(MTP)。

开发|Android设备adb调试
文章图片


开发|Android设备adb调试
文章图片


3.验证设备与PC端是否连接正确 双击【此电脑】,在【设备与驱动】栏查看是否有该设备,在cmd中输入adb devices 查看设备号,如果显示设备号则表示设备已连接
开发|Android设备adb调试
文章图片


开发|Android设备adb调试
文章图片


4.root Android设备 及查看android数据库文件(如sqlite的 .db文件) 1)root Android 设备
未root的android设备对于敏感数据有安全保护无法访问其受保护的文件夹,如果我们需要查看数据库文件则必须要对设备进行root。
这里使用Kinggo Root,使用window版root时会在android设备自动安装superUser.apk来对设备进行root管理。

root软件 Kingo ROOT
下载地址 https://www.kingoapp.com/


开发|Android设备adb调试
文章图片

开发|Android设备adb调试
文章图片



2)查看android数据库文件

root设备成功后,在cmd中依次输入以下指令可看到data/data下的文件

参考博客 https://blog.csdn.net/u011835956/article/details/52368829
adb shell su -c "chmod 777 /data"

adb shell su -c "chmod 777 /data/data"
adb shell su -c "chmod 777 /data/data/com.xxx.bookstore(自己的包名)"

adb shell su -c "chmod 777 /data/data/com.xxx.bookstore/databases/"

adb shell su -c "chmod 777 /data/data/com.xxx.bookstore/databases/*"
5.adb占用
参考连接 https://jingyan.baidu.com/article/e75aca857b8560142edac6a0.html
如果在使用命令时出现以下情况很可能是adb端口被占用,造成的原因可能是开发软件如android studio,第三方手机助手如鲁大师,360等也在使用adb。
error:device not found或者adb server is out of date.killing ...ADB server didn't ACK* failed to start daemon *error: unknown host service 解决办法: adb shell su -c "chmod 777 /data"

adb shell su -c "chmod 777 /data/data"

adb shell su -c "chmod 777 /data/data/com.scg.bookstore"

adb shell su -c "chmod 777 /data/data/com.scg.bookstore/databases/"

adb shell su -c "chmod 777 /data/data/com.scg.bookstore/databases/*" 1)关闭所有占用端口的程序,重启adb

在cmd中使用
1.netstat -ano | findstr "5037"找到占用端口的程序的pid 号
2. tasklist | findstr "pid号"通过pid号找到具体的程序
3.taskkill /f /pid号把该pid号的程序杀死或者直接在【任务管理器】中找到pid号对应的程序或者服务,然后【结束任务】。
【开发|Android设备adb调试】4.adb devices查看设备号,如果有则表示问题解决。

    推荐阅读