常用的adb命令

  • 2017-5-12 09:48
  • PHP二次开发
  • 阅读(696)
  • 评论(0)
  • 来源:互联网
  • 摘要: 1、adb devices 查看设备 这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示(如图)只提示“List of devices attached” 没有罗列设备,两种情况下遇到过这个问题:(1)手机设置导 ...
    1、adb devices  查看设备 这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示(如图)

    只提示“List of devices attached” 没有罗列设备,两种情况下遇到过这个问题:(1)手机设置导致,确定手机已经连接到电脑上,且手机 “设置->开发者选项->开发人员选项”和“USB调试”为打开状态,在“是否允许USB调试”点击确定;(2)adb版本太老了,更新一下到最新的版本试试。

    2、 adb install (apk在PC上的路径/)*.apk (会将apk文件上传到了模拟器自带操作系统的data/app目录下了) 安装应用

    3、adb uninstall   apk的包名(用EC切换到DDMS的File Explorer中查看,data/data下), 卸载app
    也可以使用:adb shell pm uninstall  com.funnybaby.*(包名)卸载

    4、adb shell 通过命令,就可以进入设备或模拟器的shell环境中,在这个Linux Shell中,你可以执行各种Linux的命令

    另外如果只想执行一条shell命令,可以采用以下的方式:
    adb shell [command]
    如:adb shell dmesg会打印出内核的调试信息

    5、am
    你也可以在adb shell前执行am命令:
    关于一些am命令的介绍:
    start [options] :启动activity通过指定的intent参数。具体intent参数参照官方表。
    startservice [options] : 启动service通过指定的intent参数。具体intent跟start命令参数相同。
    force-stop : 强制停止指定的package包应用。
    kill
    [options]
    :杀死指定package包应用进程,该命令在安全模式下杀死进程,不影响用户体验。参数选项:--user |
    all | current: 指定user进程杀死,如果不指定默认为所有users。(关于USER_ID下面会介绍到)
    kill-all :杀死所有的后台进程。
    broadcast
    [options] :发送一个intent。具体intent参数参照start命令参数。参数选项:--user
    | all | current: 指定user进程杀死,如果不指定默认为所有users。
    instrument [options] :测试命令,不多作介绍。
    profile start :在进程中运行profile,分析结果写到里。
    profile stop :停止profile。
    set-debug-app [options] :设置package包应用为debug模式。参数选项:-w|--persistent:等待进入调试模式,保留值。
    clear-debug-app :清空之前用set-debug-app命令设置的package包应用。

    6、adb shell am force-stop
    作用:强制关闭一个应用程序
    举例:adb shell am force-stop com.lt.test
    adb shell am force-stop比使用 kill -9要方便

    7、adb shell am start -a android.intent.action.VIEW
    作用:启动一个应用程序

    8、adb shell pm list packages列出手机所有app包名


    9、adb shell logcat > C:\logcat\logname.txt(自定义日志存放的位置和名称)   
    adb logcat -f /sdcard/log.txt** 命令, 注意这个log文件是输出到手机上,需要指定合适的路径。
    adb logcat | grep “E.*”过滤等级是E的日志
    adb logcat *:F
    可截取崩溃日志,具体
    截取log保存到c盘目录下:adb shell logcat > C:\logcat\logname.txt
    手机操作
    操作结束后ctrl+c退出,去上面C:\logcat\位置去查询logname.txt日志

    10、清除应用数据与缓存
    有些时候我们测试需要清除数据与缓存,则需要用到如下命令:
    adb shell pm clear 如:adb shell pm clear com.stormzhang.demo

    11、查询显示当前界面的activity
    adb shell dumpsys activity activities

    13、将手机/sdcard/adb/Debug/ErrorLog错误日志拉取出来,保存到电脑

    adb pull /sdcard/adb/Debug/ErrorLog

    14、将电脑文件保存到手机

    adb push
    15、这条命令相当于按了设备的Backkey键
    adb shell input keyevent 4   

     //可以解锁屏幕

    adb shell input keyevent  82 

    //在屏幕上做划屏操作,前四个数为坐标点,后面是滑动的时间(单位毫秒)

    adb shell input swipe 50 250 250 250 500 

    //在屏幕上点击坐标点x=50  y=250的位置。

    adb shell input tap 50 250 

    //输入字符abc

    adb shell input text abc

    每个数字与keycode对应表如下:
    0 -->  "KEYCODE_UNKNOWN"
    1 -->  "KEYCODE_MENU"
    2 -->  "KEYCODE_SOFT_RIGHT"
    3 -->  "KEYCODE_HOME"
    4 -->  "KEYCODE_BACK"
    5 -->  "KEYCODE_CALL"
    6 -->  "KEYCODE_ENDCALL"
    7 -->  "KEYCODE_0"
    8 -->  "KEYCODE_1"
    9 -->  "KEYCODE_2"
    10 -->  "KEYCODE_3"
    11 -->  "KEYCODE_4"
    12 -->  "KEYCODE_5"
    13 -->  "KEYCODE_6"
    14 -->  "KEYCODE_7"
    15 -->  "KEYCODE_8"
    16 -->  "KEYCODE_9"
    17 -->  "KEYCODE_STAR"
    18 -->  "KEYCODE_POUND"
    19 -->  "KEYCODE_DPAD_UP"
    20 -->  "KEYCODE_DPAD_DOWN"
    21 -->  "KEYCODE_DPAD_LEFT"
    22 -->  "KEYCODE_DPAD_RIGHT"
    23 -->  "KEYCODE_DPAD_CENTER"
    24 -->  "KEYCODE_VOLUME_UP"
    25 -->  "KEYCODE_VOLUME_DOWN"
    26 -->  "KEYCODE_POWER"
    27 -->  "KEYCODE_CAMERA"
    28 -->  "KEYCODE_CLEAR"
    29 -->  "KEYCODE_A"
    30 -->  "KEYCODE_B"
    31 -->  "KEYCODE_C"
    32 -->  "KEYCODE_D"
    33 -->  "KEYCODE_E"
    34 -->  "KEYCODE_F"
    35 -->  "KEYCODE_G"
    36 -->  "KEYCODE_H"
    37 -->  "KEYCODE_I"
    38 -->  "KEYCODE_J"
    39 -->  "KEYCODE_K"
    40 -->  "KEYCODE_L"
    41 -->  "KEYCODE_M"
    42 -->  "KEYCODE_N"
    43 -->  "KEYCODE_O"
    44 -->  "KEYCODE_P"
    45 -->  "KEYCODE_Q"
    46 -->  "KEYCODE_R"
    47 -->  "KEYCODE_S"
    48 -->  "KEYCODE_T"
    49 -->  "KEYCODE_U"
    50 -->  "KEYCODE_V"
    51 -->  "KEYCODE_W"
    52 -->  "KEYCODE_X"
    53 -->  "KEYCODE_Y"
    54 -->  "KEYCODE_Z"
    55 -->  "KEYCODE_COMMA"
    56 -->  "KEYCODE_PERIOD"
    57 -->  "KEYCODE_ALT_LEFT"
    58 -->  "KEYCODE_ALT_RIGHT"
    59 -->  "KEYCODE_SHIFT_LEFT"
    60 -->  "KEYCODE_SHIFT_RIGHT"
    61 -->  "KEYCODE_TAB"
    62 -->  "KEYCODE_SPACE"
    63 -->  "KEYCODE_SYM"
    64 -->  "KEYCODE_EXPLORER"
    65 -->  "KEYCODE_ENVELOPE"
    66 -->  "KEYCODE_ENTER"
    67 -->  "KEYCODE_DEL"
    68 -->  "KEYCODE_GRAVE"
    69 -->  "KEYCODE_MINUS"
    70 -->  "KEYCODE_EQUALS"
    71 -->  "KEYCODE_LEFT_BRACKET"
    72 -->  "KEYCODE_RIGHT_BRACKET"
    73 -->  "KEYCODE_BACKSLASH"
    74 -->  "KEYCODE_SEMICOLON"
    75 -->  "KEYCODE_APOSTROPHE"
    76 -->  "KEYCODE_SLASH"
    77 -->  "KEYCODE_AT"
    78 -->  "KEYCODE_NUM"
    79 -->  "KEYCODE_HEADSETHOOK"
    80 -->  "KEYCODE_FOCUS"
    81 -->  "KEYCODE_PLUS"
    82 -->  "KEYCODE_MENU"
    83 -->  "KEYCODE_NOTIFICATION"
    84 -->  "KEYCODE_SEARCH"
    85 -->  "TAG_LAST_KEYCODE"


    PHP技术交流QQ群:422137578

    除非注明,文章均为 PHP二次开发 原创,转载请注明本文地址:http://www.php2.cc/article-2617-1.html

    相关阅读

    最新评论

    用户名:  *

    邮 箱:  *

    网 址: 注意加上“http://”哦!