===============================
我不想使用Eclipse。
从命令行:
模拟器正在运行。 adb服务器正在运行。 “adb devices”列出正确,我可以在输出中的avd上看到我的实例。
但是,当我从命令行手动启动DDMS时,它只是继续尝试连接。我找不到连接配置问题。
任何建议(除了“使用Eclipse”之外)最受欢迎!
(是的,它可以在eclipse中运行,ddms显示线程等)
系统:Debian Squeeze
更新:我运行了update-java-alternatives以确保为“Java(TM)SE运行时环境(版本1.6.0_20-b02)”正确设置了java。对于经验丰富的Debian用户来说,我的Java现在更糟糕了......当我从命令行运行ddms时,我得到: -
(ddms:9326): Gdk-WARNING **: gdk_window_set_icon_list: icons too large
04:29 E/ddms: Failed to reopen debug port for Selected Client to: 8700
04:29 E/ddms: Invalid argument
java.net.SocketException: Invalid argument
at sun.nio.ch.Net.bind(Native Method)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:119)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:52)
at com.android.ddmlib.MonitorThread.reopenDebugSelectedPort(MonitorThread.java:716)
at com.android.ddmlib.MonitorThread.run(MonitorThread.java:226)
04:29 E/DeviceMonitor: Connection attempts: 1
04:30 E/DeviceMonitor: Connection attempts: 2
04:31 E/DeviceMonitor: Connection attempts: 3
04:32 E/DeviceMonitor: Connection attempts: 4
04:33 E/DeviceMonitor: Connection attempts: 5
04:34 E/DeviceMonitor: Connection attempts: 6
答案 0 :(得分:7)
在Debian中,解决方案是强制java使用IPv4。
/etc/sysctl.d/bindv6only.conf
net.ipv6.bindv6only = 0
然后从bash
sudo invoke-rc.d procps restart
另请参阅Debian bug report了解更多详情。
答案 1 :(得分:6)
在eclipse.ini中的某处添加此行帮助了我:
-Djava.net.preferIPv4Stack=true
指令名称不言自明。
答案 2 :(得分:0)
我也遇到过这个问题。我总是发现,如果你在连接设备,运行模拟器或启动ddms之前先关闭eclipse,一切都运行正常。
我认为Eclipse SDK占用连接并阻止ddms访问设备或模拟器。
答案 3 :(得分:0)
IPv4对我不起作用,但在不同的USB端口上插入设备解决了这个问题(通过Android device not showing up in DDMS)