ubuntu连接android设备(附最简单方法)

简介: 在ubuntu下连接android设备,虽然不用像windows那样安装驱动,然而却会遇见一个错误:输入adb shell,会提示insufficient permissions for device,输入adb devices,设备名称会显示 ????????等一大堆问号。

在ubuntu下连接android设备,虽然不用像windows那样安装驱动,然而却会遇见一个错误:输入adb shell,会提示insufficient permissions for device,输入adb devices,设备名称会显示 ????????等一大堆问号。

这是因为ubuntu默认是以非root用户运行的。如果要使用adb 进行usb调试,使用root账号去执行相关命令固然可以进入adb shell,但是却太麻烦。

另一种方法是配置udev的规则。方法如下:

1、输入lsusb,查看设备的ID号。如我的输出内容如下:

Bus 002 Device 008: ID 0bb4:0d02 High Tech Computer Corp.
Bus 008 Device 002: ID 046d:c52e Logitech, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

其中Bus 002 Device 008: ID 0bb4:0d02 High Tech Computer Corp.这一行就是我的HTC手机的USB使用端口了。记住中间的这两个ID:0bb4和0d02。

2、sudo vi /etc/udev/rules.d/70-android.rules

如果没有这个文件,可以创建,然后加入以下内容

SUBSYSTEM=="usb",ATTRS{idVendor}=="0bb4",ATTRS{idProduct}=="0d02",MODE="0666"

3、修改权限

sudo chmod a+rx /etc/udev/rules.d/70-android.rules

4、重启udev 服务:

sudo service udev restart

5、重启adb server。

重连设备,然后执行sudo ./adb kill-server

adb start-server

然后看看adb devices是否已经已经正常显示出设备的名称了。


PS:

最新修改方法,不用去看设备的ID,直接在rules.d下增加一个文件51-android.rules,内容为:

SUBSYSTEM=="usb" ENV{DEVTYPE}=="usb_device", MODE="0666"
目前通用于所有android设备。保存后如上面的步骤修改权限,重启udev和adb,然后重新插上手机就可以了。

目录
相关文章
|
18天前
|
Ubuntu
虚拟机Ubuntu连接不了网络的解决方法
虚拟机Ubuntu连接不了网络的解决方法
|
1月前
|
Ubuntu 网络协议 Java
【Android平板编程】远程Ubuntu服务器code-server编程写代码
【Android平板编程】远程Ubuntu服务器code-server编程写代码
|
2月前
|
Android开发
如何用Airtest脚本无线连接Android设备?
如何用Airtest脚本无线连接Android设备?
|
1月前
|
Ubuntu 关系型数据库 MySQL
【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)
【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)
|
3月前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
61 0
|
6天前
|
编解码 人工智能 测试技术
安卓适配性策略:确保应用在不同设备上的兼容性
【4月更文挑战第13天】本文探讨了提升安卓应用兼容性的策略,包括理解平台碎片化、设计响应式UI(使用dp单位,考虑横竖屏)、利用Android SDK的兼容工具(支持库、资源限定符)、编写兼容性代码(运行时权限、设备特性检查)以及优化性能以适应低端设备。适配性是安卓开发的关键,通过这些方法可确保应用在多样化设备上提供一致体验。未来,自动化测试和AI将助力应对设备碎片化挑战。
|
17天前
|
Android开发
Android调用相机与相册的方法2
Android调用相机与相册的方法
17 0
|
1月前
|
Shell 开发工具 Android开发
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
462 2
|
1月前
|
Ubuntu 网络协议 Java
在Android平板上使用code-server公网远程Ubuntu服务器编程
在Android平板上使用code-server公网远程Ubuntu服务器编程
|
2月前
|
Ubuntu 网络协议 Linux
【Linux】Android平板上远程连接Ubuntu服务器code-server进行代码开发
【Linux】Android平板上远程连接Ubuntu服务器code-server进行代码开发
49 0