题目1:不能安装手机驱动,

在运转Android程序时候,出现

摘要:

前几日小伙伴问我问题,我给了那2个小命令,或许做android测试的同室可以用得着。

化解措施:安装强大的豌豆荚,经常能都能缓解问题

the connection to adb is down and a severe error has occured


截图命令
adb shell /system/bin/screencap -p /sdcard/screenshot.png

问题2: 

lanuch failded

Android开发调试项目应用到安卓调试桥工具,Android Debug
Bridge(ADB)位于sdk路径platform-tools文件夹,使用Android
Studio或Eclipse工具忽略了adb工具的一对细节,长远了然安卓调试桥指令操作的历程,有助于缓解出现的各个错误,运行adb蒙受的荒谬包罗:

将截图复制到电脑盘中
adb pull /sdcard/screenshot.png E:\download

adb devices 时出现

接下来在命令行输入adb decives,出现:

down解决办法,开发之深远明白安卓调试桥种种不当解决办法。1、命令行输入adb devices或其余命令

 

adb devicesadb server is out of date.  killing…

* daemon not running. starting it now on port 5037 *

ADB server didn’t ACK

* failed to start daemon *

error: cannot connect to daemon

adb server is out of date.  killing…

安装:

ADB server didn’t ACK*

缘由是adb server的端口被霸占。

ADB server didn’t ACK

adb install E:\android-armv7-release.apk

failed to start daemon *error: unknown host service

 解决格局(关闭eclipse):

* failed to start daemon *

 

题材由来:平时是端口5037被并吞

在cmd窗口:

error:

抓日志:

解决办法:关闭占用端口的软件

C:\Users\tsung>adb nodaemon server

cannot bind ‘tcp:5037

C:\Users\tsung>netstat -ano | findstr “5037”

TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING
 4696

TCP    127.0.0.1:5037        127.0.0.1:64830      ESTABLISHED     
4696

澳门金沙国际 ,TCP    127.0.0.1:50250        127.0.0.1:5037       SYN_SEND     4584

TCP    127.0.0.1:64830        127.0.0.1:5037        ESTABLISHED     
4584

……

C:\Users\tsung>tasklist | findstr “4696”

adb.exe         4696 Console                    1     5,812 K

2、命令行输入adb start-server或其余命令

adb logcat -v time > E:\log_201408011000.log

          1:确认端口是还是不是被占用

啊,原来是adb.exe进程占了adb的端口。

adb server version (29) doesn’t match this client (36); killing…

 

    c:\adb nodaemon server
    cannot bind ‘tcp:5037’

C:\Users\tsung>tasklist

3、命令行输入adb start-server

列出脚下的装备:

    2:找元凶

Image Name                    PID Session Name        Session#    Mem
Usage

adb server is out of date. killing… ADB server didn’t ACK  failed to
start

adb devices -l

    C:\netstat -ano | findstr “5037”
     TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING
      1234

========================= ======== ================ 

4、命令行输入adb start-server

 

       C:\Users\lizy>tasklist | findstr 1234″
      PPPAdbServer.exe                      1234 Console            
       1     3,071 K

…                          …                  …      ….

adb server version (31) doesn’t match this client (36); killing…error:
could not install *smartsocket* listener: cannot bind to
127.0.0.1:5037:平日每个套接字地址(协议/网络地址/端口)只同意利用一

强制停止adb进度:

    ok 关闭PPPAdbServer.exe 即可

adb.exe                  4696 Console                    1     
5,812 K

5、命令行输入adb nodaemon server

taskkill /f /im adb.exe

问题三: adb devices 后 List of devices attached 空

…                          …                  …      ….

cannot bind ‘tcp:5037’

 

案由及缓解格局:多半是adb版本不科学,多品尝多少个版本尝试,现在较新本子是
1.0.39

将以此历程kill掉:

6、命令行输入adb nodaemon server


 

C:\Users\tsung>taskkill /f /pid 4696

error: could not install *smartsocket* listener: cannot bind to
127.0.0.1:5037:

CreateProcess failure, error问题化解

成功:已终止PID为4696的进程。

一般说来每个套接字地址(协议/网络地址/端口)只同意利用三回。 (10048)

处理器连上手机未来,报错音讯如下:

即使该命令提醒无权力,可以去windows的“职责管理器”中“进程”那么些窗口,找到那些进程,将它杀掉。

7、命令行输入adb devices

澳门金沙国际 1

再运行adb devices,就可以。

澳门金沙国际 2

C:\Users\Administrator>adb devices
* daemon not running. starting it now on port 5037 *
CreateProcess failure, error 2
* failed to start daemon *
error: cannot connect to daemon

C:\Users\tsung>adb devices

调剂桥常用命令操作

 

List of devices attached

Android Studio控制台或Eclipse控制台打印:Adb connection
Error:远程主机强迫关闭了一个存活的连日。

 

G2W0214A17054261      device

一、先河询问adb命令

原因:

接下来再打开eclipse,就可以了。


adb的端口(5037)被占据了。至于这些5037端口

