iOS核心笔记——网络编程-监控网络状态

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS核心笔记——网络编程-监控网络状态相关的知识,希望对你有一定的参考价值。

1、AFN监控网络状态:

1.- (void)afnMonitoring
2.{
3. // 开始网络监控
4. AFNetworkReachabilityManager *mgr = [AFNetworkReachabilityManager sharedManager];
5.
6. [mgr setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
7. NSLog(@"-----当前的网络状态---%zd", status);
8. }];
9.
10. [mgr startMonitoring];
11.
12. // 拿到当前网络状态
13.// mgr.networkReachabilityStatus;
14.}

?备注:enum {
// 未知网络
AFNetworkReachabilityStatusUnknown,

// 无网络连接
AFNetworkReachabilityStatusNotReachable,

// 手机自带网络(3G | 4G)
AFNetworkReachabilityStatusReachableViaWWAN,

// 无线网络
AFNetworkReachabilityStatusReachableViaWiFi,
}


2、苹果官方监控网络状态:

1.- (void)appleMonitoring
2.{
3. // 监听通知
4. [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getNetworkStatus) name:kReachabilityChangedNotification object:nil];
5.
6. // 开始监控网络
7. self.reachability = [Reachability reachabilityForInternetConnection];
8. [self.reachability startNotifier];
9.}
10.
11.- (void)dealloc
12.{
13. [[NSNotificationCenter defaultCenter] removeObserver:self];
14.
15. [self.reachability stopNotifier];
16. self.reachability = nil;
17.}
18.
19.- (void)getNetworkStatus
20.{
21. if ([Reachability reachabilityForLocalWiFi].currentReachabilityStatus != NotReachable) {
22. NSLog(@"是wifi");
23. } else if ([Reachability reachabilityForInternetConnection].currentReachabilityStatus != NotReachable) {
24. NSLog(@"是手机自带网络");
25. } else {
26. NSLog(@"网络有问题");
27. }
28.}
29.

?重要技术分享



















































以上是关于iOS核心笔记——网络编程-监控网络状态的主要内容,如果未能解决你的问题,请参考以下文章

Linux笔记网络监控之nagios安装与配置

iOS--实时监控网络状态的改变

iOS核心笔记——网络编程-网络安全

iOS核心笔记——网络编程-文件MIMEType

iOS核心笔记——网络编程-XML

iOS学习笔记22-网络2