iOS上带有GCDAsyncUdpSocket的大数据

iOS上带有GCDAsyncUdpSocket的大数据,ios,udp,gcdasyncudpsocket,Ios,Udp,Gcdasyncudpsocket,我正在尝试创建一个使用UDP连接的聊天应用程序。使用来自的GCDAsyncUdpSocket,我可以使用此功能连接并向其他设备发送小文本 - (void)sendData:(NSData *)data toHost:(NSString *)host port:(uint16_t)port withTimeout:(NSTimeInterval)timeout tag:(long)tag 但对于大文本,它不起作用。我这里有两个问题: GCDAsyn

我正在尝试创建一个使用UDP连接的聊天应用程序。使用来自的
GCDAsyncUdpSocket
,我可以使用此功能连接并向其他设备发送小文本

- (void)sendData:(NSData *)data
      toHost:(NSString *)host
        port:(uint16_t)port
 withTimeout:(NSTimeInterval)timeout
         tag:(long)tag
但对于大文本,它不起作用。我这里有两个问题:

  • GCDAsyncUdpSocket是否会自动将数据分成小块UDP数据包并发送它们?或者他们一次发送所有数据
  • 在使用GCDAsyncUdpSocket发送文本并跟踪文本块之前,如何将整个文本分解成小块?是否有任何第三方代码可用于此

  • 您是否有仅在UDP协议上工作的限制?您可以使用GCDAsyncSocket,它使用TCP协议并管理数据块本身。你所要做的就是正确地读取数据。是的,我需要UDP,我需要在两个不同nat下的两个设备之间进行通信(例如,一个在wifi上,另一个在3g上)。不,大文本可以正常工作。但在发送图像时出现错误,如错误域=gcdasyncudpsocketerordomain Code=1“无法为连接的套接字指定数据包的目标”UserInfo=0x79158000{NSLocalizedDescription=与图像有相同的问题,如果找到任何帮助,请共享我曾经使用过将数据拆分成碎片并发送它,并跟踪数据块,我还没有找到任何第三方,所以我自己也没有找到