adb-s(adb输入法)

本篇文章给大家谈谈adb-s,以及adb输入法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

常用的adb命令

Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文件夹中,它是一个非常强大的命令行工具,通过这个工具你能够与你的android设备进行交互,被称为Android 调试桥。

它是一种客户端-服务器程序,包括以下三个组件:

adb shell 命令

adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Android 设备的 system/bin 目录下

monkey命令

当您启动某个 adb 客户端时,该客户端会先检查是否有 adb 服务器进程正在运行。如果没有,它会启动服务器进程。服务器在启动后会与本地 TCP 端口 5037 绑定,并监听 adb 客户端发出的命令 - 所有 adb 客户端均通过端口 5037 与 adb 服务器通信。

然后,服务器会与所有正在运行的设备建立连接。它通过扫描 5555 到 5585 之间(该范围供前 16 个模拟器使用)的奇数号端口查找模拟器陪缺。服务器一旦发现 adb 守护程序 (adbd),便会与相应的端口建立连接。请注意,每个模拟器都使用一对按顺序排列的端口 - 用于控制台连派乱谈接的偶数号端口和用于 adb 连接的奇数号端口。例如:

模拟器 1,控制台:5554

模拟器 1,adb:5555

模拟器 2,控制台:5556

模拟器 2,adb:5557

依此类推

如上所示,在端口 5555 处与 adb 连接的模拟器与控制台监听端口为 5554 的模拟器是同一个。

服务器与所有设备均建立连接后,您便可以使用 adb 命令访问这些设备。由于服务器管理与设备的连接,并处理来自多个 adb 客户端的命令,因此您可以从任意客户端(或从某个脚本)控制任意设备。

要在通过 USB 连接的设备上使用 adb,您必须在设备的系统设置中启用 USB 调试 (位于 开发者选项 下)。

在搭载 Android 4.2 及更高版本的设备上,“开发者选项”屏幕默认情况下处于隐藏状态。如需将其显示出来,请依次转到 设置 关于手机 ,然后点按 版本号 七次。返回上一屏幕,在底部可以找到 开发者选项 。

在某些设备上,“开发者选项”屏幕所在的位置或名称可能有所不同。

执行 adb devices 验证设备是否已连接。如果已连接,您将看到设备名称以“设备”形式列出。

一般情况下,adb 通过 USB 与设备进行通信,但您也可以在通过 USB 完成一些初始设置后,通过 WLAN 使用 adb,如下所述。

如果 adb 连接断开:

如果有多个设备在运行,您在发出 adb 命令时必须指定目标设备。为此,请使用 devices 命令获取目标设备的序列号。获得序列号后,请结合使用 -s 选项与 adb 命令来指定序列号。如果您要发出很多 adb 命令,可以将 $ANDROID_SERIAL 环境变量设为包含序列号。如果您同时使用 -s 和 $ANDROID_SERIAL , -s 会替换 $ANDROID_SERIAL 。

$ adb -s emulator-5555 install helloWorld.apk

注意 :如果您在多个设备可用时发出命令但未指定目标设备,adb 会生成错误。

如果有多个可用设备,但只有一个是模拟器,请使用 -e 选项将命令发送至该模拟器。同样,如尘碰果有多个设备,但只连接了一个硬件设备,请使用 -d 选项将命令发送至该硬件设备。

使用 forward 命令设置任意端口转发,将特定主机端口上的请求转发到设备上的其他端口。以下示例设置了主机端口 6100 到设备端口 7100 的转发:

adb forward tcp:6100 tcp:7100

您可以使用 pull 和 push 命令将文件复制到设备或从设备复制文件。与 install 命令(仅将 APK 文件复制到特定位置)不同,使用 pull 和 push 命令可将任意目录和文件复制到设备中的任何位置。

如需从设备中复制某个文件或目录(及其子目录),请使用以下命令:

adb pull remote local

如需将某个文件或目录(及其子目录)复制到设备,请使用以下命令:

adb push loca remote

adb kill-server

您可以使用 shell 命令通过 adb 发出设备命令,也可以启动交互式 shell。如需发出单个命令,请使用 shell 命令,如下所示:

