由于某些原因需要手动的使用adb命令去卸载掉手机本身的包文件,当使用adb命令时却报错
command not found:gradle/adb
这件让我本以为很简单的事情,搞了将近两个小时才搞定,问题出在什么地方呢,通过查阅资料好多教程mac 安装adb的都只是浅尝辄止或者不清不楚的搞的我有点懵
1、打开mac终端或者启动 Android Studio 的Terminal
2、进入当前用户home目录
echo $HOME
3、创建.bash_profile文件
touch .bash_profile
4、打开.bash_profile文件
open -e .bash_profile
5、在打开的.bash_profile文件中编辑如下:
可以在Tools-SDK Manager中查看sdk路径,如下图所示
export PATH=${PATH}:你电脑sdk的路径/tools:你电脑sdk的路径platform-tools
//例如我的电脑就是:
export PATH=${PATH}:/Users/jiang/Library/Android/sdk/tools:~/Library/Android/sdk/platform-tools
6、执行命令
source .bash_profile
7、可以输入下面的命令来判断是否配置成功
adb version
8、出现版本信息则配置成功
####adb命令:
adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过 adb 我们可以在IDE中通过DDMS来调试Android程序,其实也就是debug工具。
Android Debug Bridge version 1.0.40
Version 4797878
Installed as /Users/shenfan/Library/Android/sdk/platform-tools/adb
global options:
-a listen on all network interfaces, not just localhost
-d use USB device (error if multiple devices connected)
-e use TCP/IP device (error if multiple TCP/IP devices available)
-s SERIAL use device with given serial (overrides $ANDROID_SERIAL)
-t ID use device with given transport id
-H name of adb server host [default=localhost]
-P port of adb server [default=5037]
-L SOCKET listen on given socket for adb server [default=tcp:localhost:5037]
general commands:
devices [-l] list connected devices (-l for long output)
help show this help message
version show version num
networking:
connect HOST[:PORT] connect to a device via TCP/IP [default port=5555]
disconnect [HOST[:PORT]]
disconnect from given TCP/IP device [default port=5555], or all
forward --list list all forward socket connections
forward [–no-rebind] LOCAL REMOTE
forward socket connection using:
tcp: ( may be “tcp:0” to pick any open port)
localabstract:
localreserved:
localfilesystem:
dev:
jdwp: (remote only)
forward --remove LOCAL remove specific forward socket connection
forward --remove-all remove all forward socket connections
ppp TTY [PARAMETER…] run PPP over USB
reverse --list list all reverse socket connections from device
reverse [–no-rebind] REMOTE LOCAL
reverse socket connection using:
tcp: ( may be “tcp:0” to pick any open port)
localabstract:
localreserved:
localfilesystem:
reverse --remove REMOTE remove specific reverse socket connection
reverse --remove-all remove all reverse socket connections from device
file transfer:
push [–sync] LOCAL… REMOTE
copy local files/directories to device
–sync: only push files that are newer on the host than the device
pull [-a] REMOTE… LOCAL
copy files/dirs from device
-a: preserve file timestamp and mode
sync [all|data|odm|oem|product|system|vendor]
sync a local build from $ANDROID_PRODUCT_OUT to the device (default all)
-l: list but don’t copy
shell:
shell [-e ESCAPE] [-n] [-Tt] [-x] [COMMAND…]
run remote shell command (interactive shell if no command given)
-e: choose escape character, or “none”; default ‘~’
-n: don’t read from stdin
-T: disable PTY allocation
-t: force PTY allocation
-x: disable remote exit codes and stdout/stderr separation
emu COMMAND run emulator console command
app installation:
install [-lrtsdg] [–instant] PACKAGE
install-multiple [-lrtsdpg] [–instant] PACKAGE…
push package(s) to the device and install them
-l: forward lock application
-r: replace existing application
-t: allow test packages
-s: install application on sdcard
-d: allow version code downgrade (debuggable packages only)
-p: partial application install (install-multiple only)
-g: grant all runtime permissions
–instant: cause the app to be installed as an ephemeral install app
uninstall [-k] PACKAGE
remove this app package from the device
‘-k’: keep the data and cache directories
backup/restore:
to show usage run “adb shell bu help”
debugging:
bugreport [PATH]
write bugreport to given PATH [default=bugreport.zip];
if PATH is a directory, the bug report is saved in that directory.
devices that don’t support zipped bug reports output to stdout.
jdwp list pids of processes hosting a JDWP transport
logcat show device log (logcat --help for more)
security:
disable-verity disable dm-verity checking on userdebug builds
enable-verity re-enable dm-verity checking on userdebug builds
keygen FILE
generate adb public/private key; private key stored in FILE,
public key stored in FILE.pub (existing files overwritten)
scripting:
wait-for[-TRANSPORT]-STATE
wait for device to be in the given state
State: device, recovery, sideload, or bootloader
Transport: usb, local, or any [default=any]
get-state print offline | bootloader | device
get-serialno print
get-devpath print
remount remount partitions read-write
reboot [bootloader|recovery|sideload|sideload-auto-reboot]
reboot the device; defaults to booting system image but
supports bootloader and recovery too. sideload reboots
into recovery and automatically starts sideload mode,
sideload-auto-reboot is the same but reboots after sideloading.
sideload OTAPACKAGE sideload the given full OTA package
root restart adbd with root permissions
unroot restart adbd without root permissions
usb restart adb server listening on USB
tcpip PORT restart adb server listening on TCP on PORT
internal debugging:
start-server ensure that there is a server running
kill-server kill the server if it is running
reconnect kick connection from host side to force reconnect
reconnect device kick connection from device side to force reconnect
reconnect offline reset offline/unauthorized devices to force reconnect
environment variables:
$ADB_TRACE
comma-separated list of debug info to log:
all,adb,sockets,packets,rwx,usb,sync,sysdeps,transport,jdwp
$ADB_VENDOR_KEYS colon-separated list of keys (files or directories)
$ANDROID_SERIAL serial number to connect to (see -s)
$ANDROID_LOG_TAGS tags to be used by logcat (see logcat --help)
####adb 常用命令:
查看adb版本: adb version
查看所有设备: adb devices
安装指定apk: adb install
卸载指定包 : adb uninstall
连接设备 : adb connect [[:]](默认端口号是:5555)
断开设备: disconnect [[:]]
执行远程的shell:adb shell
执行远程shell命令: adb shell
拷贝文件到设备上: adb push
从设备中拷贝文件:adb pull []
查看设备所有信息: adb bugreport(包括 bug 报告)