IOS开发——获取局域网IP

来源:互联网 发布:故宫博物院网络购票 编辑:程序博客网 时间:2024/06/15 09:11

头文件

#include <arpa/inet.h>#include <net/if.h>#include <ifaddrs.h>


源码

- (NSString *)localIPAddress{    NSString *localIP = nil;    struct ifaddrs *addrs;    if (getifaddrs(&addrs)==0) {        const struct ifaddrs *cursor = addrs;        while (cursor != NULL) {            if (cursor->ifa_addr->sa_family == AF_INET && (cursor->ifa_flags & IFF_LOOPBACK) == 0)            {                //NSString *name = [NSString stringWithUTF8String:cursor->ifa_name];                //if ([name isEqualToString:@"en0"]) // Wi-Fi adapter                {                    localIP = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)cursor->ifa_addr)->sin_addr)];                    break;                }            }            cursor = cursor->ifa_next;        }        freeifaddrs(addrs);    }    return localIP;}


之前用过IPAddress.h及.c的,但pch中不得包含头文件;找了好久,终于找到这段代码,分享一下

原创粉丝点击