星空网 > 软件开发 > 操作系统

AsyncSocket的长连接使用

 使用背景:需要跟服务器长期保持连接进行即时通讯;还有在跟智能硬件建立实时链接进行同步智能硬件的状态等,最近我就做项目就碰到需要实时更新智能硬件的状态(比如智能硬件的电量,以及其它工作状态),跟智能硬件通讯中间是通过了服务器的,所以要实时跟服务器建立连接。具体实现如下:

 

使用步骤:

1、导入AsyncSocket.m/AsyncSocket.h文件到xcode工程中去。

2、添加CFNetwork.framework框架。

3、导入#import "AsyncSocket.h"头文件。

4、创建AsyncSocket对象、定时发送心跳包定时器对象、心跳包数据内容对象

AsyncSocket的长连接使用images/loading.gif' data-original="http://images2015.cnblogs.com/blog/752991/201603/752991-20160303114421737-422853625.png" />

 

5、开始连接服务器,连接需要服务器地址和端口号

AsyncSocket的长连接使用

6、创建用于发送心跳包的定时器 

LongPollTime 为心跳包发送时间间隙

AsyncSocket的长连接使用

 

7、发送心跳包的内容,我这里是发送的是一个空字节。

AsyncSocket的长连接使用

 

8、发送心跳包和停止心跳包

AsyncSocket的长连接使用

 

9、asyncSocket代理

//即将连接

- (BOOL)onSocketWillConnect:(AsyncSocket *)sock

//连接已完成

- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port

//发送已完成

- (void)onSocket:(AsyncSocket *)sock didWriteDataWithTag:(long)tag

//接收消息

- (void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag

 

程序源码地址 http://pan.baidu.com/s/1buwHC6




原标题:AsyncSocket的长连接使用

关键词:socket

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

库存标:https://www.goluckyvip.com/tag/35249.html
库存绩效考核:https://www.goluckyvip.com/tag/35250.html
库存尾货:https://www.goluckyvip.com/tag/35251.html
库存文件模板:https://www.goluckyvip.com/tag/35252.html
库存限制政策:https://www.goluckyvip.com/tag/35253.html
库存滞留:https://www.goluckyvip.com/tag/35254.html
3月独立站新品观察:比基尼、连衣裙、凉鞋、止汗霜等夏季新品热推! :https://www.kjdsnews.com/a/1836553.html
3月独立站新品观察:比基尼、连衣裙、凉鞋、止汗霜等夏季新品热推! :https://www.goluckyvip.com/news/188216.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流