adb.exe,运行在近期开发者电脑的一个后台进程是一个服务端,管理着client和daemon之间的通讯。检查当前总括机是还是不是布置adb.exe环境变量,打开职务管理器,检查是还是不是有adb.exe进度在进行,借使没有布署adb.exe环境变量,手动配置连串环境变量,步骤:

解决办法如下:

1.配置sdk根路径:D:\Android\EclipseADT\adt-bundle-windows-x86_64-20140702\sdk

率先尝试重启adb服务,adb kill-server
,adb start-server;

澳门金沙国际 3

只要重新利用OK的话,就可以继承;

1.1 配置SDK根路径

 

2.配置plateform-tools路径:%sdk_home%\platform-tools;

假使还留存问题的话,如下检查:

3.配置tools路径:%sdk_home%\tools;

1、执行上边发号施令:adb nodaemon server  会并发  cannot bind ‘tcp:5037’

4.配置种类变量Path路径:%sdk_home%\platform-tools;%android_home%\tools;

澳门金沙国际 4

澳门金沙国际 5

2、输入如下命令,查询什么占用了5037端口;

1.2配置SDK的Path路径

netstat -ano | findstr “5037”

开辟命令行窗口,输入adb version查看版本新闻,输入adb
help查看协助文档,未来TeachCourse就足以由此cmd窗口完毕Android
Studio或Eclipse开发工具管理项目标职分。

 

 启动adb后台进程

3、借使找到的长河是8516,可以查看该PID所对应的进程:

adb start-server

tasklist | findstr “8516”

翻看当前延续装置

 

adb devices

4、通过tasklist可以查阅进程情形:

 卸载指定包名的APP

澳门金沙国际 6

adb uninstall com.sinolv.recycle

 

设置本地apk文件到设备

5、通过   taskkill /f /pid
xxxx 把占用5037端口的进度给Kill掉;

adb install e:\temp\apk\92回收.apk

纵然那么些命令提醒无权力,那么,可以去windows的“义务管理器”中“进度”那一个窗口,找到那些历程,将它杀掉。

打印log新闻,logcat后指定哪个包名的log音信

 

adb logcat com.sinolv.recycle

6、再次运行 netstat -ano | findstr
“5037”

 复制本地文件到装备指定路线,首个地面文件路径,首个设施存放路径

 

adb push e:\temp\apk\92回收.apk /sdcard/92回收.apk

澳门金沙国际 7

复制设备文件到地面指定路线,第四个设施文件路径,首个地方存放路径

 

adb pull /sdcard/92回收.apk e:\temp\apk\92回收.apk

7、再运行adb devices,就从不问题了。
C:\Users\lizy>adb devices
355BBHKCJX9K        device

二、运行adb命令提醒错误分析和缓解

 澳门金沙国际 8

使用Android
Studio或Eclipse工具时,开发工具约等于client,sdk路径platform-tools文件夹下的adb.exe相当于server,默认器或测试手机一定于daemon,当前TeachCourse在cmd输入devices时,提醒adb
server is out of date.  killing…或者其它错误

针对小说起先提到的周转安卓调试桥时,出现的各样错误原因分析和平解决决办法如下:

adb server is out of date.  killing… ADB server didn’t ACK * failed
to start daemon * error:

由来分析:这种情景,很可能当前电脑早已运行了一个adb.exe进度或进程依赖的唯一端口5037被挤占。

解决办法:开拓职责管理器,查看adb.exe是或不是已运行,或者cmd窗口输入netstat
-ano|findstr
5037下令查看包蕴5037字符的TCP网络连接。因为位置电脑可能有多个adb.exe能够进行文书,选中运行的经过鼠标右键“打开文件地方”,打开进度本地路径。比如:安装Genymotion模拟器存在一个默许的sdk路径,Android
Studio或Eclipse开发工具使用另一个sdk路径,两者不共用同一个adb.exe调试桥工具。

澳门金沙国际 9

1.3 查询占用5037的PID

 adb server version (29) doesn’t match this client (36); killing…

缘由剖析:职责管理运作的是Android
Studio或Eclipse配置sdk路径下的adb.exe进度,在cmd窗口使用的另一个adb.exe进度执行命令操作。

解决办法:cmd窗口进入Android
Studio或Eclipse工具看重的sdk路径的plateform-tools文件夹,在履行adb命令

adb server is out of date. killing… ADB server didn’t ACK  failed to
start

案由分析:adb不能够对接到到的一声令下正确回答,可能的原故adb后台进度监听不到Client发送的命令,adb.exe进度启动失利。

解决办法:cmd窗口输入tasklist|findstr
adb,检查当前运行adb.exe进度情状,发现存在三个adb.exe,cmd窗口输入taskkill
/f /im
adb.exe甘休对应的历程,最后再一次起动调试桥进程。(关于cmd窗口指令tasklist详细表明,前面会介绍)

adb server version (31) doesn’t match this client (36); killing…error:
could not install *smartsocket* listener: cannot bind to
127.0.0.1:5037

案由剖析:有三个版本的adb.exe应用程序,职分管理器运行C盘的adb.exe,同时切换来E盘的adb.exe路径,执行adb
start操作,提醒版本差异

