Android设备adb调试

1 篇文章 0 订阅
1 篇文章 0 订阅

引言

日常开发经常要对Android设备进行调试,adb是Android自带的调试工具供我们使用。

参考系统及开发软件:

系统win10
开发软件androidstudio

1.adb的环境配置

在android开发工具中会附带adb,为了能方便全局使用adb的命令,我们对adb进行全局的环境变量配置。

1.1 复制adb所在文件路径


1.2 配置环境变量

1)配置位置:【此电脑】右键 【属性】->【高级系统设置】->【高级】>【环境变量】




2)新建系统变量


3)将【系统变量】添加到【用户变量】Path中


4)验证环境配置是否正确

快捷键【Win+R】,在运行中输入cmd,输入命令  adb version ,返回以下结果表示配置成功。




2.开启设备USB调试及USB连接类型

设备版本号Android.Loliop 5.1

1)启用【开发者模式】

打开【设置】,在设置列表中找到【关于设备】选项,点击【版本号】多次,系统会提示还要按几次进入开发者模式。

然后返回设置列表,会看到新增加的【开发者选项】。




2)开启USB调试

  点击【开发者选项】,打开USB调试,系统提示是否允许USB调试,点击确定按钮. 在系统下拉菜单也可以看到USB已连接的提示。



3)选择USB连接类型(用于对设备中文件的操作)

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

3.验证设备与PC端是否连接正确

双击【此电脑】,在【设备与驱动】栏查看是否有该设备,在cmd中输入adb devices 查看设备号,如果显示设备号则表示设备已连接



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/



2)查看android数据库文件

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

参考博客

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号对应的程序或者服务,然后【结束任务】。

4.adb devices  查看设备号,如果有则表示问题解决。


  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值