• 获取设备的IP地址


    #import <ifaddrs.h>

    #import <arpa/inet.h>

     

     

    - (NSString *)deviceIPAdress {

        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);

        return address;

    }

  • 相关阅读:
    《血战钢锯岭》影评
    座椅
    指示灯点亮/闪烁
    存钱大法
    加注燃油
    处理过热
    收入“三分法”
    请求文件
    规格
    处理瘪胎
  • 原文地址:https://www.cnblogs.com/menchao/p/4881680.html
Copyright © 2020-2023  润新知