adb [-d |-e | -s shell shell_command

在 adb shell 中,您可以使用 Activity 管理器 ( am ) 工具发出命令以执行各种系统操作,如启动 Activity、强行停止进程、广播 intent、修改设备屏幕属性,等等。在 shell 中,相应的语法为:

您也可以直接从 adb 发出 Activity 管理器命令,无需进入远程 shell。例如:

adb shell am start -a android.intent.action.VIEW

adb常用指令

1、adb devices 获取模拟器或物理手机设备

2、adb install 安装软件

adb -s emulator-5554 install E:\CalculatorOfTwoNum.apk 连接了多个设备

adb install -r E:\CalculatorOfTwoNum.apk 覆盖安装已有的软件

adb install E:\CalculatorOfTwoNum.apk只有一个设备且未安装

3、adb uninstall 卸载软件

adb -s emulator-5554 uninstall com.example.calculatoroftwonum 卸载指定设备的软件

adb -s emulator-5554 shell pm uninstall -k com.example.calculatoroftwonum 保留配置及缓存

4、adb pull 把文件从手机设备发送到本地计算机

adb pull /sdcard/tmp/虚弊拆error.data d:/

adb -s emulator-5554 pull /sdcard/tmp/error.data d:/ 连接了多个设备个

5、adb push 把文件从本地计算机发送到手机设备

adb -s emulator-5554 push d:/example/error.data /sdcard/pass

6、adb shell ls 显示差枣当前目录的所有内容

7、adb shell 查看手机安装的应用

su root

cd /data/data

ls

8、adb shell dumpsys battery 查看电量信息

9、adb shell dumpsys wifi 查看无线网络信息

10、adb shell dumpsys power 查看电源信息

11、adb shell dumpsys telephony.registry 查看电话相关信息

12、adb shell cat /proc/cpuinfo 查看CPU硬件信息

13、adb shell cat /proc/meminfo 查看内存信息

14、adb shell cat /proc/卜埋iomen 查看I/O内存分区的信息

15、adb shell cat /system/build.prop | findstr "ro.product.model" 获取手机型号

16、adb shell cat /proc/cpuinfo | findstr "Processor" 获取手机处理器信息

17、adb shell cat /proc/meminfo | findstr "MemTotal" 获取手机内存信息

18、adb shell dumpsys windows | findstr "Display" 获取手机屏幕分辨率信息

19、adb shell getprop ro.build.version.release 获取系统版本信息

20、adb shell cat /proc/version 获取内核版本信息

21、adb shell getprop gsm.operator.alpah 获取运营商信息

22、adb shell getprop gsm.network.type 获取网络类型信息

23、adb shell dumpsys iphonesubinfo | findstr "Devices ID" 获取手机串号信息

24、adb shell df 获取系统分区信息

25、adb shell dmesg 获取linux内核环形缓冲区信息

26、adb shell dumpstate 获取系统当前状态

27、adb get-serialno 获取设备序列号

28、adb get-state 获取设备当前状态

29、adb logcat 查看日志信息

adb logcat *:W 输出优先级大于警告级的信息

adb logcat -b main 查看主缓冲区信息

30、adb bugreport 查看启动过程日志

31、adb jdwp 列出指定设备的IDWP相关进程的ID

32、adb start-server 启动adb服务

33、adb kill-server 关闭adb服务

34、adb forward 将本机的端口重定向到模拟器或者设备端口上

adb forward tcp:2211 tcp:5566

35、am 模拟系统行为

adb shell am start -n com.sec.android.app.camera/.Camera 启动照相功能

adb shell am broadcast -a android.intent.action.BATTERY_CHANGED --ei "level"5 --ei "scale" 100 向手机发送模拟手机低电环境的信息

36、pm 模拟行为或者查询设备上的应用

adb shell pm list packages

37、向模拟器发送短信、打电话

20181021141213.png 20181021141213.png 20181021141252.png 20181021141252.png

cmd telnet localhost 5554

20181021141306.png 20181021141306.png

network speed 14.4:20 设定网速

network delay 5 设定网络延时5毫秒

network capture start/stop 开始/停止数据包的捕获

windows scale 0.5 修改模拟器大小比例

quit退出

39、android list targets 查看模拟器的Android系统版本

40、android create avd 创建模拟器

android create avd --name Android4.4.2 --target 2 --abi armeabi-v7a

41、android move avd -n Android4.4.2 -r mytestdev4.4.2 重命名模拟器

42、android list avd 查看模拟器列表

43、android delete avd -n hhh 删除模拟器

44、emulator -avd Android4.4.2 启动模拟器

常用的安卓手机adb命令总结

很早就想整理一下自己平时常用的一些adb命令,不仅为了便于以后查找,而且整理的过程自己又重新复习了一遍,但是当我开始在度娘一搜的时候,发现很多人已经写的非常详细了,尤其是当我发现了这篇adb概括

心中一句NND,怎么可以写的这么详细,瞬间没了想写这篇文章的欲望,如果你点了链接发现确实很全,那么恭喜你可以关掉这篇了,哈哈哈。

我就不这么想的,虽然很全,但不是旁蚂我常用的,因人而异,所以我就权当记笔记唤猛+替这哥们宣传了。

– adb devices , 获取设备列表及设备状态

设备的状态有 3 种

device , 设备连接正常

offline , 设备离线,连接出现异常

unauthorized 设备为进行授权,需要在设备上是否允许调试对话框进行授权

offline情况解决办法,先执行adb kill-server 命令,再运链埋执行adb start-server 命令,再尝试adb devices 查看列表,如果还是offline,来来来,使用必杀技,重启大法。

当电脑连接多个android设备并可用时,所有的adb命令都需要指定设备后执行(当然你也可以移除多余的设备)

adb -s 设备名称 install/uninstall/shell/pull/push等命令

– adb install app在pc硬盘路径,选中app直接拖入即可

常见的错误情况

INSTALL_FAILED_TEST_ONLY, 安装的app的debug版本的,未签名,adb install -t 路径即可安装

INSTALL_FAILED_DUPLICATE_PACKAGE, 已经安装相同包名的app, 先卸载再安装

– adb uninstall app的包名,卸载app

adb pull 将 Android 设备上的文件或者文件夹复制到本地

adb pull sdcard/Android/111.txt E:\

小技巧,可以将本地路径指定为桌面,方便查看, 在桌面按住shift键,鼠标右键选择在此处打开命令行窗口,直接输入adb pull sdcard/Android/111.txt 执行,就可将111.txt复制到桌面。

前提是设备已经获取root权限

adb root

adb remount

adb push 将pc上文件复制到android设备中,修改room原生应用时比较频繁使用,如settings.apk, launcher3.apk

– adb shell pm 命令

adb shell pm list package 列出android设备上的所有app

adb shell pm list package -s 列出android设备上的系统级别app

adb shell pm list package -3 列出android设备上的第三方app(用户安装的)

adb shell pm list package -f 列出app包名及对应的apk名及存放位置

adb shell pm list package -i 列出app包名及其安装来源(应用市场名称)

adb shell pm dump app包名 列出app的相关信息,类似获取Manifest文件内容

-查看前台 Activity

adb shell dumpsys activity activities “| grep mFocusedActivity”

-adb shell am 命令

最常用的就是启动指定的activity和发送指定的广播

启动指定的activity

操作指令 adb shell am start -n 包名/类名

注:如果启动activity时,出现如下错误

java.lang.SecurityException: Permission Denial: starting Intent { flg=0x10000000 cmp=com.mediatek.engineermode/.io.Gpio } from null (pid=3083, uid=2000) not exported from uid 1001

解决办法,1、如果是你自己可控的app,那么找到你要调用的activity在manifest.xml中,增加

1

配置即可, android:name="" 可以为空字符串。

2、如果是不可控的app,例如我调用的系统原生app,那么你就洗洗睡吧,别折腾了,除非你修改源码和上边一样操作,重新push替换原来的app。

启动默认浏览器打开一个网页

adb shell am start -a android.intent.action.VIEW -d  * ********

先停止目标应用,再启动

adb shell am start -s com.android.camera/.Camera

启动相机

adb shell am start -n com.android.camera/.Camera

启动设置

adb shell am start -n com.android.settings/com.android.settings.Settings

启动Wifi设置

adb shell am start -n com.android.settings/com.android.settings.wifi.WifiSettings

启动蓝牙设置

adb shell am start -n com.android.settings/com.android.settings.bluetooth.BluetoothSettings

其它的类似只要你能在manifest中找到配置的,都可以通过这种方法来调用

发送指定的广播

操作指令 adb shell am broadcast -a 广播名 --ei/es/ez 参数名 参数值 --ei/es/ez 参数名 参数值

–ei integer 值

–es String 值

–ez boolean 值

–ef float 值

–el long 值

例如之前写的

Android6.0 源码修改之Setting列表配置项动态添加和静态添加, 当中就通过发送广播来接收增加配置列表项

adb shell am broadcast -a cn.dynamic.add.settingcategoryitem --es location “0-2” --es title “红” --es intent “com.android.settings.SCHEDULE_POWER_ON_OFF_SETTING”

-adb shell input keycode 指令

HOME 键 adb shell input keycode 3

返回键 adb shell input keycode 4

打开浏览器 adb shell input keycode 64

-adb shell wm 指令

屏幕分辨率 adb shell wm size

屏幕密度 adb shell wm density

adb shell wm density 320/480/640 可修改屏幕密度查看效果,对应Launcher图标会缩放

adb shell ifconfig 命令

IP 地址 adb shell ifconfig “| grep Mask”

WIFI 地址 adb shell ifconfig wlan0

状态栏和导航栏的显示隐藏

命令:

adb shell settings put global policy_control

可由如下几种键及其对应的值组成,格式为 key1=value1:key2=value2。

key        含义

immersive.full        同时隐藏

immersive.status        隐藏状态栏

immersive.navigation        隐藏导航栏

immersive.preconfirms        同时显示

这些键对应的值可则如下值用逗号组合:

value        含义

apps        所有应用

所有界面

packagename        指定应用

packagename        排除指定应用

例如:

adb shell settings put global policy_control immersive.full=*

表示设置在所有界面下都同时隐藏状态栏和导航栏。(重启也不会失效,恢复需调用下面的命令)

adb shell settings put global policy_control immersive.preconfirms=*

表示恢复显示

adb shell settings put global policy_control immersive.status=com.package1,com.package2:immersive.navigation=apps,-com.package3

表示设置在包名为 com.package1 和 com.package2 的应用里隐藏状态栏,在除了包名为 com.package3 的所有应用里隐藏导航栏

adb shell am force-stop app  关闭APP

adb shell pm clear APP  app进程被杀死,且会清楚所有数据

 1:查找手机安装应用的包名:adb shell pm list packages -f

    2:查看系统盘符:adb shell df

    3:查看Log 1:adb shell 2: logcat | grep "abc"

    4:删除应用:1:adbremount  2:adb shell  3:cdsystem/app   4:rm *.apk

    5:安装APK: adbinstall -r *.apk  或者 adb push*.apk  /system/app

    6:查看APP启动的时间指令

     adb shell am start -W -ncom.android.dialer/.DialtactsActivity  (W是大写)执行命令后APP会自 动启动,其中ThisTime即是本次     App启动所花费的时间。

    7:查看包名中当前所在进程信息:adb shell ps | grep +包名

    8:查看Activity运行的任务栈:adb shell dumpsys activity

     9:查看键值:adb logcat | grep intercep  -i

    10:查看模块所占有的CPU资源:adb shell top -d 2 -m 10

    11:查看可用系统的权

           $ adb shell

           # pm list permissions

   12:模拟按键的输入:adb shell input keyevent + 键值

      eg:  adb shell input keyevent  82   表示menu

             adb shell input keyevent  3     表示home

            adb shell input keyevent  19   表示up

             adb shell input keyevent  20   表示down

            adb shell input keyevent  21   表示left

             adb shell input keyevent  22   表示right

            adb shell input keyevent  66   表示enter

             adb shell input keyevent  4     表示back

    13:模拟滑动输入:adb shell input touchscreen x1 y1 x2 y2

        eg: adb shell input touchscreen swipe 18 665 18 350

    14:启动一个Activity : adb shell am start -n 包名+类名

    15:录制屏幕:adb shell screenrecord /sdcard/demo.mp4

    16:重新启动:adb reboot   

    17:Monkey的基本用法下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500个伪随机事件:

          $ adb shell monkey -p your.package.name -v 500

        如果跑桌面或者systemUi的monkey的话:

         adb shell monkey -v -v -p 桌面包名 --pct-touch 50 --pct-motion 30 --pct-syskeys 20 --throttle 300 -s 200 200000

    18:查找第三方应用的详细信息:

        adb shell dumpsys package +第三方包名(com.txznet.webchat)

当有多个设备online时,命令行窗口通过adb连接指定设备方法有哪些?

运行其它命令和运行pull命令一样的,只是在adb和cmd之间需斗链要额外添加-s 嫌销稿芹孝serial number即可。

通过adb devices命令获取所有online设备的serial number。

通过adb -s serial number cmd向设备发送adb命令。

[img]

关于adb-s和adb输入法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表