Android adb 我的常用调试命令记录(持续更新中...)

Android adb (cmd)常用调试命令记录 (持续学习中不定时更新记录.


目录

Android adb (cmd)常用调试命令记录 (持续学习中不定时更新记录.

一、文件拷贝到 android 设备指定文件夹

二、system 文件夹添加 读写权限

三、/system/app 使用 chmod 修改文件夹权限

四、android 设备 system 目录获得读写 rw 权限的方法

五、android 设备的连接、断开、显示连接设备,重启设备,修改设备分辨率,安装应用

六、向 android 设备模仿按键事件输入

七、删除文件

八、查找android设备中带某字符串的线程,并杀死某个线程

九、修改文件的权限

十、android 设备屏幕录屏

十一、查看日志,并且查看带制定字符的字符串

十二、cmd 清屏操作

十三、Android系统adb命令查看CPU与内存使用率

十四、中断执行的命令和退出shell

十五、重启或关机命令

十六、卸载应用

十七、cmd 复制信息的两种快捷方式

十八、cmd 切换盘,切换到指定文件夹

十九、cmd adb应用日志输出中文乱码解决(包括打开win 注册表,永久解决的方法)

二十、adb 如何查看Android手机CPU类型是armeabi,armeabi-v7a,还是arm64-v8a

二十一、adb 查找文件

二十二、安装 sdcard 文件夹下中的apk 方法

二十三、拖拽push apk到设备中,在pm install 安装软件的方法

二十四、adb 批量安装apk

二十四、chcp 解决 cmd 中有乱码的现象

二十五、adb 把日志保存到本地文件中

二十六、adb 模拟按键输入

二十七、adb 修改系统时间

二十八、Android 后台自动记录机器上所有的 log 日志( .sh文件)

二十九、adb 命令打开 设置界面

三十、adb 打开默认 lancher 界面

三十一、adb 获取设备的 Android 版本,或者 Android API 版本

三十二、adb 在手机执行 bin 文件

三十三、adb wifi 连接手机操作

三十四、一览命令总结



一、文件拷贝到 android 设备指定文件夹

举例:将 F:\android目录下的Test文件夹(含有Test.apk文件) 复制到system\priv-app目录下

    首先system目录是需要权限的

        1、root命令

         adb root (记得重新连接设备 adb connect xxx.xxx.xxx.xxx)

       2、remount

         adb remount

       3、进入adb目录

        adb shell

        4、切换到目标目录

        cd system\priv-app

       5、创建文件夹Test

       mkdir Test

     6、退到主目录C:\Users\Xsy>

        exit

      7、执行

       adb push F:\android\Test\Test.apk  system\priv-app\Test  

   ok 可以adb shell 切换到指定目录看结果
 

注意 system 文件夹需要root 权限

1、把文件夹拷贝过去
adb push 文件夹    /system/lib64

2、把文件夹下所有文件拷贝过去
adb push 文件夹/.    /system/lib64

二、system 文件夹添加 读写权限

      mount -rw -o remount /system (不一定行,不行的话请参考下面的第四条)

三、/system/app 使用 chmod 修改文件夹权限

已经root过 需要切换到root用户去拷贝,或者修改/system/app目录的权限才可以。

当你获取root权限后通过adb访问/system/app目录:

  1. adb shell 进入shell模式

  2. su 切换到root用户

  3. chmod 777 system/app 修改 /system/app目录的权限为 777即可

  4. exit 退出root用户

  5. cd /system/app 即可进入/system/app 目录了

也可以使用shell模拟器来执行,shell查看附件

四、android 设备 system 目录获得读写 rw 权限的方法

       1、root命令

         adb root (记得重新连接设备 adb connect xxx.xxx.xxx.xxx)

       2、remount

         adb remount

       3、进入adb目录

        adb shell

       4、之后 ls -l 即可查看 system 已经有了读写权限

五、android 设备的连接、断开、显示连接设备,重启设备,修改设备分辨率,安装应用

       1、adb reboot 重启连接的设备
       2、adb shell wm size 1080x2160  修改连接机器的分辨率
       3、adb install -r xxx.apk 安装应用   /  adb -s 设备id -r install app-release.apk 多个连接设备的时候指定设备安装应用
       4、adb connect xxx.xxx.xxx.xxx 连接 IP 地址的机器
       5、adb disconnect xxx.xxx.xxx.xxx 断开指定 IP 地址的设备 不带 IP 则断开所有连接的设备
       6、adb devices 显示连接的设备

六、向 android 设备模仿按键事件输入

        adb shell input keyevent 66 (向手机输入Ente,66 为键值)

七、删除文件

        rm -rf /system/filename  (强制删除rf 某个文件)

八、查找android设备中带某字符串的线程,并杀死某个线程

        adb shell ps | findstr "xslam" (查找带字符串 xslam 的线程)

        (adb shell  进入 shell 之后 ps | grep qvrservice (查找带字符串 qvrservice 的线程))
        adb shell kill -s  9 21930          (21930 线程号)

        adb shell kill PIDNumber  死你想杀死的后台进程来模拟某种 bug 的复现条件。
        adb shell ps  查看当前终端中的进程信息

九、修改文件的权限

        chmod 777 /dev/video4 (给 video4 权限读写执行,有时候有些文件需要 su 一下 root 权限)

十、android 设备屏幕录屏

        adb shell screenrecord /sdcard/slam.mp4   (/sdcard/slam.mp4 录屏后保存的位置和文件名称)

十一、查看日志,并且查看带制定字符的字符串

         adb logcat -c  (清一下日志缓存)

         adb logcat        (日志显示)

         adb logcat | find "Unity" (查找带字符串 “Unity” 的日志)

         adb logcat -s "Unity"     (查找带字符串 “Unity” 的日志)


         adb shell

         logcat -s Unity  (进入shell 后,-s 加字符串,筛选指定log)      

十二、cmd 清屏操作

         cls    (输入cls 回车,即可清屏cmd界面的信息)

十三、Android系统adb命令查看CPU与内存使用率

         adb shell

         top -m 10 -s cpu(-m显示最大数量,-s 按指定行排序)

    -参数含义:  

  • PID  : progress identification,应用程序ID  
  • S    : 进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数  
  • #THR : 程序当前所用的线程数  
  • VSS  : Virtual Set Size虚拟耗用内存(包含共享库占用的内存)  
  • RSS  : Resident Set Size实际使用物理内存(包含共享库占用的内存)  
  • PCY  : 前台(fg)和后台(bg)进程  
  • UID  : User Identification,用户身份ID  
  • Name : 应用程序名称  

十四、中断执行的命令和退出shell

       ctrl + c 中断执行的命令

       exit 退出 shell(如果进入了su,要多一次 exit,才能完全退出)

十五、重启或关机命令

      1)如果一台电脑连接一台手机,则使用如下命令

      adb reboot

      2)如果一台电脑连接多台手机,具体指定哪台手机重启需要指定设备号

      adb -s device1 reboot

      3)下面是关机命令

      adb shell reboot -p

