5

我刚刚开始学习Android开发。我使用 Ubuntu 11.10 和 Eclipse。我已经从 android 开发中安装了所需的插件,并且我还编写了一些在模拟器上编译和运行良好的示例。

但是不能在模拟器上测试多点触控,所以我想在我真正的三星 Galaxy S2 设备上测试它们。问题是我已经尝试了我在网上找到的所有东西,但仍然无法使用它。

当我运行 ./adb devices 时,它确实没有显示,尽管设备已连接。

$ lsusb
...
Bus 001 Device 012: ID 04e8:6860 Samsung Electronics Co., Ltd 
$ ./adb devices
List of devices attached 

我已经按照网络上的说明以不同的方式修改了 /etc/udev/rules.d/51-android.rules 多次,但它们都没有任何区别。目前我有这行:

SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", ATTRS{idProduct}="6860", MODE="0666", GROUP="plugdev"

当然我试过重启udev和adb服务,甚至重启整个系统,但也没有用。

有什么提示吗?

非常感谢提前,

4

5 回答 5

7

从设置 -> 应用程序 -> 开发中启用设备上的 USB 调试

于 2012-04-25T05:26:03.827 回答
3

试试三星 kies,它提供了合适的 ADB 驱动程序:http: //www.samsung.com/uk/support/usefulsoftware/KIES/JSP

使用正确的 adb 驱动程序(来自 kies 或其他地方),它应该可以完美运行

编辑:在 linux 上:http: //developer.android.com/tools/device.html

如果您在 Ubuntu Linux 上进行开发,则需要添加一个 udev 规则文件,其中包含您要用于开发的每种设备类型的 USB 配置。在规则文件中,每个设备制造商都由唯一的供应商 ID 标识,由 ATTR{idVendor} 属性指定。有关供应商 ID 的列表,请参阅下面的 USB 供应商 ID。要在 Ubuntu Linux 上设置设备检测: 以 root 身份登录并创建此文件:/etc/udev/rules.d/51-android.rules。使用此格式将每个供应商添加到文件中:SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"

在此示例中,供应商 ID 用于 HTC。MODE 分配指定读/写权限,而 GROUP 定义哪个 Unix 组拥有设备节点。注意:规则语法可能会因您的环境而略有不同。根据需要查阅适用于您系统的 udev 文档。有关规则语法的概述,请参阅编写 udev 规则的指南。现在执行: chmod a+r /etc/udev/rules.d/51-android.rules

于 2012-04-24T15:02:07.710 回答
0

尝试另一根 USB 数据线

如果有可能,请检查它是否适用于其他设备

本地化您的问题,确保软件有问题(如果有)

于 2012-04-24T15:00:59.130 回答
0

从终端执行以下命令

$ echo "0x04e8" >> ~/.android/adb_usb.ini

并使用重新启动 adb

$ adb kill-server
$ adb start-server

检查设备是否列出使用adb devices

于 2012-04-24T15:09:09.547 回答
0

我在带有 Eclipse 的 Mac OS X 上遇到了同样的问题。简单地将手机置于“调试”模式(设置 -> 应用程序 -> 开发 -> USB 调试)并不能解决问题。我必须在命令行中执行以下操作才能解决问题。

sudo adb kill-server
sudo adb start-server
于 2012-11-13T04:28:26.203 回答