2 qq 20401801 qq_20401801 于 2016.04.10 12:53 提问

iOS 开发,基于GCDAsyncSocket的即时通讯是怎样在两个用户间完成的
ios

iOS 开发,基于GCDAsyncSocket的即时通讯是怎样在两个用户间完成的?比如a发一条信息给b,这条信息是怎样经过服务器到达b的

2个回答

HeroGuo_JP
HeroGuo_JP   2016.04.12 12:19
已采纳

A即时发送端也是 接受端 开不同的端口去监听,B也一样,一直监听与A发送端 端口相同的接口,这样A发送数据到 服务端B的端口XXX B一直监听者自身端口的XXX 这样A发送的消息 B就可以接受到

oyljerry
oyljerry   Ds   Rxr 2016.04.10 13:46

两个客户端都连在服务器上,各自发送数据给服务器,然后服务器中转数据

qq_20401801
qq_20401801 回复oyljerry: 哦哦 那你知不知道发送语音和表情是怎么实现的?
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
iOS - 基于CocoaAsyncSocket搭建完整的IM体系大体思路详解
想要搭建一个完善 ,且自定义程度较高 , 又便于后期维修和修改的IM体系 , 采用环信或者融云等实际上是非常消耗精力和时间的 ,因为他们做得也不完善 . 目前咱们已知的通信协议大概有MQTT , XMPP等 .. 然而 , 通信协议是别人制定好的规则 , 想要不受约束 , 就需要自定义一套属于自己的通信协议 . 其实通信协议并不难 , 无非就是iOS端,安卓端,web端和服务器共同协商一套,大
即时通讯下数据粘包、断包处理实例(基于CocoaAsyncSocket)
前言 本文旨以实例的方式,使用CocoaAsyncSocket这个框架进行数据封包和拆包。来解决频繁的数据发送下,导致的数据粘包、以及较大数据(例如图片、录音等等)的发送,导致的数据断包。 本文实例Github地址:即时通讯的数据粘包、断包处理实例。 注:文章内容属于应用的范畴,内容相对简单易懂。给大家对数据包的处理提供了一个思路, 希望能抛砖引玉。 它是楼主CocoaAsyn
(六十五)iOS的socket实现(GCDAsyncSocket)
本文介绍使用GCDAsyncSocket来实现iOS端的socket,有关简易服务端的代码已经在上一篇文章中提到,这里不再赘述,将直接介绍如何实现客户端。 首先下载CocoaAsyncSocket框架,如果下载过iOS的XMPP框架,在Vendor中有这个框架,将框架导入工程,并包含其头文件GCDAsyncSocket.h。 ①这是一个异步socket框架,在子线程中完成socket的连接和数
GCDAsyncSOcket使用及其SSL/TLS双向认证的实现
笔者是一个IOS开发新手,在学习过程中深受资料查找不全或过时的痛苦,写下此文章,总结了GCDAsyncSocket的使用,及其SSL/TLS双向认证的使用思路,同时附加了笔者做项目时网络上学习到的部分JSON字符串处理技巧.
iOS 即时通讯,简单socket网络编程二<socket 封装 - GCDAsyncSocket >
在socket编程中,如果直接调用C语言函数的CFReadStreamRef(输入流)和CFWriteStreamRef(输出流)进行收发数据就会非常繁琐,于是就出现了第三方库GCDAsyncSocket对C语言进行了封装。这样我们就可以直接面对socket对象进行即时通讯。下面是使用GCDAsyncSocket写的一个简单的连接登陆服务器,并简单通信的Demo,服务器的搭建可以参考博客http:
iOS socket 连接第三方库asyncsocket 和GCDasyncsocket
Socket描述了一个IP、端口对。它简化了程序员的操作,知道对方的IP以及PORT就可以给对方发送消息,再由服务器端来处理发送的这些消息。所以,Socket一定包含了通信的双发,即客户端(Client)与服务端(server)。 1)服务端利用Socket监听端口; 2)客户端发起连接; 3)服务端返回信息,建立连接,开始通信; 4)客户端,服务端断开连接。
用GCDAsyncSocket解决AsyncSocket读取数据时丢失部分消息
文章来源:http://blog.csdn.net/cdy2143/article/details/8963422 在项目中,一直都是用AsyncSocket的开源项目来做IOS的Socket的开发,现在遇到一个问题:当数据包比较频繁的发送到手机时,即使使用了readDataToData,还是会出现丢包的问题且读到的包中还会出现分割符。后面终于参考了其他的文章,看到GCDAsyncSoc
iOS即时通讯(IM)开发实战篇-基于XMPP的聊天软件开发
零基础基于XMPP的IM应用开发 1、 营内聊 是戴维营教育开发的实时聊天工具,主要用于学员和老师之间的及时交流。 2、 简单易懂的UI。 3、 XMPP协议原理和XMPPFramework框架讲解。 4、 XMPP的注册,登陆,自动登陆以及状态设置。 5、 实现好友聊天和群组聊天功能。 6、 实现文字、图片、语音、小段视频聊天。 StoryBoard快速搭建。 界面自动布局实践。 纯代码实现。
iOS的GCDAsyncSocket快速开发Socket通信
iOS 基于GCDAsyncSocket快速开发Socket通信 2016年1月17日 GCDAsyncSocket是CocoaAsyncSocket第三方库中的其中一个类,本文介绍的就是基于这一个类来做快速的socket通信开发,而且该库已经支持IPv4和IPv6 我们对GCDAsyncSocket做了一层封装调用,它包含了建连、断开、重连、心跳、自定义请求 首先,介绍一下Coc
使用GCDAsyncUdpSocket&GCDAsyncSocket进行TCP连接和UDP连接
UDP初始化完后需要绑定端口号才能发送数据后接受到返回结果 TCP初始化连接前需要先关闭连接。 测试代码#import "P2PConnect.h" static NSString *hostAdress = @"服务器地址"; static uint16_t serverPort = 1服务器端口; @implementation P2PConnect { GCDAsyncSock