当前位置: > > > Swift - 判端网络连接状态,连接类型(3G还是Wifi)

Swift - 判端网络连接状态,连接类型(3G还是Wifi)

1,Reachability.swift 是一个使用Swift写的第三方网络检测类。
可以测试网络是否连接,并支持3G和Wifi的检测。


使用样例:
import UIKit

class ViewController: UIViewController {
    
    @IBOutlet weak var statusLabel: UILabel!
    @IBOutlet weak var typeLabel: UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    @IBAction func checkConnect(sender: AnyObject) {
        let reachability = Reachability.reachabilityForInternetConnection()
        
        //判断连接状态
        if reachability!.isReachable(){
            statusLabel.text = "网络连接:可用"
        }else{
            statusLabel.text = "网络连接:不可用"
        }
        
        //判断连接类型
        if reachability!.isReachableViaWiFi() {
            typeLabel.text = "连接类型:WiFi"
        }else if reachability!.isReachableViaWWAN() {
            typeLabel.text = "连接类型:移动网络"
        }else {
            typeLabel.text = "连接类型:没有网络连接"
        }
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}
源码下载:hangge_778.zip

2,Reachability.swift 还能监听网络变化,当网络切换的时候会发出通知
具体代码可以访问它的主页:Reachability.swift
评论2
  • 2楼
    2015-11-25 10:17
    pzy

    请问这个如何监听网络变化呀??

    站长回复

    看我文章最下面的链接,这个组件github主页中有详细的样例代码。使用reachability.startNotifier()让其开始监听网络变化,当有变化时就会出通知,我们在通知响应函数中进行需要的相关逻辑处理就可以了。

  • 1楼
    2015-10-19 10:55
    木头人

    IJReachability.swift 里面三个d是什么意思呀

    站长回复

    这个原来写一半给忘记了。现已修改