天天记录 - Ubuntu 下搭建Android环境 - Ubuntu配置识别Android手机

来源:互联网 发布:怎样玩游戏挣钱知乎 编辑:程序博客网 时间:2024/04/29 20:34


 Ubuntu识别不到手机,使用adb devices会显示:
List of devices attached
???????????? no permissions


    原因是Ubuntu与Android手机链接需要使用adb,而adb需要root身份运行,Ubuntu默认是使用非root执行命令,既然知道原因了,执行adb前面加一个sudo 赋予权限就可以了


一 基本环境设置
1. Ubuntu安装android sdk,主要是目录下的adb工具(在android-sdk-linux/platform-tools目录下或者把目录添加到环境变量)
2. 手机需要设置调试模式


二  解决方案一(重启电脑后还是识别不到Android手机)

# 关闭adb服务adb kill-server# 使用root权限启动adb服务,必需在adb文件目录下执行sudo ./adb start-server* daemon not running. starting it now on port 5037 ** daemon started successfully *# 查看连接的Android设备adb devices# 输出List of devices attached SH15BTJ31221   device

但是这样有一个问题,每次重启电脑后,还是识别不到手机,必须再次使用sudo 执行adb start-server才行


三 解决方案二(重启后依然可以识别手机)

1. 查看系统中的USB设备,获取idVendor的值

lsusbBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hubBus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching HubBus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching HubBus 003 Device 004: ID 0bb4:0cab High Tech Computer Corp. Bus 001 Device 003: ID 04f2:b2dc Chicony Electronics Co., Ltd Bus 003 Device 005: ID 046d:c05a Logitech, Inc. Optical Mouse M90

其中High Tech Computer Corp 就是我现在插在电脑上的HTC手机使用的USB端口,id 为 0bb4



2.  使用root权限创建51-android.rules文件

sudo gedit /etc/udev/rules.d/51-android.rules     

加入  

SUBSYSTEM== "usb" , ATTR{idVendor}== "填入1中获取的id" , MODE= "0666" , GROUP= "plugdev"  

SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"  


# 添加权限  chmod a+r /etc/udev/rules.d/51-android.rules 


/udev目录解释:
    它主要的功能是管理 /dev 目录底下的设备  ,在启动时识别设备并在/dev创建节点.在系统运行时如果添加了热拔插设备(比如u盘),内核也会通知udev有新设备加入,udev在/dev创建节点以后,就可以用mount挂载到文件系统中使用了.
更多详见:http://zh.wikipedia.org/wiki/Udev     


三 测试,系统是否正常识别
1. 执行以下命令重启

sudo service udev restart# 输出:udev stop/waitingudev start/running, process 9350

adb kill-serveradb start-serveradb devices# 输出List of devices attached SH15BTJ31221   device

如果类似以上输出说明已经配置成功,如果不行的话跟我一样


2 重启计算机后执行adb devices



四 参考资料

1. android 官方文档 Setting up a Device for Development

 

2. Setting Up ADB/USB Drivers for Android Devices in Linux (Ubuntu)




五、完整的支持目前已知所有手机

SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="091e", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="201E", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="109b", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="03f0", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="8087", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="10a9", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="054c", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="2340", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666", GROUP="plugdev"SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0666", GROUP="plugdev"

https://developer.android.com/studio/run/device.html


22d9 oppo

2a45


原创粉丝点击