zoukankan      html  css  js  c++  java
  • iOS开发——获取本设备IP

      不说废话,直接上代码。

    #import <ifaddrs.h>

    #import <arpa/inet.h>

    - (NSString *)getIPAddress {

        NSString *address = @"error";

        struct ifaddrs *interfaces = NULL;

        struct ifaddrs *temp_addr = NULL;

        int success = 0;

        // retrieve the current interfaces - returns 0 on success

        success = getifaddrs(&interfaces);

        if (success == 0) {

            // Loop through linked list of interfaces

            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;

            }

        }

        // Free memory

        freeifaddrs(interfaces);

        return address;

    }

  • 相关阅读:
    线性基学习笔记
    内网靶机-抓取票据
    域渗透
    flex元素的使用
    webpack 基本使用
    ES模块的导入
    作用域插槽
    具名插槽的使用
    slot插槽的基本使用
    vue中父子组件的访问方式
  • 原文地址:https://www.cnblogs.com/yyt-hehe-yyt/p/5526422.html
Copyright © 2011-2022 走看看