Latest 1.0.0
Homepage https://github.com/xiayuanquan/IP_Test
License MIT
Platforms ios , requires ARC
Authors

IP_Test

一、测试获取设别当前的IP地址


有的时候,我们项目上线后,需要根据ip地址去统计不同地区的用户情况,此时IP地址的收取显得尤其重要,一般情况下,在用户登录时去获取用户的ip是准确的,当然实时追踪ip的变化而统计是更安全可靠的。
ip地址长度现在是有区别的,分为IPv4和IPv6.IPv4地址是类似 A.B.C.D 的格式,它是32位,用"."分成四段,用10进制表示;而IPv6地址类似X:X:X:X:X:X:X:X的格式,它是128位的,用":"分成8段,用16进制表示;可见,IPv6地址空间相对于IPv4地址有了极大的扩充。
IPv4是32位地址长度
IPv6是128位地址长度

二、获取ip地址用到了有两套方法,如下:


方法一:使用一套C的方法去获取IP地址,效果图如下:

image

方法二:使用一套OC的方法去获取IP地址,该方法简单,能实时监测IP地址的变化,效果图如下:

stackoverflow参考地址为:http://stackoverflow.com/questions/7072989/iphone-ipad-how-to-get-my-ip-address-programmatically

image

三、现在做了一下简单的封装,封装为工具类IPToolManager,现在只需要导入这个头文件就可以轻松获取设备的ip地址

CocoaPods支持

   pod ‘IPTool’, ‘~> 1.0.0’ 或者 pod search IPTool

image

How to user api

#import "IPToolManager.h"

example1:此方法获取具体的ip地址   

IPToolManager *ipManager = [IPToolManager sharedManager]; 

NSLog(@"当前设备的ip地址:%@",[ipManager currentIpAddress]); 

example2:此方法打印具体的ip详细信息

IPToolManager *ipManager = [IPToolManager sharedManager];

[ipManager currentIPAdressDetailInfo];

Latest podspec

{
    "name": "IPTool",
    "version": "1.0.0",
    "summary": "A simple library for iOS to use for getting IP Address.",
    "homepage": "https://github.com/xiayuanquan/IP_Test",
    "license": "MIT",
    "authors": {
        "xiayuanquan": "[email protected]"
    },
    "platforms": {
        "ios": null
    },
    "source": {
        "git": "https://github.com/xiayuanquan/IP_Test.git",
        "tag": "1.0.0"
    },
    "source_files": "IPTool/*.{h,m}",
    "requires_arc": true
}

Pin It on Pinterest

Share This