博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift 监测网络状态
阅读量:6988 次
发布时间:2019-06-27

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

一、说明

监测网络状态的意义:
1.通过对网络状态的监控,可以让应用在联网与不联网这两种状态中,做出相应的响应
2.及提醒用户,现在是处在什么网络状态下。

二、方法

苹果官方提供了一个叫Reachability的示例程序

1.添加框架SystemConfiguration.framework

Xcode -> “项目” -> Build Phases -> Link Binary With Libraries -> +![图片描述][1]

2.添加两个源代码文件

Reachability.hReachability.m![图片描述][2]

3.在桥接头文件中引入

#import "Reachability.h"

4.代码示例

override func viewDidLoad() {    //添加通知,当收到通知时,调用inspectNetworkState()方法    let center = NSNotificationCenter.defaultCenter()    center.addObserver(self, selector: Selector(inspectNetworkState()), name: kReachabilityChangedNotification, object: nil)}    func inspectNetworkState() {    //监测wifi状态    let wifi = Reachability.reachabilityForLoaclWifi()        //监测手机是否能连移动网络(2g/3g)    let mobile = Reachability.reachabilityForInternetConnection()        //判断网络的状态    if (wifi.currentReachabilityStatus() != NotReachable) {        print("当前是wifi网络")    } else if (mobile.currentReachabilityStatus() != NotReachable) {        print("当前是移动3g/4g网络")    } else {        print("当前无网络")    }}

转载地址:http://vnzvl.baihongyu.com/

你可能感兴趣的文章
MySQL日志功能详解
查看>>
股票的筑顶危险信号
查看>>
MTK 电池曲线配置【转】
查看>>
【.Net】输出的字符靠右对齐
查看>>
24.Node.js Stream(流)
查看>>
linux中chown命令
查看>>
weex 引导页(guide)页面
查看>>
【转】Java中JDK和JRE的区别是什么?它们的作用分别是什么?
查看>>
网络最大流算法—EK算法
查看>>
HTML5实现图片文件异步上传
查看>>
Cocos Creator 对象池cc.NodePool的使用
查看>>
mongodb download
查看>>
android中非堵塞socket通信
查看>>
Objective-C 小记(10)__weak
查看>>
【js html】对于<img>图片的引用填充,src可以给什么值?
查看>>
Oracle 空间查询, 数据类型为 sdo_geometry
查看>>
散列表
查看>>
完善String类([]、 +、 += 运算符重载)、>>和<<运算符重载
查看>>
一步一步从原理跟我学邮件收取及发送 13.mime格式与常见字符编码
查看>>
qeephp 记录下
查看>>