1.IOS系统中长连接网络数据分发及处理方法,用于在客户端和服务器之间进行长连接的网络数据分发和处理,其特征在于,包括以下步骤:使用C++代码编写IOS系统客户端的网络接口层进行长连接的网络数据的收发;
对接收到的网络数据进行解密和解包;
将C++层网络接收到的网络数据传递到应用层的object-c代码层;
将网络数据由object-c代码层推送到IOS的应用层中。
2.根据权利要求1所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:其中,网络接口层进行长连接的网络数据的收发包括以下过程在接收和分发网络数据的客户端和服务器之间创建网络socket,设置网络socket的IP地址和端口号,客户端与服务器进行连接,
使用线程函数来接收和发送网络数据。
3.根据权利要求2所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:其中,所述线程函数由IOS系统自带的API函数pthread_create来创建。
4.根据权利要求3所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:其中,所述线程函数接收和发送网络数据的步骤包括对网络socket的事件进行监听,
根据监听的情况,使用seletct函数来判断当前的网络socket是可读状态还是可写状态,当判断为可读状态时,通过recv函数来接收服务器发来的网络数据,当判断为可写状态时,通过send函数来发送网络数据到服务器。
5.根据权利要求1所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:其中,解密和解包的具体过程为
使用加解密算法TEA进行解密,
解密完成后进行解析操作,解析出该网络数据对应的消息类型以及信息内容。
6.根据权利要求5所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:其中,
当消息的内容时服务器错误时,则网络socket会进行网络重连;
当消息的内容为其他内容时,则经由应用层的object-c代码层被推送到IOS的应用层中。
7.根据权利要求1所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:将C++层网络接收到的网络数据传递到应用层的object-c代码层的过程是由IOS系统自带的回调函数callback和Push函数实现的。
8.根据权利要求1所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:网络数据被推送到IOS的应用层后,应用层根据信息的类型分发到不同的模块来处理。
9.根据权利要求8所述的IOS系统中长连接网络数据分发及处理方法,其特征在于:所述客户端为网络直播客户端,所述服务器为网络直播服务器,所述应用层为网络直播平台,
当消息类型为弹幕类型时,应用层会将该弹幕放到应用层的弹幕显示区域进行显示,当消息类型为礼物类型时,应用层会将该礼物放到应用层的礼物显示区域进行显示,当消息类型为连麦类型时,应用层会弹出连麦设置,开始连麦功能。
10.一种IOS系统中长连接网络数据分发及处理系统,其特征在于,包括:网络接口模块,用于构建C++代码的网络接口进行长连接的网络数据的收发;
解密解包模块,对接收到的网络数据进行解密和解包;
传递模块,用于将C++层网络接收到的网络数据传递到应用层的object-c代码层;
推送模块,用于将网络数据由object-c代码层推送到IOS的应用层中。