十六、卸载应用

      1)卸载系统应用

adb remount
adb shell
cd system/app
ls

rm xx.apk

      2)卸载一般应用

adb uninstall 应用包名称
adb uninstall com.skype.raider

(adb shell 里面)
pm uninstall 应用包名称
pm uninstall xslam.co.picfic.pfslam_sdk

十七、cmd 复制信息的两种快捷方式

      1)选中信息,ctrl+c 复制,ctrl+v 粘贴

      2)选中信息,“鼠标-右键 ”复制,鼠标移动到输入光标处,即可 “鼠标-右键” 粘贴

十八、cmd 切换盘,切换到指定文件夹

       1、d:          按回车,切换到D盘

       2、cd D:\Temp\DLL          按回车,切换到D盘 Temp\DLL 文件夹下

十九、cmd adb应用日志输出中文乱码解决(包括打开win 注册表,永久解决的方法)

1)临时的方法

cmd 中输入: chcp 65001

2)在注册表里面添加,永久的方法

  • 打开"运行",输入 regedit,按回车确定
  • 找到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor,添加字符串值,命名为 autorun,双击设置为:chcp 65001

二十、adb 如何查看Android手机CPU类型是armeabi,armeabi-v7a,还是arm64-v8a

机开启USB调试后,连上电脑,在Terminal中输入命令:

adb shell getprop ro.product.cpu.abi

二十一、adb 查找文件

adb shell

find -name 文件名

二十二、安装 sdcard 文件夹下中的apk 方法

adb shell;
pm install /sdcard/xxx.apk

好像用下面方式会快点 root + remount(可以试试)

adb connect 192.168.x.xxx

adb root

adb connect 192.168.x.xxx

adb remount

adb push xxx.apk  /data/local/tmp

adb shell pm install -r /data/local/tmp/xxx.apk

二十三、拖拽push apk到设备中,在pm install 安装软件的方法

chcp 936
@echo off

SET /P IpAndress=请填入你的设备IP(建议加上端口号): 
ECHO %IpAndress%
adb connect %IpAndress% 
 
SET /P ApkPath=请填入你要安装的apk路径,建议直接拖拽文件到这个窗口: 
ECHO %ApkPath% 
call :show %ApkPath%
ECHO %ApkName%
ECHO adb版本决定传输的速度和进度显示,建议使用高版本adb
ECHO 推送中.....请等待.....
adb push %ApkPath%  /data/local/tmp

ECHO 安装中.....请等待.....
adb shell pm install -r  /data/local/tmp/%ApkName%
adb shell rm /data/local/tmp/%ApkName%
ECHO 安装完成.....并已删除临时缓存APK

pause
goto :eof

:show
set ApkName=%~nx1 

二十四、adb 批量安装apk

1、不带设备IP的

@echo off

ECHO 初始化…
adb kill-server
adb start-server
@REM 无限循环的标签
:LOOP

@echo off

SET /P IpAndress=请填入你的设备IP: 
ECHO %IpAndress%
adb connect %IpAndress% 
ECHO 点击安装
pause
@REM 循环安装本目录下的APK文件
FOR %%i IN (*.apk) DO ( 
    ECHO 正在安装:%%i
    adb install -r "%%i"
    )


ECHO 安装好了;换一台设备吧!!!
PAUSE
adb disconnect 
GOTO LOOP

@ECHO on

2、带设备IP的

@echo off
 
ECHO 初始化…
chcp 936
@REM 无限循环的标签
:LOOP
 
@echo off
 
SET /P IpAndress=请填入你的设备IP: 
ECHO %IpAndress%
adb connect %IpAndress% 

ECHO 点击安装
pause

@REM 循环安装本目录下的APK文件
FOR %%i IN (*.apk) DO ( 
    ECHO 正在安装:%%i
    adb -s %IpAndress%   install -r "%%i"
    )
 
 
ECHO 安装好了;换一台设备吧!!!
PAUSE
adb disconnect  %IpAndress% 

GOTO LOOP
 
@ECHO on

批量文件和apk都要放在 adb 目录下

二十四、chcp 解决 cmd 中有乱码的现象

chcp 65001  就是换成UTF-8代码页
chcp 936 可以换回默认的GBK
chcp 437 是美国英语  

二十五、adb 把日志保存到本地文件中

1、adb shell logcat -v time > 文件  

     该文件可以拖拽进来

2、Ctrl + C 结束写入

C:\Users\Pacific Future>adb shell logcat -v time > "C:\Users\Pacific Future\Desktop\ll.txt"
^C
C:\Users\Pacific Future>

二十六、adb 模拟按键输入

//这条命令相当于按了设备的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”

KEYCODE列表
电话键

KEYCODE_CALL 拨号键 5
KEYCODE_ENDCALL 挂机键 6
KEYCODE_HOME 按键Home 3
KEYCODE_MENU 菜单键 82
KEYCODE_BACK 返回键 4
KEYCODE_SEARCH 搜索键 84
KEYCODE_CAMERA 拍照键 27
KEYCODE_FOCUS 拍照对焦键 80
KEYCODE_POWER 电源键 26
KEYCODE_NOTIFICATION 通知键 83
KEYCODE_MUTE 话筒静音键 91
KEYCODE_VOLUME_MUTE 扬声器静音键 164
KEYCODE_VOLUME_UP 音量增加键 24
KEYCODE_VOLUME_DOWN 音量减小键 25

控制键

