android开发笔记之adb命令详解

android开发笔记之adb命令详解_第1张图片

adb 命令,开发人员都会或多或少的知道和使用了一些,但是真正对所有的adb命令有一个详细的了解,还是要参考adb 命令说明:

adb所有命令

android@tesdt-Precision-T1700:~$ adb --help
Android Debug Bridge version 1.0.31
 -d                            - directs command to the only connected USB device
                                 returns an error if more than one USB device is present.
 -e                            - directs command to the only running emulator.
                                 returns an error if more than one emulator is running.
 -s <specific device>          - directs command to the device or emulator with the given
                                 serial number or qualifier. Overrides ANDROID_SERIAL
                                 environment variable.
 -p <product name or path>     - simple product name like 'sooner', or
                                 a relative/absolute path to a product
                                 out directory like 'out/target/product/sooner'.
                                 If -p is not specified, the ANDROID_PRODUCT_OUT
                                 environment variable is used, which must
                                 be an absolute path.
 devices [-l]                  - list all connected devices
                                 ('-l' will also list device qualifiers)
 connect <host>[:<port>]       - connect to a device via TCP/IP
                                 Port 5555 is used by default if no port number is specified.
 disconnect [<host>[:<port>]]  - disconnect from a TCP/IP device.
                                 Port 5555 is used by default if no port number is specified.
                                 Using this command with no additional arguments
                                 will disconnect from all connected TCP/IP devices.

device commands:
  adb push <local> <remote>    - copy file/dir to device
  adb pull <remote> [<local>]  - copy file/dir from device
  adb sync [ <directory> ]     - copy host->device only if changed
                                 (-l means list but don't copy)
                                 (see 'adb help all')
  adb shell                    - run remote shell interactively
  adb shell <command>          - run remote shell command
  adb emu <command>            - run emulator console command
  adb logcat [ <filter-spec> ] - View device log
  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of: 
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)
  adb jdwp                     - list PIDs of processes hosting a JDWP transport
  adb install [-l] [-r] [-s] [--algo <algorithm name> --key <hex-encoded key> --iv <hex-encoded iv>] <file>
                               - push this package file to the device and install it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data)
                                 ('-s' means install on SD card instead of internal storage)
                                 ('--algo', '--key', and '--iv' mean the file is encrypted already)
  adb uninstall [-k] <package> - remove this app package from the device
                                 ('-k' means keep the data and cache directories)
  adb bugreport                - return all information from the device
                                 that should be included in a bug report.

  adb backup [-f <file>] [-apk|-noapk] [-shared|-noshared] [-all] [-system|-nosystem] [<packages...>]
                               - write an archive of the device's data to <file>.
                                 If no -f option is supplied then the data is written
                                 to "backup.ab" in the current directory.
                                 (-apk|-noapk enable/disable backup of the .apks themselves
                                    in the archive; the default is noapk.)
                                 (-shared|-noshared enable/disable backup of the device's
                                    shared storage / SD card contents; the default is noshared.)
                                 (-all means to back up all installed applications)
                                 (-system|-nosystem toggles whether -all automatically includes
                                    system applications; the default is to include system apps)
                                 (<packages...> is the list of applications to be backed up.  If
                                    the -all or -shared flags are passed, then the package
                                    list is optional.  Applications explicitly given on the
                                    command line will be included even if -nosystem would
                                    ordinarily cause them to be omitted.)

  adb restore <file>           - restore device contents from the <file> backup archive

  adb help                     - show this help message
  adb version                  - show version num

scripting:
  adb wait-for-device          - block until device is online
  adb start-server             - ensure that there is a server running
  adb kill-server              - kill the server if it is running
  adb get-state                - prints: offline | bootloader | device
  adb get-serialno             - prints: <serial-number>
  adb get-devpath              - prints: <device-path>
  adb status-window            - continuously print device status for a specified device
  adb remount                  - remounts the /system partition on the device read-write
  adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program
  adb reboot-bootloader        - reboots the device into the bootloader
  adb root                     - restarts the adbd daemon with root permissions
  adb usb                      - restarts the adbd daemon listening on USB
  adb tcpip <port>             - restarts the adbd daemon listening on TCP on the specified port
networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PPP connection.
 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
 [parameters] - Eg. defaultroute debug dump local notty usepeerdns

adb sync notes: adb sync [ <directory> ]
  <localdir> can be interpreted in several ways:

  - If <directory> is not specified, both /system and /data partitions will be updated.

  - If it is "system" or "data", only the corresponding partition
    is updated.

environmental variables:
  ADB_TRACE                    - Print debug information. A comma separated list of the following values
                                 1 or all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport, jdwp
  ANDROID_SERIAL               - The serial number to connect to. -s takes priority over this if given.
  ANDROID_LOG_TAGS             - When used with the logcat option, only these debug tags are printed.

常用命令样例:

对于开发者来说,把所有的命令都掌握是不现实,也没有必要。但是我们把常用的开发命令掌握了,就可以应对绝大多数的开发要求了。

adb devices

list all connected devices 显示所有的连接设备

android@tesdt-Precision-T1700:~$ adb devices
List of devices attached 
7841c448    device

android@tesdt-Precision-T1700:~$ adb devices -l
List of devices attached 
7841c448               device usb:1-1.6 product:p7701 model:p7701 device:p7701

adb version

show version num 显示adb 版本号

android@tesdt-Precision-T1700:~$ adb version
Android Debug Bridge version 1.0.31

adb push

adb push <local> <remote> 

copy file/dir to device 把本地文件push到手机中

android@tesdt-Precision-T1700:~$ adb push log.txt /sdcard/
4557 KB/s (823111 bytes in 0.176s)
android@tesdt-Precision-T1700:~$

adb pull

adb pull <remote> [<local>]  

copy file/dir from device 把手机中的文件pull到本地

android@tesdt-Precision-T1700:~$ adb pull /sdcard/log.txt ./
3983 KB/s (823111 bytes in 0.201s)

adb shell

run remote shell interactively 进入shell模式

android@tesdt-Precision-T1700:~$ adb shell
shell@p7701:/ $

adb shell

run remote shell command 执行shell命令

adb shell <command> 
android@tesdt-Precision-T1700:~$ adb shell ls
acct
cache
charger
config
d

adb logcat [ ]

View device log——查看log

adb logcat [ <filter-spec> ] 
adb logcat -v time -b main -b system -b radio -b events > log.txt

adb install

adb install [-l] [-r] [-s] [--algo <algorithm name> --key <hex-encoded key> --iv <hex-encoded iv>] <file>
- push this package file to the device and install it
 ('-l' means forward-lock the app)
 ('-r' means reinstall the app, keeping its data)
 ('-s' means install on SD card instead of internal storage)
 ('--algo', '--key', and '--iv' mean the file is encrypted already)

安装apk

adb install test.apk

adb uninstall

adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories)

删除apk

adb uninstall com.android.cts.verifier

手机开发时,我们先删除对应的apk文件,再删除apk,再安装apk

adb shell
cd data/app
rm apk包
exit
adb uninstall apk包的主包名
adb install -r apk包

adb wait-for-device

block until device is online—-等待设备连接

adb start-server

ensure that there is a server running—启动server

adb kill-server

kill the server if it is running—杀死server

adb remount

remounts the /system partition on the device read-write
进入remount模式

adb reboot

[bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program
启动设备

adb reboot-bootloader

reboots the device into the bootloader
启动设备,进入bootloader模式

adb root

restarts the adbd daemon with root permissions
进入root模式

如果我们有多台手机和模拟器连接,我们想在指定的设备上进行操作,:

-d                      - directs command to the only connected USB device
                                 returns an error if more than one USB device is present.
-e                     - directs command to the only running emulator.
                                 returns an error if more than one emulator is running.
-s <specific device>      - directs command to the device or emulator with the given
                                 serial number or qualifier. Overrides ANDROID_SERIAL
                                 environment variable.
adb -s 7841c448 install test.apk

你可能感兴趣的:(android,adb)