您的位置:首页 > 移动开发 > Android开发

android 异常处理--java.io.IOException: 您的主机中的软件中止了一个已建立的连接

2016-02-28 11:17 549 查看
http://dongtingyueh.blog.163.com/blog/static/4619453201411012346708/

在android 程序调试中,经常出现如下类似的提示:

[2014-02-10 12:56:16 - XXX] Automatic Target Mode: Unable to detect device compatibility. Please select a target device.

[2014-02-10 12:56:40 - XXX] Uploading XXX.apk onto device '040BBHSLZPER'

[2014-02-10 12:57:31 - XXX] Failed to install XXX.apk on device '040BBHSLZPER': 您的主机中的软件中止了一个已建立的连接。

[2014-02-10 12:57:31 - XXX] java.io.IOException: 您的主机中的软件中止了一个已建立的连接。

[2014-02-10 12:57:31 - XXX] Launch canceled!

我这里使用的是360手机助手,在正常连接手机的情况下对程序进行调试,发现连接突然中断,出现上述提示,然后又自动连接成功,无论重启电脑还是软件都无法解决,这种情况我们改如何解决呢?

这种情况主要是由于ADB将手机与电脑建立的连接终止了的缘故。解决办法如下(前提是ADB环境变量设置正确,如果你的ADB环境变量不正确,则提示ADB为非法字符命令,你需要重新设置环境变量,在电脑--属性--高级系统设置--环境变量--path--添加ADB的路径,多路径使用分号隔开):

1,打开cmd,输入:adb shell看是否可以检测到手机设备,如果提示如下:



则进入2步骤。

2,打开高级安全Windows防火墙(在电脑开始-搜索-高级防火墙)

点击“入栈”--新建规则--端口--输入5037--输入名称(随意名字即可)--下一步操作至结束

点击“出栈”,同上操作。设置完成后,打开cmd命令窗,重新输入adb shell,会出现以下内容:



 这说明adb已经可用,进入3。

3,在豌豆荚或者360手机助手正常连接情况下,输入adb shell,然后输入adb kill-server



最后重新运行android程序,即可。
注:主要是杀掉adb进程,当然你也可以在任务管理器中结束掉adb.exe,然后重新启动
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: