现在的位置: 首页 > 综合 > 正文

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

2017年01月06日 ⁄ 综合 ⁄ 共 945字 ⁄ 字号 评论关闭

在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看是否可以检测到手机设备,如果提示如下:

android 异常处理--java.io.IOException: 您的主机中的软件中止了一个已建立的连接 - CSharp - C
则进入2步骤。
2,打开高级安全Windows防火墙(在电脑开始-搜索-高级防火墙)
点击“入栈”--新建规则--端口--输入5037--输入名称(随意名字即可)--下一步操作至结束
点击“出栈”,同上操作。设置完成后,打开cmd命令窗,重新输入adb shell,会出现以下内容:
android 异常处理--java.io.IOException: 您的主机中的软件中止了一个已建立的连接 - CSharp - C

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

3,在豌豆荚或者360手机助手正常连接情况下,输入adb shell,然后输入adb kill-server
android 异常处理--java.io.IOException: 您的主机中的软件中止了一个已建立的连接 - CSharp - C
最后重新运行android程序,即可。
注:主要是杀掉adb进程,当然你也可以在任务管理器中结束掉adb.exe,但是这个方法有的情况下不行,我这里就试了下,根本不行。

 

抱歉!评论已关闭.