myfreax

如何在ubuntu下使用adb连接android手机

在windows下连接手机的软件很多,但是在linux下就会显有些苍白了,相信使用linux的人都是不一般的人,都会走些非同寻常的路。接下我们看看如何在ubuntu下如何使用adb连接到android手机,正常情况下这会非常简单

3 min read
By myfreax
如何在ubuntu下使用adb连接android手机

在windows下连接手机的软件很多,但是在linux下就会显有些苍白了,相信使用linux的人都是不一般的人,都会走些非同寻常的路。

接下我们看看如何在ubuntu下如何使用adb连接到android手机,正常情况下这会非常简单。

安装android-tools-adb

sudo apt update
sudo apt install android-tools-adb android-tools-fastboot

开启开发者模式

接下来你需要将手机开启开发者模式。打开你的Android手机的设置,找到关于关于手机或者 关于设备  (手机厂商命名可能不一致),然后点击版本号7次,这时手机就会进入开发者模式


现在回到设置,你会看到一个名为开发者选项 的选项,点击该选项,在里面找到USB调试并启用它

启动adb服务

adb start-server

检查是否已连接到手机

可以使用adb devices命令来检查设备是否已正常连接,在正常的情况下,你应该在终端看到以下输出,其中会包括你的手机部分信息,比如型号,其它手机不清楚

adb devices
List of devices attached 
NX507J	device

如果你未正常连接到手机,看看你是否遇到下面列出的错误

解决连接的错误

???????????? no permissions
adb devices
List of devices attached 
????????????	no permissions

这是因为当前用户组没有权限访问设备,把当前用户加入到plugdev组

➜  ~ sudo  useradd -G plugdev $USER

再次使用 adb devices 命令验证是否正确

adb devices

如果还是没有权限检查设备id并创建udev规则

➜  ~  lsusb
Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 0930:6545 Toshiba Corp. Kingston DataTraveler 102/2.0 / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick
Bus 003 Device 003: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 003 Device 002: ID 17ef:602d Lenovo 
Bus 003 Device 006: ID 19d2:ffc1 ZTE WCDMA Technologies MSM 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

创建udev规则 /etc/udev/rules.d/51-android.rules

sudo mkdir -p /etc/udev/rules.d/
sudo touch /etc/udev/rules.d/51-android.rules
sudo gedit /etc/udev/rules.d/51-android.rules

粘贴以下内容

SUBSYSTEM=="usb", ATTRS{idVendor}=="19d2", MODE="0666", GROUP="plugdev" 
注意:设备的id与ATTRS{idVendor}的值对应

改变规则文件的权限

sudo chmod a+r /etc/udev/rules.d/51-android.rules

重载规则并重启udev服务

sudo udevadm control --reload-rules
sudo service udev restart
sudo udevadm trigger

再次使用adb devices命令验证是否正确,然后你可以使用以下命令登录到手机进行操作

adb shell
参考文档