iOS開發(fā) 之 檢測是否有網(wǎng)絡(luò)連接

點擊查看所參考的技術(shù)文章

利用單利+模型,來記錄當(dāng)前網(wǎng)絡(luò)的具體狀態(tài).

如果工程里面是用的AFNetworking請求網(wǎng)絡(luò)數(shù)據(jù),可直接使用AFNetworkReachabilityManager.h來判斷網(wǎng)絡(luò)狀態(tài)。
使用AF請求網(wǎng)絡(luò):
在AppDelegate.h里面添加類方法:

+(void)netWorkStatus;//獲取網(wǎng)絡(luò)狀態(tài)

在.m里面

import "AppDelegate.h"
import "ViewController.h"
import "AFNetworkReachabilityManager.h"http://af里面監(jiān)聽網(wǎng)絡(luò)狀態(tài)的類
import "FileManager.h"http://單利模型津函,用來記錄當(dāng)前的網(wǎng)絡(luò)狀態(tài)

@interface AppDelegate ()

@end  

@implementation AppDelegate

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    ViewController *view = [[ViewController alloc] init];
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:view];
    self.window.rootViewController = nav;
    //調(diào)用網(wǎng)絡(luò)狀態(tài)
    [AppDelegate netWorkStatus];
    return YES;
}

+(void)netWorkStatus
{
    /**
     AFNetworkReachabilityStatusUnknown          = -1,  // 未知
     AFNetworkReachabilityStatusNotReachable     = 0,   // 無連接
     AFNetworkReachabilityStatusReachableViaWWAN = 1,   // 3G 花錢
     AFNetworkReachabilityStatusReachableViaWiFi = 2,   // WiFi
     // 如果要檢測網(wǎng)絡(luò)狀態(tài)的變化,必須用檢測管理器的單例的startMonitoring
    [[AFNetworkReachabilityManager sharedManager] startMonitoring];
    // 檢測網(wǎng)絡(luò)連接的單例,網(wǎng)絡(luò)變化時的回調(diào)方法
    [[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
        //這是單利+模型厦取,用來記錄網(wǎng)絡(luò)狀態(tài)
        FileManager *maa = [FileManager shareFileManager];
        maa.netState = status;
        //        NSLog(@"-----網(wǎng)絡(luò)狀態(tài)----%ld---%d", status,maa.netState);
    }];
}

創(chuàng)建一個.h文件命名為Singleton

//  Singleton.h
//  SingletonModel
//  Created by 琳小兮 on 15/5/21.
//  Copyright (c) 2015年 琳小兮. All rights reserved.
//
//因為方法名 shared"ClassName"是連在一起的桥帆,為了讓宏能夠正確替換掉簽名中的“ClassName”需要在前面加上 ##
//當(dāng)宏的定義超過一行時赖淤,在末尾加上“\”表示下一行也在宏定義范圍內(nèi)。注意最后一行不需要加"\”谅河。
//使用方法:(單利配合模型使用很方便)
//在.h里面(//公開的訪問單利對象的方法singleton_interface(MyModel))
//在.m里面(singleton_implementation(MyModel))

define singleton_Interface(class)   (class *)share;
define singleton_implemetntion(class)  static class * instance = nil;

+(class *)share
{
  if (!instance) {
    instance = [[class alloc]init];
  }
  return instance;
}

+(class *)allocWithZone:(struct _NSZone *)zone
{
    static dispatch_once_t onece;
    dispatch_once(&onece, ^{
      instance = [super allocWithZone:zone];
    });
    return instance;
}

然后創(chuàng)建模型咱旱,命名為FileManager
在FileManager.h里面

import <Foundation/Foundation.h>
import "Singleton.h"

@interface FileManager :NSObject

singleton_Interface(FileManager)
@property (nonatomic,assign) int netState;

@end

在FileManager.m里面

import "FileManager.h"

@implementation FileManager

singleton_implemetntion(FileManager)

@end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市绷耍,隨后出現(xiàn)的幾起案子吐限,更是在濱河造成了極大的恐慌,老刑警劉巖褂始,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诸典,死亡現(xiàn)場離奇詭異,居然都是意外死亡崎苗,警方通過查閱死者的電腦和手機狐粱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胆数,“玉大人肌蜻,你說我怎么就攤上這事”啬幔” “怎么了蒋搜?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長判莉。 經(jīng)常有香客問我豆挽,道長,這世上最難降的妖魔是什么券盅? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任帮哈,我火速辦了婚禮,結(jié)果婚禮上渗饮,老公的妹妹穿的比我還像新娘但汞。我一直安慰自己宿刮,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布私蕾。 她就那樣靜靜地躺著僵缺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪踩叭。 梳的紋絲不亂的頭發(fā)上磕潮,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天,我揣著相機與錄音容贝,去河邊找鬼自脯。 笑死,一個胖子當(dāng)著我的面吹牛斤富,可吹牛的內(nèi)容都是我干的膏潮。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼满力,長吁一口氣:“原來是場噩夢啊……” “哼焕参!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起油额,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤叠纷,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后潦嘶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體涩嚣,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年掂僵,在試婚紗的時候發(fā)現(xiàn)自己被綠了航厚。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡看峻,死狀恐怖阶淘,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情互妓,我是刑警寧澤溪窒,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站冯勉,受9級特大地震影響澈蚌,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜灼狰,卻給世界環(huán)境...
    茶點故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一宛瞄、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧交胚,春花似錦份汗、人聲如沸盈电。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽匆帚。三九已至,卻和暖如春旁钧,著一層夾襖步出監(jiān)牢的瞬間吸重,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工歪今, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留嚎幸,地道東北人。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓寄猩,卻偏偏與公主長得像嫉晶,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子田篇,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,562評論 2 349

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

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法车遂,類相關(guān)的語法,內(nèi)部類的語法斯辰,繼承相關(guān)的語法,異常的語法坡疼,線程的語...
    子非魚_t_閱讀 31,598評論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理彬呻,服務(wù)發(fā)現(xiàn),斷路器柄瑰,智...
    卡卡羅2017閱讀 134,633評論 18 139
  • JAVA面試題 1闸氮、作用域public,private,protected,以及不寫時的區(qū)別答:區(qū)別如下:作用域 ...
    JA尐白閱讀 1,146評論 1 0
  • 單例:意思就是只有一個實例。單例模式確保某一個類只有一個實例教沾,而且自行實例化并向整個系統(tǒng)提供這個實例蒲跨。這個類稱為單...
    CoderZS閱讀 604評論 1 13
  • 談?wù)撃切?談?wù)摬煌甑氖?讓我疲倦極了
    長馬閱讀 240評論 0 2