KEYCODE_ENTER 回车键 66
KEYCODE_ESCAPE ESC键 111
KEYCODE_DPAD_CENTER 导航键 确定键 23
KEYCODE_DPAD_UP 导航键 向上 19
KEYCODE_DPAD_DOWN 导航键 向下 20
KEYCODE_DPAD_LEFT 导航键 向左 21
KEYCODE_DPAD_RIGHT 导航键 向右 22
KEYCODE_MOVE_HOME 光标移动到开始键 122
KEYCODE_MOVE_END 光标移动到末尾键 123
KEYCODE_PAGE_UP 向上翻页键 92
KEYCODE_PAGE_DOWN 向下翻页键 93
KEYCODE_DEL 退格键 67
KEYCODE_FORWARD_DEL 删除键 112
KEYCODE_INSERT 插入键 124
KEYCODE_TAB Tab键 61
KEYCODE_NUM_LOCK 小键盘锁 143
KEYCODE_CAPS_LOCK 大写锁定键 115
KEYCODE_BREAK Break/Pause键 121
KEYCODE_SCROLL_LOCK 滚动锁定键 116
KEYCODE_ZOOM_IN 放大键 168
KEYCODE_ZOOM_OUT 缩小键 169

组合键

KEYCODE_ALT_LEFT Alt+Left
KEYCODE_ALT_RIGHT Alt+Right
KEYCODE_CTRL_LEFT Control+Left
KEYCODE_CTRL_RIGHT Control+Right
KEYCODE_SHIFT_LEFT Shift+Left
KEYCODE_SHIFT_RIGHT Shift+Right

基本

KEYCODE_0 按键’0’ 7
KEYCODE_1 按键’1’ 8
KEYCODE_2 按键’2’ 9
KEYCODE_3 按键’3’ 10
KEYCODE_4 按键’4’ 11
KEYCODE_5 按键’5’ 12
KEYCODE_6 按键’6’ 13
KEYCODE_7 按键’7’ 14
KEYCODE_8 按键’8’ 15
KEYCODE_9 按键’9’ 16
KEYCODE_A 按键’A’ 29
KEYCODE_B 按键’B’ 30
KEYCODE_C 按键’C’ 31
KEYCODE_D 按键’D’ 32
KEYCODE_E 按键’E’ 33
KEYCODE_F 按键’F’ 34
KEYCODE_G 按键’G’ 35
KEYCODE_H 按键’H’ 36
KEYCODE_I 按键’I’ 37
KEYCODE_J 按键’J’ 38
KEYCODE_K 按键’K’ 39
KEYCODE_L 按键’L’ 40
KEYCODE_M 按键’M’ 41
KEYCODE_N 按键’N’ 42
KEYCODE_O 按键’O’ 43
KEYCODE_P 按键’P’ 44
KEYCODE_Q 按键’Q’ 45
KEYCODE_R 按键’R’ 46
KEYCODE_S 按键’S’ 47
KEYCODE_T 按键’T’ 48
KEYCODE_U 按键’U’ 49
KEYCODE_V 按键’V’ 50
KEYCODE_W 按键’W’ 51
KEYCODE_X 按键’X’ 52
KEYCODE_Y 按键’Y’ 53
KEYCODE_Z 按键’Z’ 54

符号

