淘姐妹

淘姐妹

android studio强行关闭一个远程连接 androidtcp连接经常断

手机 0

淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】


最近在做一个项目,项目其中一个需求是打开app自动连接tcp服务端,连接失败后自动尝试8次。尝试成功继续,不成功提示服务器未响应。

我想到了用多线程实现,其中一个用于显示尝试状态,另一个线程循环尝试socket=new Socket(),达到以下效果:

代码如下:

连接tcp用tcp_conn();

第一次连接失败后调用ReConnect()

另一个线程用于打印尝试状态,使用handler定时器,每隔1s检查连接状态,显示到屏幕Text【【微信】】中

将所以步骤封装到SystemInit()

然后在onCreate中调用:

其他布局代码就不贴出来了。 这只是实现了这一步功能,8次之后如果还没连上难道就不行了吗?还要重新打开app才能连?当然可以增加一个刷新按钮,在按钮点击事件中再次调用SystemInit(); 所以未连接时要尝试8次,连接成功后跳出ReConnect和关闭定时器。8次后仍未连接放弃尝试,关闭定时器。

验证中,我先在网络调试助手中关闭tcp服务端,打开app,app打印出连接失败,尝试重新连接 2/8,此时我打开tcp服务端,等一会后显示连接成功。如果尝试8次之后还没成功,则显示出“服务器未响应,请确定服务器已打开”。 将所有内容封装成类,做了一些改动,UserTcp.java

使用时只需调用TcpInit();tv_tip是【【微信】】控件,需自己定义


adb连接手机时,端口被360手机助手占用,无法连接的问题


adb连接手机时,端口被占用,无法连接,如下图所示:

1、查看端口号被什么占用了,一般是360手机助手(以下端口号是我自己设置的系统变量,默认的是5307):

2、从上图可以看出,被占用的进程是12640,打开任务管理器-详细服务,找到pid对应的进程(此处不截图)

被【360手机助手】占用的话,打开360安全卫士,打开手机助手,右上角【设置】,其它设置,将【启动助手时自动无线连接上次连接的手机】选项去掉,不勾选

?

如果以上方法还不行,尝试第二种方法:

https://blog.csdn.net/u010324075/【【微信】】tails/103274895