首页 > 代码库 > iOS获取本地ip(基本通用)
iOS获取本地ip(基本通用)
今天有个朋友问我如何访问手机ip,上网找了几个,用了近200多行代码,最后发现头文件用的竟然还是Linux中的,OC没有这个头文件。感觉socket本身应该可以后去自己的ip就试了一下,果然7、8行代码就解决了。这个基本是c的socket,几乎通用,别的平台也可以使用。
- (NSString *)getLocalIP{ struct sockaddr_in sa; socklen_t len = sizeof(sa); if(getsockname(sockfd, (struct sockaddr *)&sa, &len)) { NSLog(@"获取失败!"); } return [NSString stringWithUTF8String:inet_ntoa(sa.sin_addr)]; }
返回的字符串为本地ip
- (NSString *)getLocalIP{ socklen_t len = sizeof(serv_addr); if(!getpeername(sockfd, (struct sockaddr *)&serv_addr, &len)) { } NSLog(@"对方IP:%s ", inet_ntoa(serv_addr.sin_addr)); NSLog(@"对方PORT:%d ", ntohs(serv_addr.sin_port)); return [NSString stringWithUTF8String:inet_ntoa(serv_addr.sin_addr)]; }获取对方ip和端口号
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。