2016-11-23 12 views
1

このコードのインターネット接続がない場合、私はURLSessionの動作をテストしてい:URLSession応答なしインターネット接続

var dataTask: URLSessionDataTask? 

    let url = NSURL(string: "https://itunes.apple.com/search?media=music&entity=song&term=test") 
    dataTask = defaultSession.dataTask(with: url! as URL) { 
     data, response, error in 

     if let error = error { 
      print(error.localizedDescription) 
     } else if let _ = response as? HTTPURLResponse { 
      print("ok") 
     } 
    } 
    dataTask?.resume() 

私は私のインターネット接続無効にこのコードを実行します。 iOS9では、completionBlockがすぐに呼び出され、このエラーが発生します。

エラードメイン= NSURLErrorDomainコード= -1009「インターネット接続はオフラインです。」

しかし、私はiOS10の下にまったく同じコードを実行したときに完了ブロックは1分(タイムアウト)後に呼び出されると、私が持っているエラーはエラードメイン= NSURLErrorDomainコード=

異なっています - 1001 "リクエストがタイムアウトしました。"

iOS9とiOS10では同じ動作が必要です。私はxCode 8.1を使用していますが、シミュレータを使用してさまざまなiOSバージョンのアプリをテストしています。

ありがとうございます!接続を確認のため

+1

デバイスが正しく動作しているため、シミュレータに関連する問題と思われます。 –

答えて

-1

、あなたはそれが魔法のように動作github

に到達可能性クラスを使用することができます。

関連する問題