Android adb的常用命令

来源:互联网 发布:恋母情结 知乎 编辑:程序博客网 时间:2024/06/05 20:07

Android为我们提供了一个好工具adb,全称 Android Debug Bridge。下面结合自己在项目中的经历,跟大家分享一下 adb 这个工具一些较常用到的命令。

1.查询有几个android设备连接adb server

>adb devices
List of devices attached
0123456789ABCDEF        device

2.安装某个apk到android设备中

>adb install -r B:\test\6577\PinyinIME.apk
2509 KB/s (1284852 bytes in 0.499s)
        pkg: /data/local/tmp/PinyinIME.apk
Success

-r 表示强制安装,当系统中原本有这个apk时加上这个选项可保证安装了新的apk。

3.从本地复制文件到设备

>adb push B:\test\6577\PinyinIME.apk /data/app
3491 KB/s (1284852 bytes in 0.359s)

4.从设备复制文件到本地

>adb pull /data/app./
pull: building file list...
pull: /data/app/com.android.inputmethod.pinyin-2.apk -> ./com.android.inputmethod.pinyin-2.apk
pull: /data/app/PinyinIME.apk -> ./PinyinIME.apk
pull: /data/app/com.google.android.inputmethod.pinyin-1.apk -> ./com.google.android.inputmethod.pinyin-1.apk
3 files pulled. 0 files skipped.
4766 KB/s (10981224 bytes in 2.249s)

这个命令的意思是把设备中/data/app目录下的所有的apk复制到本地的当前目录下。

5.进入shell

这样,你就可以像在 linux 下面敲命令了。

>adb shell
root@android:/ # logcat

6.重启adb server

>adb kill-server

>adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *

这些命令真的是经常用到的,一定要记住哦~ 

adb还有很多的用法,可以用adb help。

>adb help
Android Debug Bridge version 1.0.26


 -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 <serial number>            - directs command to the USB device or emulator with
                                 the given serial number. 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                       - list all connected devices
 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 ocmmand 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] <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)
  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 help                     - show this help message
  adb version                  - show version num


DATAOPTS:
 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition


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 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.

原创粉丝点击