我有Pulse U8220手机,我正在进行Android开发。最近我开始在Ubuntu上遇到Eclipse问题,因为Eclipse拒绝在我的设备上运行/调试程序(我不知道为什么)。过去这曾经对我有用。
我已经完成了最重要的步骤:
/etc/udev/rules.d/50-android.rules
并包含SYSFS{idVendor}=="12d1"
sudo adb kill-server && sudo asb start-server
但这些都没有解决Eclipse中的问题。请注意, adb 本身可以正常运行。
每当我尝试在设备上运行Eclipse中的应用程序(Eclipse显示为“在线”)时,控制台会列出以下内容:
[2011-03-15 15:45:45 - myapp] Android Launch!
[2011-03-15 15:45:45 - myapp] adb is running normally.
[2011-03-15 15:45:45 - myapp] Performing my.app.Activity activity launch
[2011-03-15 15:45:45 - myapp] Automatic Target Mode: Unable to detect device compatibility. Please select a target device.
[2011-03-15 15:45:47 - myapp] WARNING: Unknown device API version!
[2011-03-15 15:45:47 - myapp] Uploading myapp.apk onto device '????????????'
[2011-03-15 15:45:47 - myapp] Failed to install myapp.apk on device '????????????': adb rejected install command with: device not found
[2011-03-15 15:45:47 - myapp] com.android.ddmlib.AdbCommandRejectedException: device not found
[2011-03-15 15:45:47 - myapp] Launch canceled!
但是,我仍然可以使用控制台中的 adb 安装应用程序,如下所示:
$ ant install
...
[echo] Installing /projects/myapp/bin/myapp-debug.apk onto default emulator or device...
[exec] 154 KB/s (88178 bytes in 0.558s)
[exec] pkg: /data/local/tmp/myapp-debug.apk
[exec] Success
它在台式机上的Windows上正常工作,我必须安装USB驱动程序,但我主要在我的Ubuntu笔记本电脑上工作。我觉得这个可能与这个事实有关,我的设备有一个奇怪的'连续'号码 - '????????????'。
有人有这个问题吗?有没有人设法解决它?是否有可能调试Android应用程序,那是不是在Eclipse中启动?
已解决:感谢PaulB指示我the Modaco forum,我在其中找到了修补 adb 的链接,该链接正确处理了没有序列号的设备。不需要其他修改和命令。现在,我也可以在Ubuntu上运行和调试Eclipse中的应用程序。
答案 0 :(得分:3)
这是ubntu上adb的常见问题,您作为用户无权访问通过USB连接的手机。要解决这个问题,你有两种可能性,首先是快速破解:
(1)sudo $ANDROID_HOME/tools/adb kill-server && sudo $ANDROID_HOME/tools/adb start-server
在一个终端。但每次启动ubuntu时都必须这样做。
(2)设置适当的访问权限:
创建文件/etc/udev/rules.d/51-android.rules
:
SUBSYSTEM=="usb", SYSFS{idVendor}=="19d2", SYSFS{idProduct}=="1354", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", SYSFS{idProduct}=="d00d", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", SYSFS{idProduct}=="0c87", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="1004", SYSFS{idProduct}=="618e", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="04e8", SYSFS{idProduct}=="681c", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", SYSFS{idProduct}=="4e12", MODE="0666"
然后重新启动你的ubuntu。这增加了一些常见的HTC设备(包括Nexus One)。
答案 1 :(得分:2)
也许您需要这样做:usb_modeswitch -W -v 12d1 -p 1030 -V 12d1 -P 1034 -M "5553424370ab71890600000080010a11060000000000000000000000000000" -s 20
答案 2 :(得分:0)
是的,我的HTC出现了类似的问题,显示为??????????我为我的HTC搜索了udev / rules.d的修复程序。对我来说这是一个权限问题,udev / rules.d修复了这个问题,我的设备现在显示在ddms和Eclipse中。这是我在“/etc/udev/rules.d/51-android.rules”文件中放置的内容
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEMS ==“usb”,ATTRS {idVendor} ==“0bb4”,ATTRS {idProduct} ==“0ff9”,MODE =“0666”,OWNER =“apesa”#Normal Heroc SUBSYSTEMS ==“usb”,ATTRS {idVendor} ==“0bb4”,ATTRS {idProduct} ==“0c9a”,MODE =“0666”,OWNER =“apesa”#Debug&恢复Heroc SUBSYSTEMS ==“usb”,ATTRS {idVendor} ==“0bb4”,ATTRS {idProduct} ==“0fff”,MODE =“0666”,OWNER =“apesa”#Fastboot Heroc
BTW:我正在运行相同的设置。
答案 3 :(得分:0)
我有同样的问题,现在我解决了,
你需要一个新的adb文件而不是google Provide 下载链接:http://download.csdn.net/download/qq280948982/3791652
中国人修改它。如果您没有scdn帐户,可以联系我