您的位置:首页 > 移动开发 > IOS开发

iOS 获取客户端ip

2016-03-24 20:43 344 查看
NSString *address =
@"an error occurred when obtaining ip address";

struct
ifaddrs *interfaces =
NULL;

struct
ifaddrs *temp_addr =
NULL;

int success =
0;

success = getifaddrs(&interfaces);

if (success ==
0) { // 0
表示获取成功

temp_addr = interfaces;

while (temp_addr !=
NULL) {

if( temp_addr->ifa_addr->sa_family ==
AF_INET) {

// Check if interface is en0 which is the wifi connection on the iPhone

if ([[NSString
stringWithUTF8String:temp_addr->ifa_name]
isEqualToString:@"en0"]) {

// Get NSString from C String

address = [NSString
stringWithUTF8String:inet_ntoa(((struct
sockaddr_in *)temp_addr->ifa_addr)->sin_addr)];

}

}

temp_addr = temp_addr->ifa_next;

}

}

freeifaddrs(interfaces);

NSLog(@"手机的IP是:%@",
address);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: