博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios 测试网络是否连接
阅读量:4353 次
发布时间:2019-06-07

本文共 1115 字,大约阅读时间需要 3 分钟。

转自:http://blog.csdn.net/lwq421336220/article/details/16982857

- (BOOL) connectedToNetwork

{

    //创建零地址,0.0.0.0的地址表示查询本机的网络连接状态

   structsockaddr_in zeroAddress;

   bzero(&zeroAddress,sizeof(zeroAddress));

    zeroAddress.sin_len =sizeof(zeroAddress);

    zeroAddress.sin_family =AF_INET;

    

    

   SCNetworkReachabilityRef defaultRouteReachability =SCNetworkReachabilityCreateWithAddress(NULL, (structsockaddr *)&zeroAddress);

    SCNetworkReachabilityFlags flags;

    

   BOOL didRetrieveFlags =SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags);

   CFRelease(defaultRouteReachability);

    

   if (!didRetrieveFlags)

    {

        printf("Error. Could not recover network reachability flagsn");

       returnNO;

    }

    

   BOOL isReachable = ((flags &kSCNetworkFlagsReachable) != 0);

   BOOL needsConnection = ((flags &kSCNetworkFlagsConnectionRequired) != 0);

   return (isReachable && !needsConnection) ?YES : NO;

}

使用的时候:

 

if ([selfconnectedToNetwork]) {

        

}else{

   UIAlertView *alert=[[UIAlertViewalloc]initWithTitle:@"提示" message:@"网络连接失败,请查看网络连接。" delegate:self cancelButtonTitle:@"我知道了" otherButtonTitles:nil,nil];

   [alertshow];

        

        

}

转载于:https://www.cnblogs.com/feiyu-mdm/p/5576250.html

你可能感兴趣的文章
启动Eclipse时发生An internal error occurred during: "Initializing Java Tooling"错误
查看>>
Qt:禁止qDebug的输出
查看>>
word、pdf、ppt 转为图片
查看>>
000 关于IDEA的基本环境配置以及快速使用(git拉载程序,Jdk安装,tomcat部署,应用程序打包运行)...
查看>>
20162302 《程序设计与数据结构》第八周学习总结
查看>>
web容器 web服务器 servlet/jsp容器 之间的区别和关系
查看>>
78,90,Subsets,46,47,Permutations,39,40 DFS 大合集
查看>>
在Static控件上显示图片
查看>>
ORACLE 数据库基本参数查询
查看>>
iOS - CAReplicatorLayer 的运用
查看>>
iOS 8自动调整UITableView和UICollectionView布局
查看>>
哈佛精神
查看>>
c++
查看>>
微信开发
查看>>
《代码整洁之道》
查看>>
基于框架的应用系统开发的质量属性
查看>>
noip普及组考纲+样题合集——初级篇(OIer必看)
查看>>
windos下安装pgAdmin
查看>>
1.Hello World - Console
查看>>
基于jquery判断浏览器版本过低代码
查看>>