博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[10秒学会] - iOS 网络检测(如需要更详细 请用Reachability)
阅读量:5898 次
发布时间:2019-06-19

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

hot3.png

如果需要更加强大的检测  请到 

h 文件

////  DCCheckNetwork.h//  DCCheckNetwork////  Created by 赵大财 on 16/4/7.//  Copyright © 2016年 tshiny. All rights reserved.//#import 
#import
@interface DCCheckNetwork : NSObject+ (BOOL)connectedToNetwork;@end

m 文件

////  DCCheckNetwork.m//  DCCheckNetwork////  Created by 赵大财 on 16/4/7.//  Copyright © 2016年 tshiny. All rights reserved.//#import "DCCheckNetwork.h"@implementation DCCheckNetwork+ (BOOL)connectedToNetwork{        //创建零地址,0.0.0.0的地址表示查询本机的网络连接状态    struct sockaddr_storage zeroAddress;        bzero(&zeroAddress, sizeof(zeroAddress));    zeroAddress.ss_len = sizeof(zeroAddress);    zeroAddress.ss_family = AF_INET;        //Recover reachability flags    SCNetworkReachabilityRef defaultRouteReachability = SCNetworkReachabilityCreateWithAddress(NULL, (struct sockaddr *)&zeroAddress);    SCNetworkReachabilityFlags flags;        //获得连接的标志    BOOL didRetrieveFlags = SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags);    CFRelease(defaultRouteReachability);        //如果不能获取连接标志,则不能连接网络,直接返回    if (!didRetrieveFlags)    {        return NO;    }        //根据获得的连接标志进行判断    BOOL isReachable = flags & kSCNetworkFlagsReachable;    BOOL needsConnection = flags & kSCNetworkFlagsConnectionRequired;    return (isReachable&&!needsConnection) ? YES : NO;    }@end

转载于:https://my.oschina.net/zhaodacai/blog/654113

你可能感兴趣的文章
Cmder 使用详解
查看>>
商界大佬们惊人一致的六大成功密码!
查看>>
composer
查看>>
app开发平台-应用之星app制作教程
查看>>
为什么设计beego和设计的思路
查看>>
Json.NET - Documentation Creating JSON
查看>>
将博客搬至CSDN
查看>>
erlang笔记1 环境
查看>>
学习 webpack+vue.js (2、.vue文件的使用)
查看>>
使用 AWS SNS 发送通知到 HTTP 终端
查看>>
js兼容ie获取上传excel文件名称以及大小,绝对路径
查看>>
Object.toString
查看>>
JVM 垃圾回收
查看>>
通过ln 聚集日志业务
查看>>
[Django学习]如何得到一个App
查看>>
Redis入门-1-数据模型List
查看>>
sparkStreaming+sql点击前十商品
查看>>
第四十八讲:tapestry 与 淘宝kissy editor编辑器带图片上传
查看>>
图像处理入门——扭曲
查看>>
stopPropagation
查看>>