2016-12-23 6 views
0

WiFiがない場合、guard行に入力されるため、Alamofire 3とのネットワーク接続がないかどうかを調べることができます。Alamofire 4:ネットワーク接続が検出されない

Alamofire.request(.GET, url) 
    .responseJSON { response in 
     guard let object = response.result.value else { 
      // no response <<<<<<<<<<<<<<<<<<<<<<<<<< 
      return 
     } 
     let json = JSON(object) 
     ... 
     ... 
} 

ここで、urlは文字列です。次のコードはAlamofire 4用です。アプリケーションがネットワーク接続を検出しない場合でも、guard行は入力されません。

Alamofire.request(url).responseJSON { response in 
    guard let object = response.result.value else { 
     // It doesn't enter here. 
     return 
    } 
    let json = JSON(object) 
    ... 
    ... 
} 

私は、単純なWiFi接続検出機能を書くことSystemConfigurationフレームワークを使用することができます。しかし、私はAlamofire 4にそれを検出させる方法を教えてください。ところで、[swift] [alamofire]で検索を実行した後、いくつかのトピックを読んだことがあります。

ありがとうございました。

答えて

0

Alamofireは、それは文句を言わない

+0

私は」nilには接続またはその他のエラーがない場合、単に、代わりに結果値をチェックするresponse.result.errorをチェックし、あなたのケースで、まだ、ネットワークの状態を検出することができます到達可能性を持っています上記の設定との接続がない場合、応答は空であるため、助けにならないでしょう。 –

+0

私はあなたがそれを呼び出した後も応答が空ではないと思っています。たとえそれが接続していなくても、それはエラーを返すでしょう、それでも、あなたは到達可能性 – Tj3n

関連する問題