无法打开调试器端口:java.nett.ocketException“套接字关闭”如何解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (24)

尝试在Android Studio(v.0.4.4)上调试Android应用时出现此错误:

Error running <appname> [assembleDebug]: 
Unable to open debugger port : java.net.SocketException "Socket closed"

该应用程序编译,并可以使用adb推送到手机。adb没有问题; 我可以完美地安装/监视logcat等。我可以加载另一个项目,并可以调试它就好了。我切换回这一个,它仍然是坏的。所以这似乎排除了与PC(实际上是在Windows下运行的Linux虚拟机),Android Studio安装等问题。我已经重新启动了这个虚拟机和主机电脑。

去年我遇到了这个问题,我“修复了它”,然后卸载了Eclipse(我怀疑它可能试图获得相同的套接字)。

我花了一些时间搜索和尝试建议,但他们没有任何区别。

这个问题发生在我制作一个经过签名的编译发布版本的时候。在那之前,我只能运行调试版本。不过,我相信我所做的只是编辑build.gradle并将Android Studio配置为自动签署apks。我已经恢复了对build.gradle的更改,但问题仍然存在。

我在任何Android Studio日志文件中都看不到相关的错误; 就好像这个异常被捕获,在屏幕上报告,但没有记录到任何地方。

希望有人阅读这篇文章可以提出一些改变我忽视的东西。

提问于
用户回答回答于

在Android Studio桌面上,点击“选择运行/调试配置”按钮(一个带有android图标),应该能够选择正确的选项。

用户回答回答于

虽然通过调试图标启动仍然给我一个“套接字关闭”,如果我以后连接调试器它工作(在屏幕截图)。

扫码关注云+社区