adb命令,不用usb线,远程操作手机

adb命令,不用usb线,远程操作手机,第1张

方法如下:

1 使用USB数据线连接设备

2 在命令行输入adb tcpip 5555 ( 5555为端口号,可以自由指定)。

3 断开 USB数据,此时可以连接你需要连接的|USB设备。

4 在从cmd命令行中输入 adb connect <设备的IP地址>:5555(端口号)

后面不通过连接数据线就可以使用ADB,DDMS 来调试Android应用或显示Logcat 消息。

5 如果需要恢复到USB数据线,可以在命令行输入adb usb,也可以adb disconnect <设备的IP地址>:5555(端口号)

6、查看IP地址方法:

1>Android设备的IP地址可以在Settings->About Phone->Status 查到

2>adb shell

  >>>ifconfig

3>adb shell

    >>>netcfg

7、举个栗子:

adb tcpip 5555

adb connect 1921683421:5556

adb disconnect 1921683421:5556

先打开winows菜单输入cmd命令,然后点确定并进入命令模式,之后输入命令D:,再回车输入cd,紧接着选你的sdk路径并复制路径,紧接点击cmd和选择编辑、粘贴并将复制的路径粘贴到命令行回车,最后打开adb即可。ADB就是起到调试桥的作用,用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如手机)。它的主要功能有运行设备的shell(命令行);管理模拟器或设备的端口映射等。

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桥的时候需要pc一台,手机一台,adb工具一个

首先需要配置环境变量:把adb工具的路径放到path中,比如C:\adb放到path中可能会因为操作系统的不同呈现两种形式,一个是直接添加,一个是点开编辑后没有添加,需要在编辑的最后面加一个分号;然后再将路径写入,保存之后按道理说adb桥就可以使用了

但是在使用前要明白,adb就是一个桥,让安卓系统和pc之间打通连接的一个桥,这PC设置完了,该手机了,手机的话需要打开开发者模式的usb调试,小米手机的话需要打开的开关有(暂时是MU102):1、设置----全部参数-----狂戳miui版本,这样就打开开发者模式了。2、设置-----更多设置------开发者选项—开启开发者选项。3、需要开启的按钮有:USB调试、USB安装、USB调试(安全设置)、关闭启动MIUI优化。

这时候需要在小米手机上面的USB的用途上面选择传输文件或者传输照片(除了仅充电就行~)

然后使用快捷键win+R输入cmd----回车,在黑框内输入adb devices 如果出现

这就代表adb没问题,但是没显示现在连接的设备,这说明有其他问题存在,首先看看PC上面安卓的驱动有没有安装好,因为正确的时候都会在List of devices attached下面显示自己的一段信息963d6a7e0604 device(这是我的)这时候我们可以下载驱动人生或者驱动精灵看看外设的驱动是否正常安装如果显示的是

就证明连接成功了,这时候可以用adb命令对连接好的设备进行一些模拟操作

总之连接不上就三个地方的问题:1、adb版本太太太太低了,不支持。2、pc没正常安装安卓驱动。3、手机开发者模式、usb调试、adb开关没打开。

在平时的工作中,会经常用到adb命令,在这里稍微整理了一下。

一概要

1什么是adb?

adb全称为Android Debug Bridge,就是起到调试桥的作用。顾名思义,adb就是一个debug工具。

2adb工作原理

不是很理解?那就来看看它的工作原理吧。

上图是一个简单的adb工作原理图。adb客户端服务器端程序,由上图可以看出它主要三个组件组成:Client,Server,Daemon。

(1)当你启动一个adb Client(客户端),Client首先会选确认是否已有一个adb

Server(服务器)进程在运行,如果没有,则会启动Server进程。此时,adb Server就会绑定本地的TCP端口5037,并监听adb

Client发来的命令。

(2)接着,Server将会扫描所有5555到5585范围内的奇数端口来定位所有的模拟器或设备,并与之建立连接。一旦Server找到

了adb

daemon(守护程序),它将建立一个到该端口的连接,这样,我们就可以使用adb命令控制和访问模拟器或设备了。在这里,需注意的是任何模拟器或设备实例会取得两个连续的端口:一个偶数端口用来相应控制台的连接,和一个奇数端口用来响应adb连接。

3adb的作用

借助adb工具,我们可以管理设备或手机模拟器的状态,还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。简而言之,adb就是连接Android手机和PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。

