iOS  UDP 广播 AsyncSocket 用法

摘要:
因为业务需要,需要用广播发送一个字段,在iOS开发中,用到了AsynSocket。
因为业务需要,需要用广播发送一个字段,在iOS开发中,用到了AsynSocket。
1.定义一个属性,负责发送和接受数据

#define YX_Local_Host @"255.255.255.255"

#define YX_Lockl_Port 48899

@property(nonatomic,strong)AsyncUdpSocket *sendSocket;
2.在viewDidload上初始化这个socket
self.sendSocket=[[AsyncUdpSocket alloc]initWithDelegate:self];
//需要有这个初始化,不知道为什么
[self.sendSocket bindToAddress:@"0.0.0.0" port:5666 error:nil];
[self.sendSocket receiveWithTimeout:-1 tag:0];
3.在需要的时候出发它,我这里是在button点击事件出发的
NSString *sendString=@"HF-A11ASSISTHREAD";
NSData *data=[sendString dataUsingEncoding:NSUTF8StringEncoding];
[self.sendSocket sendData:data toHost:YX_Local_Host port:YX_Lockl_Port withTimeout:30 tag:0];
[self.sendSocket enableBroadcast:YES error:nil];
4.发送出去以后,使用AsyncUdpSocket的代理,接受数据,并对需要的数据进行处理。
-(BOOL)onUdpSocket:(AsyncUdpSocket *)sock didReceiveData:(NSData *)data withTag:(long)tag fromHost:(NSString *)host port:(UInt16)port{
NSString *receiveData=[[NSString alloc ]initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"-----receiveData----%@---------",receiveData);
[self.sendSocket receiveWithTimeout:-1 tag:0];
return YES;
}
- (void)onUdpSocket:(AsyncUdpSocket *)sock didNotReceiveDataWithTag:(long)tag dueToError:(NSError *)error{
NSLog(@"没有收到");
}

免责声明:文章转载自《iOS  UDP 广播 AsyncSocket 用法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【流量】netflow 基础知识【安全测试】:某系统短信修改密码,绕过逻辑漏洞下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

AFNetworking的详细解析

AFNetworking serializer 分析 AFNetworkResponse.png 1. AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 所有的网络请求,均有manager发起 2. 需要注意的是,默认提交...

IOS(数据库的应用)

在iPhone的开发过程中常常会用到数据库,而SQLite3是iPhone中支持的数据库。下面简单介绍一下iPhone中SQLite3数据库的用法: SQLite3简介 SQLite3是一个轻量级的数据库,完全使用C语言编写,使用简单方便。它是一个嵌入到程序进程的数据库,和其他一些数据库(MySQL,MS SQL)不同,它没有独立的进程。 1、打开数据库...

ios7 以后准确获取iphone设备的MAC(物理地址)

通过参考 钉钉 项目,知道是通过wifi拿到路由的MAC地址。那么可不可以拿到iphone 设备的MAC 地址呢? 经过一番搜索,发现所有文章都是针对 ios 7 以前 可以拿到。 而且方法也都是同一篇文章上面的,对于ios7 以后完全没提示。 而使用网络上的方法,在 大于 ios 7 的环境下, 永远返回的MAC 为02:00:00:00:00:00 下...

Linux| |对于UDP的学习

# 前序 UDP(用户数据报协议)没有连接的,是面向数据报的,是不可靠 # 套接字就是IP地址+端口号 IP地址:4字节 端口号:2字节,也就是说范围是0~65536 端口号分为 知名端口号 0--1023:http,ssh,ftp,telnet等一些协议端口号都是固定的,对于操作系统来说是不能对其进行分配的 一些固定的端口号 ssh服务器,使用22端口...

iOS开发网络数据之AFNetworking使用

http网络库是集XML解析,Json解析,网络图片下载,plist解析,数据流请求操作,上传,下载,缓存等网络众多功能于一身的强大的类库。最新版本支持session,xctool单元测试。网络获取数据一直是手机软件的重中之重,如果处理的不好,会造成很差的用户体验。随着ASIHTTPRequest的停止更新,更换网络库是必然的事情,AFNetworking...

RTP/RTCP、TCP、UDP、RTMP、RTSP

  OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,FTP,HTTP,SNMP,SMTP,DNS,RIP,Telnet 表示层 数据格式化,代码转换,数据加密 无 会话层 解除或建立与别的结点的联系 无 传输层 提供端对端的接口 TCP,UDP 网络层 为数据包选择路由 IP,ICM...