最近公司要弄iOS和android之间互传文件,要求使用socket,本来我是搞android的,但是iOS没人了,只好我一起弄了。网上找了一个socket的demo自己改了改。
不过这次写的不是传输文件的,而是使用UDP广播机制,使设备能够互相通信发现。
之前对socket udp也是一点都不了解,现在懂一点点了。udp分单播,广播,组播。
demo都是我在网上找的,主要用的是C
这是UDP广播,也就是给同一个网段下所有设备发送UDP消息
下面是 发送端代码,也就是客户端。要发送的时候,调用
-(void)startListenAndNewThread
#import "SendInfo.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#import <arpa/inet.h>
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#include <ifaddrs.h>
@implementation SendInfo
-(void) initSendInfo {
int cli_sockfd;
long len;
socklen_t addrlen;