参考网上连接:https://blog.csdn.net/xiaoma_bk/article/details/80986221
adb工具的安装:
在ubuntu命令行中执行指令:apt-get install android-tools-adb
通过lsusb查看接入ubuntu的设备:lsusb
Bus 001 Device 016: ID 18d1:d002 Google Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
创建adb_usb.ini文件,写入android设备的VID:
cd ~/.android
touch adb_usb.ini
在adb_usb.ini文件中写入以下内容:
0x18d1
添加权限:
创建权限文件:touch /etc/udev/rules.d/70-android.rules
在70-android.rules文件中写入一下内容:
UBSYSTEM=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="d002", MODE="0666"
重启USB服务:
chmod 666 /etc/udev/rules.d/70-android.rules
service udev restart
重启adb服务:
adb kill-server
adb start-server
查看adb设备:
adb devices
如没特殊提示应表示adb安装成功;
adb的常用指令:
adb help //查看adb的命令帮助
adb devices //查看设备
adb shell //进终端
adb kill-server //杀死进程
adb kill-server //重启adb服务
adb start-server
adb push 本地路径 目标路径 //上传文件到安卓设备
adb pull 目标路径 本地路径 //从安卓设备下载文件到ubuntu
Android Debug Bridge version 1.0.31
-a - directs adb to listen on all interfaces for a connection
-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 or qualifier. Overrides ANDROID_SERIAL
environment variable.
-p
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.
-H - Name of adb server host (default: localhost)
-P - Port of adb server (default: 5037)
devices [-l] - list all connected devices
('-l' will also list device qualifiers)
connect
Port 5555 is used by default if no port number is specified.
disconnect [
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
adb pull
adb sync [
(-l means list but don't copy)
(see 'adb help all')
adb shell - run remote shell interactively
adb shell
adb emu
adb logcat [
adb forward --list - list all forward socket connections.
the format is a list of lines with the following format:
adb forward
forward specs are one of:
tcp:
localabstract:
localreserved:
localfilesystem:
dev:
jdwp:
adb forward --no-rebind
- same as 'adb forward
if
adb forward --remove
adb forward --remove-all - remove all forward socket connections
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-l] [-r] [-s] [--algo
- 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]
('-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
- write an archive of the device's data to
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)
(
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
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:
adb get-devpath - prints:
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
networking:
adb ppp
Note: you should not automatically start a PPP connection.
[parameters] - Eg. defaultroute debug dump local notty usepeerdns
adb sync notes: adb sync [
- If
- 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.