解决办法:cmd窗口输入taskkill /f /im
adb.exe强行终止C盘运行的adb进度,然后切换来E盘adb.exe路径,重新开动。(adb.exe进度要求绑定当地电脑的绝无仅有端口5037,5037端口被占据,绑定战败)

 cannot bind ‘tcp:5037’

由来分析:唯一的端口5037被占据,绑定败北

解决办法:cmd窗口输入netstat -ano|findstr
5037,刷选当前TCP网络连接包罗5037的历程,获取对pid,然后经过pid查询应用程序名称,cmd窗口输入tasklist|findstr
pid,发现360MobileLoader.exe占用唯一端口,测试发现taskkill /f /im
360MobileLoader.exe无法强行终止上述进程,解决办法插拔一入手机数据线,自动终止360MobileLoader.exe进度。借使手机安装了QQ,同时数据线连接电脑前在PC端登录QQ软件,电脑版的QQ软件的tadb.exe进度同样会占有5037端口,tadb.exe看得出来属于adb.exe的一个复制品。(关于netstat和findstr命令行指令在前面详细介绍)

澳门金沙国际 10

1.4 占用5037进程

error: could not install *smartsocket* listener: cannot bind to
127.0.0.1:5037:平日每个套接字地址(协议/网络地址/端口)只同意拔取四遍。
(10048)

缘由剖析:adb.exe进度已经不以为奇运行,重新履行上述指令,提示绑定战败,套接字地址只同意利用五回

解决办法:解除被采取的套接字地址即为止运行的adb.exe进程,然后cmd窗口进入想要启动的adb.exe目录,,最终输入adb
nodaemon server指令重新绑定。

Android Studio控制台或Eclipse控制台打印:Adb connection
Error:远程主机强迫关闭了一个存世的连年

缘由剖析:运行的adb.exe进度被意外停止,已经确立连接的模拟器或测试手机强行关闭

解决办法:在前头运行adb指令的1/2/3/4点中,错误打印killing那几个词,可能因为运行C盘的adb.exe进度要求收尾已运转的E盘的adb.exe进度,本地电脑固然有几个adb.exe,都会在运转另一个经过前甘休另一个,造成Android
Studio或Eclipse现有的接连被那多少个关闭。

总括:运行另一个adb进度会先截至已运行的经过,出现killing错误提醒,一个adb进度依赖唯一的5037端口号,已运行的adb占用127.0.0.1:5037,提醒套接字只允许行使一遍错误。测试手机通过数据线连接当前电脑,一些第三方的手机软件自动运行,优先占用5037端口号,造成adb.exe无法正常使用。以往的做法,重新插拔数据线或者重启电脑苏醒正常,读完TeachCourse的那篇小说,只须求多少个指令即可正常启动adb进度。

三、详细表明多少个常用的cmd指令


首先个TASKLIST:,指令:TASKLIST /?
突显辅助文档,文档描述该工具呈现在地面或远程机器上近期运行的进程列表,通俗地说列出职分管理器运行的经过,斜杠后添加不相同的字符,表示一定的意思,如下图:

TASKLIST帮衬文档

/S    system

指定连接到的长途系统。

/U    [domain\]user

指定相应在哪些用户上下文执行那个命令。

/P    [password]

为提供的用户上下文指定密码。如若不难,则提醒输入。

/M    [module]

列出当下利用所给 exe/dll
名称的所有职务。假设没有点超模块名称,突显所有加载的模块。

/SVC

体现每个进度中主持的劳动。

/V

来得详述义务音信。

/FI    filter

呈现一密密麻麻符合筛选器指定的标准的天职。

/FO    format

点名输出格式。有效值: “TABLE”、”LIST”、”CSV”。

/NH

点名列标题不应该在输出中显得。只对 “TABLE” 和 “CSV” 格式有效。

依照援救文档提供的example了解指令的用法,TeachCourse只计算cmd窗口输入指令两种格式的意思,比如:

科普命令行格式

1.1 省略号…,在命令行中可很多次重复的参数

1.2 中括号[],可采用,可以挑选或不接纳

1.3
大括号{},
选料用竖线|分隔。例如:{even|odd}用户>必须从选拔集合中精选一个

1.4 大写字母,比如APPLICATION_PACKAGE用户输入的参数值

1.5 尖括号,比如 adb uninstall [-k]
用户>必须指定的参数;固然未指定参数,存在默许值,使用默许值代替,不存在默许值执行命令报错

findstr、netstat和tasklist指令一样,输入findstr /?或netstat
/?查算命应辅助文档,结合常见命令行格式简单读懂。netstat显示协议总计和脚下
TCP/IP 网络连接,-ano是指令-a、-n和-o结合;findstr在文件中追寻字符串。

四、相关阅读


问询adb种种吩咐的操作,TeachCourse发现还是能有线调试项目,发送指令录制模拟器或测试手机显示屏,发送指令截图,想要更透彻通晓adb指令,推荐阅读:

Android Debug
Bridge

Android Debug
Bridge之Shell命令

adb shell
pm命令大全

adb shell
am命令大全

adb shell
ls命令大全

相关文章