检测网络是否连接
来源:互联网 发布:冷冻电子显微镜 知乎 编辑:程序博客网 时间:2024/05/16 09:10
//
// NetworkConnert.h
//
//
// Created by CJW on 16/3/10.
// Copyright © 2016年 CJW. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface NetworkConnect :NSObject
+ (BOOL)connectedToNetwork; //判断是否有网
@end
//
// NetworkConnert.m
//
// Created by CJW on 16/3/10.
// Copyright © 2016年 CJW. All rights reserved.
//
#import "NetworkConnect.h"
#import<SystemConfiguration/SCNetworkReachability.h>
@implementation NetworkConnect
+ (BOOL)connectedToNetwork {
//创建零地址,0.0.0.0的地址表示查询本机的网络连接状态
structsockaddr_storage zeroAddress;
bzero(&zeroAddress,sizeof(zeroAddress));
zeroAddress.ss_len =sizeof(zeroAddress);
zeroAddress.ss_family =AF_INET;
// Recover reachability flags
SCNetworkReachabilityRef defaultRouteReachability =SCNetworkReachabilityCreateWithAddress(NULL, (structsockaddr *)&zeroAddress);
SCNetworkReachabilityFlags flags;
//获得连接的标志
BOOL didRetrieveFlags =SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags);
CFRelease(defaultRouteReachability);
//如果不能获取连接标志,则不能连接网络,直接返回
if (!didRetrieveFlags)
{
returnNO;
}
//根据获得的连接标志进行判断
BOOL isReachable = flags &kSCNetworkFlagsReachable;
BOOL needsConnection = flags &kSCNetworkFlagsConnectionRequired;
return (isReachable&&!needsConnection) ?YES : NO;
}
@end
- 检测网络是否连接
- 检测网络是否连接正常
- android 检测网络是否连接
- Android 检测网络是否连接
- Anddroid检测网络是否连接
- Reachability-检测网络是否连接
- android检测网络是否连接,WIFI是否连接
- C#判断检测网络是否连接
- C#检测当前用户网络是否连接
- 检测网络连接是否正常的方法
- Android 检测设备是否连接网络
- iOS Swift 检测网络是否连接
- 广播接收检测是否连接网络
- 检测网络是否为WIFI连接
- 检测网络是否连接的两种方法(C#)
- C#快速检测是否有可用的网络连接存在
- js实现检测网络是否连接的功能
- Android中如何简单检测网络是否连接
- tjut 3463
- Web前端应该从哪些方面来优化网站?
- 吃货话题:雅思口语中关于“吃”的表达方法
- QT 自定义函数 自定义信号和槽
- 特征工程
- 检测网络是否连接
- iOS开发 CoreLocation实现定位服务
- Android学习的各种资源集合
- C++多态、虚函数、纯虚函数和抽象函数
- Python Module_oslo.vmware_连接 vCenter
- Java-字符串-coder的排序
- POJ:1328 Radar Installation 思路以及测试数据
- java WeiXinUtil中的httpRequest方法
- JS中数组的常用方法(包含es6扩展)