二常用命令

这个部分主要介绍adb的使用方法和一些常用的命令。

设置adb环境:将android sdk工作目录添加到系统环境变量中,则可使用adb命令了。

1 adb devices

查看当前连接的设备(连接计算机的Android设备或者模拟器)。

2adb install

adb install <apk文件路径>,将指定的apk安装到设备上,安装的apk包会放在/data/app目录下。

几个参数:

-r 强制安装

-d(真机,多个设备中只有一个真机时适用)

-e(模拟器,多个设备中只有一个模拟器时适用)

-s(指定设备,后接序列号)

adb –s 44a188f9 install –r testapk(其中44a188f9即序列号,通过adb devices可获取)

3adb uninstall

adb uninstall <apk包名>

adb uninstall –k <apk包名>

-k参数为卸载软件时保留配置和缓存文件

4adb reboot

重启android设备

5adb shell

通过adb shell 命令,就可以进入设备或者模拟器的shell环境了,在这个Linux shell中,我们就可以执行各种Linux命令了。

如果只想执行一条shell命令,就可以采用:adb shell [shell_command]

在实际使用中,经常与grep或findstr一起使用,起到过滤作用,查看自己需要的关键信息。

6adb shell su

前提手机已经root。获取adb shell的root权限。

使用su提权,用户命令提示符有$变成#,如果手机没有root,会提示su:permission denied。

7adb shell ps/top

查看当前终端中的进程信息,如pid等。

8adb shell am/pm

am全称为activity manager,可使用am命令模拟各种系统的行为,如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等。

如:adb shell am start <apk包名>/<activityName>:启动一个activity。

pm全称为package manager,利用pm命令可模拟android行为或查询设备上的应用等。

如:adb shell pm list packages

列出当前设备所有已安装的程序的包名。

说明:

管道符“|”:可以把标准的输入流与标准的输出流进行合并,或者把某个命令的标准输出流作为另一个命令的标准输入流。

exit退出shell。

由于grep为linux命令,运行单条adb shell 时并没有进入linux

shell环境,并不能用grep等其他linux命令,只能用window cmd的命令。在这里可以用findstr来代替grep,使用方法为

findstr/grep [keyword]

更详细的内容可查看 参考文献3 和 参考文献4 。

对于常用的linux命令和常用的windows 控制台命令,以后再作总结。

9adb pull 和 adb push

adb pull <设备中的文件路径> <本地路径>:从模拟器或设备中复制文件到本地。

adb push <本地文件路径> <设备中的路径>:将本地文件或目录复制到模拟器或设备。

这里还涉及到一个权限的问题,在后续的博文中再作介绍。

10adb shell dumpsys

Android提供的dumpsys工具用于查看感兴趣的系统服务信息与状态。

参考下表:

11adb shell monkey

跑monkey是android自动化测试的一种手段,所谓monkey测试就是模拟用户的按键输入,触摸屏输入,手势输入等。当Monkey程序在模拟器或设备运行的时候,如果用户比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey的随机重复的方法对apk作压力测试,来测试android

app的稳定性。

如下为测试腾讯新闻apk的一个简单实例:

说明:第一个-s指定设备,如果只连接了一台设备,可不用该参数。

-p <apk包名>只允许系统启动指定的app,如果不指定,将允许系统启动设备中的所有app,也可指定多个包。

--throttle <毫秒数> 指定用户操作(事件)间的时延。

--ignore-crashes 指定当应用程序崩溃时,Monkey依然发送事件,直到事件计数完成。

--ignore-timeouts 当应用程序发生ANR错误时,Monkey依然会发送事件,直到事件计数完成。

第2个-s,用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。

-v 用于指定反馈信息级别,总共分为level 0、level 1、level 2三个级别,级别越高,输出的日志越详细。

最后的数字(这里是500):表示Monkey程序模拟500次随机用户操作事件。

>输出测试结果到D:\monkeylogtxt

更详细的参数可查看 参考文献5 。

部分测试结果如下:

对于测试结果的分析,通过搜索关键词来定位错误,主要包括以下四个方面:

1)ANR(Application Not

Response):程序无响应,一般主线程超过5秒没处理就会出现ANR错误。通过搜索ANR关键词来定位关键的事件信息。除了导出日志外,还可以将/data/anr/目录下的tracetxt文件导出,用来定位分析问题。使用>adb

