私のアプリでエラーを防ぐ方法がわかりません。 URLSession.shared.dataTaskを使用してサーバーを呼び出す必要があります。これを実行すると完全に正常に動作します。しかし、viewControllerが長く存在しないため、URLSession.shared.dataTaskが完了する前にスタックからuiviewcontrollerをポップすると、実行時エラーが発生します。これは、jsonの解析とネットワークコールのさまざまな場所で発生します。通常、ネットワークコールが失敗した場合のコールバックまたはエラーの表示。誰もがuiviewcontrollerがネットワークコールコードを検出または検出したときにネットワークコールを停止する方法を知っていますか?uiviewcontrollerが消えてコールバックを呼び出さないようにしました。私はSwift 3でXcode 8とiOS 10を使用しています。ありがとう。URLSession.share.datataskを呼び出す前に、ユーザーがuiviewcontrollerをポップするのを完了することができます
0
A
答えて
1
あなたのVCをポップする前に、これらを呼び出す:
[dataTask cancel]
dataTask = nil // if needed
(これらがobj-Cであるが、あなたのアイデアを得るため、あなたは、スウィフトoを変換する必要がある場合があります)
をあなたの場合also detect if it is the last VCあなたがしたい場合は、メソッドでこれを行うことができます。
関連する問題
- 1. Promiseが完了する前にメソッドが呼び出される
- 2. 前の呼び出しが完了する前にboost ASIO async_receive()をもう一度呼び出す
- 3. 登録イベントが完了する前に、サービスワーカーインストールイベントが呼び出されます
- 4. トリガーが完了する前にデータベース呼び出しが返されますか?
- 5. アプリケーションが終了する前に終了するスレッドでCoUninitializeを呼び出すことは重要ですか?
- 6. VBA:BloombergのBDP呼び出しが完了するまで待つ
- 7. dataTaskWithRequestの呼び出しが完了するまでスウィフト待ち
- 8. アクティビティonCreateが終了する前にonViewCreatedを呼び出すことはできますか?
- 9. 次のメソッドを呼び出す前に完了しないコード
- 10. Application.Run()が呼び出される前に終了(終了)とアプリケーションが呼び出されていますか?
- 11. JQueryですべてのajax呼び出しが完了すると、各ループは完了しますか?
- 12. UICollectionViewがscrollViewDidScrollを呼び出すとき:ナビゲーションスタックからポップされるとき
- 13. 非同期呼び出しが完了する前に角度テストが終了していますか?
- 14. AJAXが完了した後に関数を呼び出すことができません
- 15. CATransactionの完了がすぐに呼び出される
- 16. 完了時にAjaxが別のAjax関数を呼び出す
- 17. ユーザーがウィンドウを閉じる前に角2を呼び出す
- 18. フェッチが完了したときにメソッドを呼び出す方法
- 19. TimePickerが完了したときに非静的関数を呼び出す
- 20. ExecutorでMongoRepositoryを呼び出すサービスが完了しない
- 21. プログラムを終了する前にコードビヘイビアでメソッドを呼び出す
- 22. リアクションでajax呼び出しが完了する前にコンポーネントのレンダリングを停止する方法
- 23. (Cordovaプラグインの作成)他のアクティビティが完了する前にOnActivityの結果が呼び出されます
- 24. プロンプトユーザーがAPIを完了する前に警告がここ
- 25. ユーザーがキャンセルする前にタスクを完了させる
- 26. 完了ブロックが完了したらメソッドを呼び出す方法は?
- 27. 別の関数が完了した後に関数を呼び出すと、前の関数がすべて呼び出されます。
- 28. 呼び出されたメソッドが完了するまでループ待機します
- 29. jQueryが完了する前にアニメーションが完了するまで待つ
- 30. ケースステートメントでメソッドを呼び出すことができますruby
ありがとうございます –