
adb的全称为Android Debug Bridge 调试桥,是连接Android手机与PC端的桥梁,通过adb可以管理、 *** 作模拟器和设备,如安装软件、系统升级、运行shell命令等。
现在使用adb命令的时候出现错误“'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件。”,如下图所示:
这个问题一般有两种可能:
1就是没有配置环境变量, 这个只需要将android安装:例如D:\Program Files\eclipse-jee-juno-win32-x86_64\eclipse\android-sdk\tools加入到系统变量Path中,需要注意的是Path中会配置的有其他的路径,需要在android的路径前加;然后将上面的路径粘贴上去就OK了。
原来是android22和android 23不一样了 ,android23 adbexe是放在android-sdk\platform-tools目录下面的,而22是放在tools目录下面的,所以需要把path的路径指到platform-tools下面,然后输入adb,能够显示相关的信息。
adb命令行是androidsdk里的一个工具,用这个工具可以直接 *** 作管理android模拟器或者真实的android设备(如G1手机),它的主要功能有:
1、运行设备的shell(命令行)
2、管理模拟器或设备的端口映射
3、计算机和设备之间上传/下载文件
4、将本地apk软件安装至模拟器或android设备
ADB是一个客户端-服务器端程序,其中客户端是你用来 *** 作的电脑,服务器端是android设备。
扩展资料:
常用命令
1 查看设备 adbdevices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示
2 安装软件
adbinstall <apk文件路径>
这个命令将指定的apk文件安装到设备上
3 卸载软件
adbuninstall <软件名>
adbuninstall -k <软件名>
如果加 -k 参数,为卸载软件但是保留配置和缓存文件。
4 登录设备shell
adbshell
adbshell <command命令>
这个命令将登录设备的shell。
后面加<command命令>将是直接运行设备命令,相当于执行远程命令。
5 从电脑上发送文件到设备
adbpush <本地路径> <远程路径>
用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)。
参考资料来源:百度百科—ADB (Android调试桥)
做过安卓开发的朋友或多或少都遇到过让人厌恶的类似于“could not read ok from ADB Server”的错误。产生这个错误的原因可能多种多样,每次遇到问题的时候,可能大部分人都和我一样,去google一下这个问题别人是如何解决的。假设一下子找到解决了,就放过,下次在遇到的时候同样的再去google一下就好了。但是,这样不是正确的治学态度,为此孔祥子决定去扒一扒!
如下,是我在发现Android studio连接不上手机的时候,尝试去启动一个adb server,但是失败了。
<pre>
根据问题提示,5037端口被占用了。下面就来看看到底是哪一个端口被占用。
<pre>
C:\Users\zxy>netstat -ano | findstr "5037"
TCP 127001:5037 0000:0 LISTENING 7912
TCP 127001:5037 127001:50025 ESTABLISHED 7912
TCP 127001:5037 127001:56501 ESTABLISHED 7912
TCP 127001:50025 127001:5037 ESTABLISHED 7120
TCP 127001:56501 127001:5037 ESTABLISHED 1264
</pre>
果然,5037被进程id为7912的进程占用了。顺藤摸瓜,看看到底什么进程捣的鬼,
<pre>
C:\Users\zxy>tasklist | findstr "7912"
romaster_daemonexe 7912 Console 1 3,024 K
</pre>
看到了吗,是这个进程romaster_daemonexe ,好了,到此为止找出来是哪一个程序了,下面打开任务管理器,kill掉就可以了。
Android adb(Android Debug Bridge) 是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备 *** 作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。
该工具作为一个客户端-服务器程序,包括三个组件:
客户端(adb client) ,该组件发送命令。客户端在开发计算机上运行。可以通过发出 adb 命令从命令行终端调用客户端。
这里说的客户端,其实包含很广泛。例如我们在命令行窗口运行一个adb命令,其实就是一个adb客户端。还有,我们在android studio中通过点击运行或者调试按钮,app就安装到手机里面了,这个也可以看做是adb客户端。对应的后台进程名称 根据运行的程序的不同而不同。
后台程序 ,该组件在设备上运行命令。后台程序在每个模拟器或设备实例上作为后台进程运行。
也就说,开发者测试手机或者模拟器上运行的后台进程,负责接收命令,并运行命令。这个名字对应应该是adbd
具体如下
服务端 ,该组件管理客户端和后台程序之间的通信。服务器在开发计算机上作为后台进程运行。
您可以在 android_sdk/platform-tools/ 中找到 adb 工具
这个是在开发者自己的电脑上,运行的旨在管理adb客户端和手机端的后台程序通信的一个管理程序。
具体流程如下
启动一个 adb 客户端时,此客户端首先检查是否有已运行的 adb 服务器进程。如果没有,它将启动服务器进程。当服务器启动时,它与本地 TCP 端口 5037 绑定,并侦听从 adb 客户端发送的命令—所有 adb 客户端均使用端口 5037 与 adb 服务器通信。
然后,服务器设置与所有运行的模拟器/设备实例的连接。它通过扫描 5555 到 5585 之间(模拟器/设备使用的范围)的奇数号端口查找模拟器/设备实例。服务器一旦发现 adb 后台程序,它将设置与该端口的连接。请注意,每个模拟器/设备实例将获取一对按顺序排列的端口 , 这些端口包括用于控制台连接的偶数号端口和用于 adb 连接的奇数号端口。例如:
模拟器 1,控制台:5554
模拟器 1,adb:5555
模拟器 2,控制台:5556
模拟器 2,adb:5557
以此类推
如上所示,在端口 5555 与 adb 连接的模拟器实例与侦听端口 5554 的控制台的实例相同。
注意 ,这里所说的端口都是开发者电脑上的端口。
我的理解,偶数端口用来实际的数据传输。奇数端口用来发送控制命令和连接用的,例如调试。(如果不正确请指出)
当服务器已设置与所有模拟器实例的连接后,您可以使用 adb 命令访问这些实例。由于服务器管理与模拟器/设备实例的连接,并处理来自多个 adb 客户端的命令,因此,您可以从任意客户端(或从某个脚本)控制任意模拟器/设备实例。
解读一下
注意:上图中的标识为**的区域的进程为后台守护进程。
Adb Server运行在开发者电脑上,任何adb client都要等待这个运行起来之后才能做后续的工作。电脑上的android studio或者eclipse等一些adb client和它交互。一旦adb client的命令被发送到手机中,并且被手机中的adbd接收之后,才能和手机交互。
然后在看一张更详细的图
这个图,详细的解释了我运行adb命令中的详细细节。
关于adb的详细命令可以参考: >
Android使用ADB进行调试,有如下两种方法:
方法一:配置环境变量
直接将 adb 文件夹的目录添加到系统环境变量 Path 中, *** 作步骤:我的电脑 -> 属性 -> 高级系统设置 -> 环境变量。
方法二:复制到系统文件目录
将 adb 工具包的四个文件都复制到 C:\Windows\System32 目录里。
这是网上推荐的方式之一,但是我尝试之后发现并不能正常使用,在cmd窗口输入 adb 还报错 “无法启动此程序,因为计算机中丢失 AdbWinApidll。尝试重新安装该程序解决此问题。”
解决方法:这个配置过程跟系统的位数有关,假如系统是32位的,则将四个文件都复制到 C:\Windows\System32 目录里即可。
但是,假如使用的Windows系统是64位的,则需要将其中的 AdbWinApidll 文件复制到 C:\Windows\SysWOW64里,这样就一切正常了。
扩展资料
adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方便通过DDMS来调试Android程序,说白了就是debug工具。
adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自动运行。
adb是android sdk里的一个工具, 用这个工具可以直接 *** 作管理android模拟器或者真实的android设备(如G1手机)它的主要功能有:
1、运行设备的shell(命令行)
2、管理模拟器或设备的端口映射
3、 计算机和设备之间上传/下载文件
4、 将本地apk软件安装至模拟器或android设备
ADB是一个 客户端-服务器端 程序, 其中客户端是你用来 *** 作的电脑, 服务器端是android设备
参考资料:百度百科▬ADB(调试桥)
ADB的全称为Android Debug Bridge,就是起到调试桥的作用。通过ADB我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。ADB的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下ADB会daemon相关的网络端口,所以当我们运行Eclipse时ADB进程就会自动运行。 ADB是android sdk里的一个工具,用这个工具可以直接 *** 作管理android模拟器或者真实的andriod设备(如G1手机) 它的主要功能有: 运行设备的shell(命令行) 管理模拟器或设备的端口映射 计算机和设备之间上传/下载文件 将本地apk软件安装至模拟器或android设备 ADB是一个客户端-服务器端程序,其中客户端是你用来 *** 作的电脑,服务器端是android设备。 ADB常用的几个命令 1 查看设备nbsp; ADBdevices 这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 2 安装软件 ADBinstall 这个命令将指定的apk文件安装到设备上 3 卸载软件 ADBuninstall lt;软件名gt; ADBuninstall -k lt;软件名gt; 如果加 -k 参数,为卸载软件但是保留配置和缓存文件 4 登录设备shell ADBshell ADBshell 这个命令将登录设备的shell 后面加将是直接运行设备命令, 相当于执行远程命令 5 从电脑上发送文件到设备 ADBpush lt;本地路径gt; lt;远程路径gt; 用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机) 6 从设备上下载文件到电脑 ADBpull lt;远程路径gt; lt;本地路径gt; 用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑 7 显示帮助信息 ADBhelp 这个命令将显示帮助信息 查看原帖>>
原因:输入的命令不是系统内部命令。以下是具体的解决方法:
材料/工具:电脑
1、首先找到这台电脑图标,单击下,选择属性。
2、接着鼠标点下界面里的高级系统设置。
3、接着鼠标立即选择下环境变量。
4、我们看到%SystemRoot%,点下它后右侧点编辑。
5、接着我们在这名字后面加;System32,点击确定就可以了。
adb是windows系统通过usb或者无线连接Android手机的一个接口
adb 常用命令大全
1 显示系统中全部Android平台:
android list targets
2 显示系统中全部AVD(模拟器):
android list avd
3 创建AVD(模拟器):
android create avd --name 名称 --target 平台编号
4 启动模拟器:
emulator -avd 名称 -sdcard ~/名称img (-skin 1280x800)
5 删除AVD(模拟器):
android delete avd --name 名称
6 创建SDCard:
mksdcard 1024M ~/名称img
7 AVD(模拟器)所在位置:
Linux(~/android/avd) Windows(C:\Documents and Settings\Administrator\android\avd)
8 启动DDMS:
ddms
9 显示当前运行的全部模拟器:
adb devices
10 对某一模拟器执行命令:
abd -s 模拟器编号 命令
11 安装应用程序:
adb install -r 应用程序apk
12 获取模拟器中的文件:
adb pull <remote> <local>
13 向模拟器中写文件:
adb push <local> <remote>
14 进入模拟器的shell模式:
adb shell
15 启动SDK,文档,实例下载管理器:
android
16 缷载apk包:
adb shell
cd data/app
rm apk包
exit
adb uninstall apk包的主包名
adb install -r apk包
17 查看adb命令帮助信息:
adb help
18 在命令行中查看LOG信息:
adb logcat -s 标签名
19 adb shell后面跟的命令主要来自:
源码\system\core\toolbox目录和源码\frameworks\base\cmds目录。
20 删除系统应用:
adb remount (重新挂载系统分区,使系统分区重新可写)。
adb shell
cd system/app
rm apk
21 获取管理员权限:
adb root
22 启动Activity:
adb shell am start -n 包名/包名+类名(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)。
23、发布端口:
你可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:
adb forward tcp:5555 tcp:8000
24、复制文件:
你可向一个设备或从一个设备中复制文件,
复制一个文件或目录到设备或模拟器上:
adb push
<source>
<destination></destination></source>
如:adb
push testtxt /tmp/testtxt
从设备或模拟器上复制一个文件或目录:
adb
pull <source>
<destination></destination></source>
如:adb
pull /addroid/lib/libwebcoreso
25、搜索模拟器/设备的实例:
取得当前运行的模拟器/设备的实例的列表及每个实例的状态:
adb devices
26、查看bug报告:
adb bugreport
27、记录无线通讯日志:
一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
adb shell
logcat -b radio
28、获取设备的ID和序列号:
adb get-product
adb get-serialno
29、访问数据库SQLite3
adb shell
sqlite3
#cd system/sd/data //进入系统内指定文件夹
#ls //列表显示当前文件夹内容
#rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件
#rm xxx //删除文件xxx
#rmdir xxx //删除xxx的文件夹
以上就是关于adb错误“'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件。全部的内容,包括:adb错误“'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件。、什么是adb命令行、深入扒一扒安卓中的ADB命令等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)