我已经尝试了两周通过UDP发送角色。到目前为止,我还没有找到一个实际使用XCode和IOS 7的示例。我目前卡住了,因为每次运行我的代码时,Bind函数返回-1。我不知道什么是错的或解决方案是什么。 PS。我知道我的地址丢失了但是现在我只是想通过Bind问题来解决。 (使用特定地址的示例无法编译。)
这是非常令人沮丧的,因为我已经成功地在Windows,Windows Mobile 6.0和AS400上创建了UPD程序而没有像我在这方面花费的那么多努力,到目前为止没有什么可展示的。
这是我目前的代码
char Buff[256];
strcpy(Buff,"Test MESSAGE");
int handle = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
if (handle > 0) {
struct sockaddr_in address;
address.sin_family = AF_INET;
address.sin_port = htons(311);
inet_pton(AF_INET, "10.121.8.54", &(address.sin_addr));
if (bind(handle,(struct sockaddr *) &address, sizeof(struct sockaddr_in))< 0){
printf("************************ Failed to bind\n");
} else {
send(handle, Buff, sizeof(Buff), 0);
}
} else {
printf("Faile to create socket\n");
}//end if
这是我的导入
#import <sys/socket.h>
#import <netinet/in.h>
#import <sys/types.h>
#import <fcntl.h>
#import <netdb.h>
#import <arpa/inet.h>