用SCNetworkReachability判斷聯(lián)網(wǎng)狀態(tài)

1、判斷手機是否連接到網(wǎng)絡塑陵,iOS提供了一個SCNetworkReachabilityRef類垫桂,方便我們的使用。
2孵滞、創(chuàng)建一個工具類,方便全局調(diào)用

.h

#import <Foundation/Foundation.h>

@interface NetworkUtil : NSObject

+ (BOOL)isNetworkReachable;

@end

.m

#import "NetworkUtil.h"
#import <SystemConfiguration/SCNetworkReachability.h>
#import <netdb.h>

@implementation NetworkUtil

// networkチェック
+ (BOOL)isNetworkReachable
{
    // Create zero addy
    //創(chuàng)建零地址鸯匹,0.0.0.0的地址表示查詢本機的網(wǎng)絡連接狀態(tài)
    struct sockaddr_in zeroAddress;
    bzero(&zeroAddress, sizeof(zeroAddress));
    zeroAddress.sin_len = sizeof(zeroAddress);
    zeroAddress.sin_family = AF_INET;

    // Recover reachability flags
    // SCNetworkReachabilityFlags:保存返回的測試連接狀態(tài)
    // 其中常用的狀態(tài)有:
    // kSCNetworkReachabilityFlagsReachable:能夠連接網(wǎng)絡
    // kSCNetworkReachabilityFlagsConnectionRequired:能夠連接網(wǎng)絡坊饶,但是首先得建立連接過程
    // kSCNetworkReachabilityFlagsIsWWAN:判斷是否通過蜂窩網(wǎng)覆蓋的連接,比如EDGE殴蓬,GPRS或者目前的3G.主要是區(qū)別通過WiFi的連接匿级。
    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

使用

#import "ViewController.h"
#import "NetworkUtil.h"


@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    BOOL result = [NetworkUtil isNetworkReachable];
    NSLog(@"是否可以聯(lián)網(wǎng):%@",result?@"YES":@"NO");
}
@end
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市染厅,隨后出現(xiàn)的幾起案子痘绎,更是在濱河造成了極大的恐慌,老刑警劉巖肖粮,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件孤页,死亡現(xiàn)場離奇詭異,居然都是意外死亡涩馆,警方通過查閱死者的電腦和手機行施,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來魂那,“玉大人悲龟,你說我怎么就攤上這事”埃” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵皿渗,是天一觀的道長斩芭。 經(jīng)常有香客問我,道長乐疆,這世上最難降的妖魔是什么划乖? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮挤土,結果婚禮上琴庵,老公的妹妹穿的比我還像新娘。我一直安慰自己仰美,他們只是感情好迷殿,可當我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著咖杂,像睡著了一般庆寺。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上诉字,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天懦尝,我揣著相機與錄音知纷,去河邊找鬼。 笑死陵霉,一個胖子當著我的面吹牛琅轧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播踊挠,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼乍桂,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了止毕?” 一聲冷哼從身側響起模蜡,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎扁凛,沒想到半個月后忍疾,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡谨朝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年卤妒,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片字币。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡则披,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出洗出,到底是詐尸還是另有隱情士复,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布翩活,位于F島的核電站阱洪,受9級特大地震影響,放射性物質發(fā)生泄漏菠镇。R本人自食惡果不足惜冗荸,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望利耍。 院中可真熱鬧蚌本,春花似錦、人聲如沸隘梨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽税稼。三九已至,卻和暖如春只祠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背熊杨。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工晶府, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留钻趋,地道東北人。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓较沪,卻偏偏與公主長得像尸曼,于是被迫代替她去往敵國和親萄焦。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,914評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 下面為Daytime這個服務的源代碼例子茬射,同時兼容IPV6和IPV4的地址烘苹,最后部分有更多說明。 單播模式下的Se...
    天楚銳齒閱讀 5,676評論 0 2
  • 發(fā)現(xiàn)寫博客想寫明白也是一件不容易的事情镣衡。 這次拿YYKIt 源碼 分析分析档悠。希望這次能寫的更好些。 YYKit 系...
    充滿活力的早晨閱讀 6,572評論 4 16
  • 大綱 一.Socket簡介 二.BSD Socket編程準備 1.地址 2.端口 3.網(wǎng)絡字節(jié)序 4.半相關與全相...
    VD2012閱讀 2,344評論 0 5
  • 最近一直在看游雙的《高性能linux服務器編程》一書惰说,下載鏈接: http://download.csdn.net...
    張小方閱讀 1,201評論 0 2
  • 轉至元數(shù)據(jù)結尾創(chuàng)建: 董瀟偉吆视,最新修改于: 十二月 23, 2016 轉至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,715評論 0 9