KEYCODE_PLUS 按键’+’
KEYCODE_MINUS 按键’-’
KEYCODE_STAR 按键’*’
KEYCODE_SLASH 按键’/’
KEYCODE_EQUALS 按键’=’
KEYCODE_AT 按键’@’
KEYCODE_POUND 按键’#’
KEYCODE_APOSTROPHE 按键”’ (单引号)
KEYCODE_BACKSLASH 按键’\’
KEYCODE_COMMA 按键’,’
KEYCODE_PERIOD 按键’.’
KEYCODE_LEFT_BRACKET 按键’[’
KEYCODE_RIGHT_BRACKET 按键’]’
KEYCODE_SEMICOLON 按键’;’
KEYCODE_GRAVE 按键’`’
KEYCODE_SPACE 空格键

小键盘

KEYCODE_NUMPAD_0 小键盘按键’0’
KEYCODE_NUMPAD_1 小键盘按键’1’
KEYCODE_NUMPAD_2 小键盘按键’2’
KEYCODE_NUMPAD_3 小键盘按键’3’
KEYCODE_NUMPAD_4 小键盘按键’4’
KEYCODE_NUMPAD_5 小键盘按键’5’
KEYCODE_NUMPAD_6 小键盘按键’6’
KEYCODE_NUMPAD_7 小键盘按键’7’
KEYCODE_NUMPAD_8 小键盘按键’8’
KEYCODE_NUMPAD_9 小键盘按键’9’
KEYCODE_NUMPAD_ADD 小键盘按键’+’
KEYCODE_NUMPAD_SUBTRACT 小键盘按键’-’
KEYCODE_NUMPAD_MULTIPLY 小键盘按键’*’
KEYCODE_NUMPAD_DIVIDE 小键盘按键’/’
KEYCODE_NUMPAD_EQUALS 小键盘按键’=’
KEYCODE_NUMPAD_COMMA 小键盘按键’,’
KEYCODE_NUMPAD_DOT 小键盘按键’.’
KEYCODE_NUMPAD_LEFT_PAREN 小键盘按键’(’
KEYCODE_NUMPAD_RIGHT_PAREN 小键盘按键’)’
KEYCODE_NUMPAD_ENTER 小键盘按键回车

功能键

KEYCODE_F1 按键F1
KEYCODE_F2 按键F2
KEYCODE_F3 按键F3
KEYCODE_F4 按键F4
KEYCODE_F5 按键F5
KEYCODE_F6 按键F6
KEYCODE_F7 按键F7
KEYCODE_F8 按键F8
KEYCODE_F9 按键F9
KEYCODE_F10 按键F10
KEYCODE_F11 按键F11
KEYCODE_F12 按键F12

多媒体键

KEYCODE_MEDIA_PLAY 多媒体键 播放
KEYCODE_MEDIA_STOP 多媒体键 停止
KEYCODE_MEDIA_PAUSE 多媒体键 暂停
KEYCODE_MEDIA_PLAY_PAUSE 多媒体键 播放/暂停
KEYCODE_MEDIA_FAST_FORWARD 多媒体键 快进
KEYCODE_MEDIA_REWIND 多媒体键 快退
KEYCODE_MEDIA_NEXT 多媒体键 下一首
KEYCODE_MEDIA_PREVIOUS 多媒体键 上一首
KEYCODE_MEDIA_CLOSE 多媒体键 关闭
KEYCODE_MEDIA_EJECT 多媒体键 弹出
KEYCODE_MEDIA_RECORD 多媒体键 录音

手柄按键

KEYCODE_BUTTON_1 通用游戏手柄按钮#1
KEYCODE_BUTTON_2 通用游戏手柄按钮 #2
KEYCODE_BUTTON_3 通用游戏手柄按钮 #3
KEYCODE_BUTTON_4 通用游戏手柄按钮 #4
KEYCODE_BUTTON_5 通用游戏手柄按钮 #5
KEYCODE_BUTTON_6 通用游戏手柄按钮 #6
KEYCODE_BUTTON_7 通用游戏手柄按钮 #7
KEYCODE_BUTTON_8 通用游戏手柄按钮 #8
KEYCODE_BUTTON_9 通用游戏手柄按钮 #9
KEYCODE_BUTTON_10 通用游戏手柄按钮 #10
KEYCODE_BUTTON_11 通用游戏手柄按钮 #11
KEYCODE_BUTTON_12 通用游戏手柄按钮 #12
KEYCODE_BUTTON_13 通用游戏手柄按钮 #13
KEYCODE_BUTTON_14 通用游戏手柄按钮 #14
KEYCODE_BUTTON_15 通用游戏手柄按钮 #15
KEYCODE_BUTTON_16 通用游戏手柄按钮 #16
KEYCODE_BUTTON_A 游戏手柄按钮 A
KEYCODE_BUTTON_B 游戏手柄按钮 B
KEYCODE_BUTTON_C 游戏手柄按钮 C
KEYCODE_BUTTON_X 游戏手柄按钮 X
KEYCODE_BUTTON_Y 游戏手柄按钮 Y
KEYCODE_BUTTON_Z 游戏手柄按钮 Z
KEYCODE_BUTTON_L1 游戏手柄按钮 L1
KEYCODE_BUTTON_L2 游戏手柄按钮 L2
KEYCODE_BUTTON_R1 游戏手柄按钮 R1
KEYCODE_BUTTON_R2 游戏手柄按钮 R2
KEYCODE_BUTTON_MODE 游戏手柄按钮 Mode
KEYCODE_BUTTON_SELECT 游戏手柄按钮 Select
KEYCODE_BUTTON_START 游戏手柄按钮 Start
KEYCODE_BUTTON_THUMBL Left Thumb Button
KEYCODE_BUTTON_THUMBR Right Thumb Button

待查

KEYCODE_NUM

按键Number modifier

KEYCODE_INFO

按键Info

KEYCODE_APP_SWITCH

按键App switch

KEYCODE_BOOKMARK

按键Bookmark

KEYCODE_AVR_INPUT

按键A/V Receiver input

KEYCODE_AVR_POWER

按键A/V Receiver power

KEYCODE_CAPTIONS

按键Toggle captions

KEYCODE_CHANNEL_DOWN

按键Channel down

KEYCODE_CHANNEL_UP

按键Channel up

KEYCODE_CLEAR

按键Clear

KEYCODE_DVR

按键DVR

KEYCODE_ENVELOPE

按键Envelope special function

KEYCODE_EXPLORER

按键Explorer special function

KEYCODE_FORWARD

按键Forward

KEYCODE_FORWARD_DEL

按键Forward Delete

KEYCODE_FUNCTION

按键Function modifier

KEYCODE_GUIDE

按键Guide

KEYCODE_HEADSETHOOK

按键Headset Hook

KEYCODE_META_LEFT

按键Left Meta modifier

KEYCODE_META_RIGHT

按键Right Meta modifier

KEYCODE_PICTSYMBOLS

按键Picture Symbols modifier

KEYCODE_PROG_BLUE

按键Blue “programmable”

KEYCODE_PROG_GREEN

按键Green “programmable”

KEYCODE_PROG_RED

按键Red “programmable”

KEYCODE_PROG_YELLOW

按键Yellow “programmable”

KEYCODE_SETTINGS

按键Settings

KEYCODE_SOFT_LEFT

按键Soft Left

KEYCODE_SOFT_RIGHT

按键Soft Right

KEYCODE_STB_INPUT

按键Set-top-box input

KEYCODE_STB_POWER

按键Set-top-box power

KEYCODE_SWITCH_CHARSET

按键Switch Charset modifier

KEYCODE_SYM

按键Symbol modifier

KEYCODE_SYSRQ

按键System Request / Print Screen

KEYCODE_TV

按键TV

KEYCODE_TV_INPUT

按键TV input

KEYCODE_TV_POWER

按键TV power

KEYCODE_WINDOW

按键Window

KEYCODE_UNKNOWN

未知按键

二十七、adb 修改系统时间

(注意把时间获取改为手动,不然可能联网会自动获取更新时间)

1、修改前提

       获取系统root权限,然后adb shell进入shell界面

adb shell
su

 

 2、时区设置

cat /data/property/persist.sys.timezone //查看当前时区配置文件
setprop persist.sys.timezone GMT        //修改属性 

3、设置日期和时间

date -s "yyyymmdd.hhmmss"
date -s "20161010.120000"

 

4、查看日期和时间

date

二十八、Android 后台自动记录机器上所有的 log 日志( .sh文件)

1、把下面的代码保存为 .sh 文件

#!/system/bin/sh

# if [ ! -f /system/etc/wm_size_setting_flag ]; then
wm size 3840x1080
# echo "pf" > /system/etc/wm_size_setting_flag
# fi

LOG_DEST=/sdcard/log
if [ ! -d ${LOG_DEST} ]; then
    mkdir -p ${LOG_DEST}
fi
time=$(date "+%Y%m%d%H%M%S")
logcat -b kernel > ${LOG_DEST}/${time}_kernel.log | logcat > ${LOG_DEST}/${time}_system.log

#echo 0 > /dev/MicroUsb_dev

#cp /system/etc/AL371_2560x720_v1.8.dfu /data/media/0/Download/



2、操作步骤说明

1.adb push run_wm_size.sh /system/etc
2.adb shell chomd 777 /system/etc/xxxxxx.sh
3.adb shell 
4./system/etc/xxxxxx.sh

二十九、adb 命令打开 设置界面

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

三十、adb 打开默认 lancher 界面

adb shell am start -n com.android.launcher3/com.android.launcher3.Launcher

三十一、adb 获取设备的 Android 版本,或者 Android API 版本

adb shell

getprop ro.build.version.release                  Android 版本

getprop ro.build.version.sdk                        Android API 版本

三十二、adb 在手机执行 bin 文件

1、把对应的文件拷贝到 data(或者 system)文件夹下
adb push   binfile  /data/

2、添加执行权限
adb shell chmod 777  /data/binfile  

3、运行 bin 文件 ( /mnt/sdcard/ 可以省略(这里是把日志保存到sdcard卡))
adb shell /data/recorder   /mnt/sdcard/

三十三、adb wifi 连接手机操作

首先先了解一点底层的知识:

    Android系统底层运行着一个服务(adbd),用于响应和管理大家在电脑端的adb命令连接,这个服务在启动时会根据手机的配置监听USB连接或网络其中之一。配置的属性为:service.adb.tcp.port,也就是监听的网络端口

  • 以上属性的值 > 0:adbd将监听网络对应的端口(一般为5555)
  • 以上属性的值 <=-1:adbd将监听USB 

接下来是连接步骤:

命令行输入:adb connect (ip):5555

提示:unable to connect to (ip):5555

解决办法:

   1)手机与PC相连,执行以下命令:adb tcpip 5555

     成功提示:restarting in TCP mode port 5555   

   然后断开USB

     错误提示:error:device not found

     查看手机USB调试是否打开;PC端是否安装手机驱动。

   2)接着执行adb connect (ip):5555,这时候应该就能连接成功了

     成功提示:connected to (ip):5555

三十四、一览命令总结

===============================================
===============================================
附:

其他常用adb指令:

1.adb install +包名       adb安装apk (覆盖安装是使用 -r 选项)

2.adb uninstall +包名      adb卸载apk

3.adb connect +设备IP      网络连接Android设备

4.adb reboot       重启Android设备

5.adb devices      获取连接的设备列表及设备状态

6.adb get-state    获取设备的状态 (设备的状态有 3 钟,device:设备正常连接 , offline:连接出现异常,设备无响应 , unknown:没有连接设备)

7.查看运行在 Android设备上的 adb 后台进程:

执行 adb shell ps | grep adbd ,可以找到该后台进程,windows 请使用 findstr 替代 grep

即为 adb shell ps | findstr adbd


8.adb shell 命令 

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

8.1. adb shell  bugreport , 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误

输出比较多,建议重定向到一个文件中

adb shell dumpsys > d:\bugreport.log

8.2 pm
Package Manager , 可以用获取到一些安装在 Android 设备上得应用信息

8.2.1  adb shell pm list package      列出所有的应用的包名 (-s:列出系统应用  -3:列出第三方应用 -f:列出应用包名及对应的apk名及存放位置  -i:列出应用包名及其安装来源)

8.2.2  adb shell pm path+包名     列出对应包名.apk 位置

8.2.3  adb shell pm install +apk存放路径   安装应用(目标 apk 存放于PC端,用 adb install 安装   目标 apk 存放于Android设备上,用 pm install 安装)

8.3 am

8.3.1 adb shell  am start +包名/.Activity (要启动的Activity)     启动一个 Activity (-s先停止目标应用,再启动  -w 等待应用完成启动  -a 启动默认浏览器打开一个网页例:adb shell am start -a android.intent.action.VIEW -d http://testerhome.com)
例如:adb shell am start com.xx.xxx/.MainActivity

8.3.2  adb shell am monitor        监控 crash 与 ANR

8.3.3  adb shell am force-stop    后跟包名,结束应用

8.3.4  adb shell am startservice    启动一个服务

8.3.5  adb shell am broadcast       发送一个广播

8.4 input

这个命令可以向 Android 设备发送按键事件

8.4.1 adb shell input text +具体内容    发送文本内容,不能发送中文 

8.4.2 adb shell input keyevent + 按键事件   发送按键事件 例如:adb shell input keyevent KEYCODE_HOME 模拟按下Home键

8.4.3 adb shell input tap +触摸事件的位置 , 对屏幕发送一个触摸事件 例如:点击屏幕上坐标为 500 500 的位置(adb shell input tap 500 500)

8.4.4 adb shell input tap , 对屏幕发送一个触摸事件

8.4.4 adb shell input swipe   滑动事件  例如:从右往左滑动屏幕 

adb shell input swipe 800 600 100 600

8.5 screencap 

截图命令

adb shell screencap -p /sdcard/DCIM/screenTest.png

8.6 screenrecord

4.4以上系统版本新增的录制命令

adb shell screenrecord /sdcard/demo.mp4

执行命令后操作手机,ctrl + c 结束录制,录制结果保存至 sdcard/ 下

8.7 ime 

列出设备上的输入法 

adb shell ime list -s

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

猜你喜欢

转载自blog.csdn.net/u014361280/article/details/91049005#comments_21956737