2

これはシナリオです:

  • バックグラウンド構成の NSURLSession
  • ダウンロードまたはアップロードのタスクは、インターネット接続が悪いかインターネット接続がありません。
  • ユーザーがアプリを閉じます。
  • iOS がインターネット接続を取得すると、セッション タスクが開始されます。でも、
  • タスクはまだインターネットを待っています。
  • ユーザーがアプリを強制終了します
  • システムはすべての保留中のタスクをキャンセルします

質問

ユーザーがアプリを再度開いたときに、タスクがキャンセルされたことを知ることは可能ですか?

はいの場合、どこですか?


この回答では、はい、可能ですが、エラーを返すコールバックを取得できません。

Alamofire を使用して、すべてのネットワーク コールを処理しています。ただし、Alamofire によって動作が変わるとは思えません。


編集 1

/// Networking manager with Background Session Configuration
static var backgroundManager: Alamofire.Manager = {

    let configuration = NSURLSessionConfiguration.backgroundSessionConfigurationWithIdentifier("com.xxx.NetworkingManager.Identifier")
    configuration.HTTPAdditionalHeaders = Manager.defaultHTTPHeaders

    let backgroundManager = Alamofire.Manager(configuration: configuration)
return backgroundManager
}()
4

1 に答える 1