Inherits from NSObject
Declared in SGSNetUtil.h

Tasks

网络状态监测

静态网络状态

IP 地址

Properties

networkReachabilityStatus

当前网络状态

@property (nonatomic, assign, readonly) SGSNetworkStatus networkReachabilityStatus

Declared In

SGSNetUtil.h

reachable

判断当前是否连接到网络

@property (nonatomic, assign, readonly, getter=isReachable) BOOL reachable

Declared In

SGSNetUtil.h

reachableViaWWAN

判断当前是否连接到蜂窝网络

@property (nonatomic, assign, readonly, getter=isReachableViaWWAN) BOOL reachableViaWWAN

Declared In

SGSNetUtil.h

reachableViaWWAN2G

判断当前是否连接到2G蜂窝网络

@property (nonatomic, assign, readonly, getter=isReachableViaWWAN2G) BOOL reachableViaWWAN2G

Declared In

SGSNetUtil.h

reachableViaWWAN3G

判断当前是否连接到3G蜂窝网络

@property (nonatomic, assign, readonly, getter=isReachableViaWWAN3G) BOOL reachableViaWWAN3G

Declared In

SGSNetUtil.h

reachableViaWWAN4G

判断当前是否连接到4G蜂窝网络

@property (nonatomic, assign, readonly, getter=isReachableViaWWAN4G) BOOL reachableViaWWAN4G

Declared In

SGSNetUtil.h

reachableViaWiFi

判断当前是否连接到 WiFi

@property (nonatomic, assign, readonly, getter=isReachableViaWiFi) BOOL reachableViaWiFi

Declared In

SGSNetUtil.h

Class Methods

ipAddress

+ (nullable NSString *)ipAddress
Discussion

根据所处网络环境不同而返回不同的 IP 地址: 1. WiFi: 如果处于 WiFi 环境那么优先返回局域网地址 2. WWAN: 如果使用蜂窝网络,那么返回无线广域网地址 3. Unknown or NotReachable: 返回 nil

Return Value

IP 地址

Declared In

SGSNetUtil.h

ipAddressForWWAN

无线广域网的 IP 地址

+ (nullable NSString *)ipAddressForWWAN

Return Value

例如:"10.10.127.55",如果当前不是蜂窝网络将返回 nil

Declared In

SGSNetUtil.h

ipAddressForWiFi

WiFi 的 IP 地址

+ (nullable NSString *)ipAddressForWiFi

Return Value

例如:"192.168.1.100",如果当前不是 WiFi 环境将返回 nil

Declared In

SGSNetUtil.h

isReachable

+ (BOOL)isReachable
Discussion

该方法只能判断设备是否已经连接到网络,并不能判断是否能上网

例如连接到了不能上网的 WIFI 设备,该方法将返回 YES 但是手机是不能上网的

Return Value

YES 当前设备已连网; NO 当前设备处于无网络状态

Declared In

SGSNetUtil.h

isReachableViaWWAN

判断是否使用蜂窝网络,不需要开启网络监听

+ (BOOL)isReachableViaWWAN

Return Value

YES 当前设备正在使用蜂窝网络; NO 当前设备没有使用蜂窝网络

Declared In

SGSNetUtil.h

isReachableViaWWAN2G

判断是否使用2G蜂窝网络,不需要开启网络监听

+ (BOOL)isReachableViaWWAN2G

Return Value

YES 当前设备正在使用2G蜂窝网络; NO 当前设备没有使用2G蜂窝网络

Declared In

SGSNetUtil.h

isReachableViaWWAN3G

判断是否使用3G蜂窝网络,不需要开启网络监听

+ (BOOL)isReachableViaWWAN3G

Return Value

YES 当前设备正在使用3G蜂窝网络; NO 当前设备没有使用3G蜂窝网络

Declared In

SGSNetUtil.h

isReachableViaWWAN4G

判断是否使用4G蜂窝网络,不需要开启网络监听

+ (BOOL)isReachableViaWWAN4G

Return Value

YES 当前设备正在使用4G蜂窝网络; NO 当前设备没有使用4G蜂窝网络

Declared In

SGSNetUtil.h

isReachableViaWiFi

判断是否连接到 WiFi,不需要开启网络监听

+ (BOOL)isReachableViaWiFi

Return Value

YES 当前设备连接到 WiFi 环境; NO 当前设备没有连接到 WiFi

Declared In

SGSNetUtil.h

networkReachabilityForInternetConnection

用于检测是否连接到网络

+ (instancetype)networkReachabilityForInternetConnection

Return Value

网络检测实例

Declared In

SGSNetUtil.h

networkReachabilityWithAddress:

用于检测是否能连通给定的 IP 地址

+ (nullable instancetype)networkReachabilityWithAddress:(const struct sockaddr *)hostAddress

Parameters

hostAddress

IP 地址

Return Value

网络检测实例

Declared In

SGSNetUtil.h

networkReachabilityWithHostName:

用于检测是否能连通给定的主机名

+ (nullable instancetype)networkReachabilityWithHostName:(NSString *)hostName

Parameters

hostName

主机名

Return Value

网络检测实例

Declared In

SGSNetUtil.h

sharedInstance

+ (instancetype)sharedInstance
Discussion

将采用 networkReachabilityForInternetConnection 的方式初始化

Return Value

单例

Declared In

SGSNetUtil.h

Instance Methods

localizedNetworkReachabilityStatusString

网络状态本地化描述

- (NSString *)localizedNetworkReachabilityStatusString

Return Value

网络状态描述

Declared In

SGSNetUtil.h

startMonitoring

开始监听网络,需要先实例化网络检测实例

- (BOOL)startMonitoring

Return Value

YES 开始监听; NO 监听失败

Declared In

SGSNetUtil.h

stopMonitoring

停止监听网络

- (void)stopMonitoring

Declared In

SGSNetUtil.h