比如,AsynaTask生命周期就需要考虑,与Activity生命周期不一致。
大家讲道理2017-04-17 17:50:38
アクティビティが破棄されると、ネットワーク リクエストをキャンセルする必要があります。たとえば、Volley は通常、onStop() で VolleyRequest.cancelPendingRequests(tagName);
を呼び出します。巴扎黑2017-04-17 17:50:38
その他は不明です。Volley
に関しては、cancelメソッドを使用してもネットワークリクエストは停止されません。だけではキャンセルされません。実際、ネットワーク リクエストはバックグラウンド スレッドであり、タイムアウト制限があるため、ネットワーク リクエストが停止しなくても、影響は大きくありません。重要なのは、コールバック メソッドが実行できないことです。ライフサイクルが終了した後に呼び出されるため、 が終了したときにリクエストをキャンセルする必要があります。
怪我咯2017-04-17 17:50:38
ネットワーク リクエストは新しく開かれたスレッドです。通常、メイン スレッドの破棄はほとんど影響しません。通常はメイン スレッドで何かを実行しますが、この時点ではメイン スレッドが削除されています。破壊されました。したがって、キャンセルを手動で処理する必要があります。