adb学习笔记+使用过程中报错及解决方法总结
用adb通过wifi抓取log信息:
1.adb devices-----查看设备是否连接上
2.adb tcpip 5555-----开启无线端口(提示restarting xxx.... 说明开启成功,可以拔掉电脑与设备之间的接线了)
3.adb connect xxx.xxx.xx.xx ------查看手机所连接的wifi网段,connect这个网段即可
用adb 查看设备型号,机型等信息
adb shell getprop | grep product
或者
adb devices -l
(1).输入adb devices时,提示:Unable to start adb server: error: protocol fault (couldn't read status): Connection reset by peer
原因:5037端口被占用了(5037为adb默认端口)
解决方法:找到被占用的端口,然后在任务管理器中kill掉,再次连接。
首先输入使用命令:netstat -aon|findstr "5037" 找到占用5037端口的进程信息。
然后使用:tasklist|findstr "18388"找到进程名称
最后打开任务管理器,通过名称找到进程,然后结束进程,重新连接即可连接成功
(2).报错信息为error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048) could not read ok from ADB Server *could not start server*
解决方法同上
(3).当插入USB设备,使用adb devices却发现不了设备
1.需要在“我的电脑”中检查端口是否被识别
2.以及是否安装过驱动程序
3.检查手机是否开启了开发人员选项
(4).当插入USB设备,设备状态为未认证时
1.查看手机USB连接选项是否是仅充电
2.重新启动adb service(adb kill-service,adb start service)
(5).当使用adb install 安装app时,若提示签名认证失败
1.可以尝试adb install -t xxx.apk
2.或者将手机USB连接选项设置为传输文件模式,直接将apk文件放入手机内部存储空间
(6).在linux上,配置好Android home之后,adb devices 提示没有此指令
1.sudo apt-get update 再 sudo apt-get install android-tools-adb,安装一下adb工具包(appium-doctor如果报错找不到adb,可以whereis 查找一下位置,然后把所在文件夹复制到Android_home所在的目录里,再source同步一下)
2.不行的话再使用(让64位的ubuntu兼容原本是32位的adb,相应的报错应该是:java.io.IOException: error=2 ) sudo apt-get install -y libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1