Android客户端与服务器建立稳定网络连接的方法技术

技术编号:16761605 阅读:76 留言:0更新日期:2017-12-09 05:29
本发明专利技术涉及一种Android客户端与服务器建立稳定网络连接的方法,包括如下步骤:客户端新建socket连接;客户端向服务器发送测试数据;客户端在收到服务器对上述测试数据的反馈信息后,向服务器发送上线数据包;客户端在收到服务器对上述上线数据包的反馈信息后,向服务器发送心跳包;及客户端在收到服务器对上述心跳包的反馈信息后,与服务器进行数据交换。本发明专利技术能够维护Android客户端与服务器的长连接,避免NAT映射表失效,提高数据传输的安全性,减少丢包率,同时提升网络通信的稳定度。

The method of establishing stable network connection between Android client and server

The invention relates to a method for stable network connection of a Android client and server, which comprises the following steps: the new socket connection client; the client to the server sending test data; the client in the server received feedback information of the test data, the server sends a data packet received in the client on the line; the on-line feedback data server packets, sent to the server and the client package of heartbeat packet; the heartbeat in the server received feedback information after the data exchange with the server. The invention can maintain the long connection between the Android client and the server, avoid the failure of the NAT mapping table, improve the safety of data transmission, reduce the packet loss rate, and improve the stability of the network communication.

【技术实现步骤摘要】
Android客户端与服务器建立稳定网络连接的方法
本专利技术涉及一种客户端与服务器建立稳定网络连接的方法,尤其涉及一种Android客户端与服务器建立稳定网络连接的方法。
技术介绍
很多Android客户端都需要与服务器进行网络通信,对于部分需要实现定位跟踪或者实时动作采集的Android客户端需要不断向服务器上传实时数据,则这类Android客户端需要与服务器长连接并且要保障数据传输稳定性。目前Android客户端与服务器通过socket长连接主要有两种方法,分别是轮询(Polling)和推送(Long-Polling)。轮询的方法是指不管服务器端有没有更新,客户端都定时的发送请求进行查询,每次查询可能会接收到服务器的消息,也可能什么都没有接收到,并且当服务器发送信息客户端也可能无法接收,这造成了客户端与服务器两方的资源浪费,同时客户端可能会错过服务器传送的数据,这样的方法不适用一些对实时性要求较高的Android客户端。推送的方法是指客户端在发起一次请求后立即挂起,一直等待,等待下一次数据交换,这样的方法降低了数据传输中丢包的可能性,并且当发生数据传输行为时能够被立刻检测到,但本文档来自技高网...
Android客户端与服务器建立稳定网络连接的方法

【技术保护点】
一种Android客户端与服务器建立稳定网络连接的方法,其特征在于,该方法包括如下步骤:a,客户端新建socket连接;b,客户端向服务器发送测试数据;c,客户端在收到服务器对上述测试数据的反馈信息后,向服务器发送上线数据包;d,客户端在收到服务器对上述上线数据包的反馈信息后,向服务器发送心跳包;及e,客户端在收到服务器对上述心跳包的反馈信息后,与服务器进行数据交换。

【技术特征摘要】
1.一种Android客户端与服务器建立稳定网络连接的方法,其特征在于,该方法包括如下步骤:a,客户端新建socket连接;b,客户端向服务器发送测试数据;c,客户端在收到服务器对上述测试数据的反馈信息后,向服务器发送上线数据包;d,客户端在收到服务器对上述上线数据包的反馈信息后,向服务器发送心跳包;及e,客户端在收到服务器对上述心跳包的反馈信息后,与服务器进行数据交换。2.如权利要求1所述的Android客户端与服务器建立稳定网络连接的方法,其特征在于,所述的步骤b具体包括:客户端通过输出流发送数据,以测试网络是否断开,通过循环语句while,每隔一定的时间调用一次该方法,以不断测试socket是否连接成功。3.如权利要求2所述的Android客户端与服务器建立稳定网络连接的方法,其特征在于,所述的步骤c还包括:如果客户端没有收到服务器对测试数据的反馈信息,说明连接失败,进入异常检测步骤。4.如权利要求3所述的Android客户端与服务器建立稳定网络连接的方法,其特征在于,所述的步骤d还包括:如果客户端没有收到服务器对上线数据包的反馈信息,说明上线失败,进入异常检测步骤。5.如权利要求3或4所述的Android客户端与服务器建立稳定网络连接的方法,其特征在于,所述的异常检测步骤包括:k1,客户端尝试与服务器进行数据交换;k2,判断客户端与服务器的数据交换是否出现异常;k3,如果客户端与服务器的数据交换出现异常,则关闭客户端与服务器的连接;如果客户端与服务器的数据交换没有出现异常,则返回步骤k1;k4,判断客户端上线失败的次数是否大于预设的上线失败次数的最大值;k5,如果客户端上线失败的次数不大于预设的上线...

【专利技术属性】
技术研发人员:赵国如宁运琨聂晓芬戴亚文
申请(专利权)人:深圳先进技术研究院
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1