刚刚拿到了预装了 Ubuntu Touch 的魅族 MX4。我已经使用 Ubuntu SDK 有一段时间了,今天我尝试在设备上部署一个简单的应用程序。
但是,我的几台计算机(均运行 Ubuntu 14.04)无法连接到手机。我的意思是,当我通过 USB 将手机连接到桌面时,Ubuntu SDK 不会在设备选项卡中列出该设备。我尝试过以下方法:
- “adb devices”不会显示任何列出的设备(我已在不同的计算机上尝试过不同的 USB 端口,并且守护进程正在手机上运行)
- 我已成功通过 SSH 登录。SDK 具有测试 SSH 连接和列出进程的功能,因此这可行。我还将自己的(非 QT)公钥从终端传输到 SSH。
- 开发者模式肯定已开启
答案1
正如@Maarten Klop 所建议的,将供应商 ID 添加到 adb_usb.ini 似乎有帮助:
mat@ACA80164:~$ cat .android/adb_usb.ini
# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x2a45
执行此操作后:
mat@ACA80164:~$ adb devices
List of devices attached
750ABLMPX44Y device
mat@ACA80164:~$ adb shell
phablet@ubuntu-phablet:~$ ls
Documents Downloads Music Pictures Videos
这在我的 MacBook 上运行良好,但在我的 Ubuntu Raspberry Pi 上运行效果却不太好。
答案2
除了添加供应商 USB ID 之外:
vi ~/.android/adb_usb.ini
0x2a45
我还需要:
vi /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTRS{idVendor}=="2a45", MODE="0664" GROUP="plugdev"
udevadm control --reload
udevadm trigger
我重新启动了 adb 服务器并且它工作正常。