pull /data/anr/tracetxt d:\ 将tracetxt文件导出到d盘。

2)ForceClosed或其他异常退出信息:通过搜索Fatal关键词来定位。

3)崩溃问题:通过搜索Exception关键词来定位。

4)发生异常后,通过搜索Crash关键词来定位到详细的堆栈信息。

 12kill

kill用来中止一个进程。

比如我们在跑monkey的时候,怎么强制关闭monkey呢,可以用kill <monkey进程PID>

说明:另开启一个cmd,找到monkey的pid号,然后杀掉即可。

参考文献:

1Android调试桥: http://wwwiteyecom/topic/260042

2Android性能分析工具dumpsys的使用: http://wwwopen-opencom/lib/view/open1405061994872html

3adb shell 中的am pm命令: http://wwwandroid100org/html/201312/09/4957html

4adb shell 启动应用程序的方法: http://blogchinaunixnet/uid-26997997-id-3350449html

5Monkey压力测试详解: http://blogcsdnnet/huangbiao86/article/details/8490743

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/shuma/967990.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-20
下一篇2023-08-20

随机推荐

  • 香奈儿香水辨别真假的方法

    1、不管是正版标准装还是正版小样,在香水瓶底大都有一张透名塑料纸,上有这款香水的品名,规格和产地的介绍(也有的是直接将产地刻印在瓶底)。假香水没有这张纸,也没有刻纹。这是第一个可以用来辩别真假香水的方法。2、正版香水的瓶底和外包装盒底都有统

    2024-04-15
    47700
  • 妮维雅中性、混合型的洗面奶为什么洗了之后会出现过敏反应啊?

    任何一种护肤品都不能100%保证适用于每一个人的过敏有可能是最近气候的问题或者你的抵抗力下降机体就会发生反应的也有可能是皮肤压根不能用这种产品,如果总是过敏最好能去医院做下过敏源的测试,以后就清楚含什么成分的东西不能碰了所以呢,如果不舒服建

    2024-04-15
    52400
  • 王豆豆为什么和方丈分手 分手原因揭秘

    王豆豆为什么和方丈分手?分手原因揭秘,他俩曾将是网上的一对恋人,当时方丈已经名声远播,而王逗逗则刚出道,她和方丈的结合被很多人看成是心机婊蹭人气,但是后来发现方丈好王逗逗是真心的相爱,大家就纷纷送出了自己的祝福,本来以为他们两个会很快的结

    2024-04-15
    51200
  • 精华露和精华液的顺序

    精华露和精华液的顺序,其实并没有固定的标准。不同品牌、不同产品之间,使用顺序也可能存在一些差异。但是,一般来说,我们可以这样理解:我们需要明确两者的功能区别。精华液是一种具有高浓度活性成分的保养品,可以为肌肤提供深层营养滋润,在保持肌肤水油

    2024-04-15
    45500
  • 美容院里的做背的基础油和套盒有什么区别

    美容院里的做背的基础油和套盒有什么区别?在美容院里进行背部护理的时候,通常会有两种选择:基础油和套盒。这两种产品有什么区别呢?基础油是一种不含任何添加剂的纯天然植物油,常见的有橄榄油、葡萄籽油、甜杏仁油等。在进行背部护理时,按摩师会用基础油

    2024-04-15
    39000
  • 花西子和爱敬哪个好?

    花西子气垫和爱敬气垫都是市面上较为知名的气垫品牌,两者都是气垫产品,但在性能、价格、优势等方面还是有一定的差异。具体对比如下:1:性能对比:花西子气垫和爱敬气垫在打造妆效方面都有着不错的表现。花西子气垫具有防晒、保湿、提亮等效果,气垫上的海

    2024-04-15
    45700
  • 妮维雅是欧莱雅旗下的吗 妮维雅是什么档次

    妮维雅是欧莱雅旗下的一款护肤品牌,它属于中档护肤品。妮维雅以其独特的产品设计和高质量的成分在市场上受到广大消费者的喜爱。让我们来讨论妮维雅是否属于欧莱雅旗下。是的,妮维雅是欧莱雅旗下的一个品牌。欧莱雅是全球知名的化妆品公司,拥有多个知名品牌

    2024-04-15
    47200

发表评论

登录后才能评论
保存