2017-12-27 9 views
0

私はネットワーキングリクエストを送信し、リクエストのレスポンスに関連したコールバック機能を持っています。http応答を受信する前にアプリが一時停止/停止するとどうなりますか?

http応答を受信する前にアプリが一時停止/停止するとどうなりますか?コールバックはバックグラウンドで実行されますか?

+0

あなたの行動をどのように扱うかによって、アプリケーションが停止するとコンテキストがnullになります。これを防ぐには、アクティビティのNULLチェックを行います。 –

答えて

1

アプリはが行う活動、/一時停止停止されません。しかし、あなたの活動がもはやフォアグラウンド活動でなくなったら、OSはいつでもメモリを解放するためにあなたのプロセスをfreely killすることができます。プロセスが終了すると、もうコールバックを取得しません。

これが1秒以内に返される通常のHTTPリクエスト/レスポンスの場合、私はそれについて心配しません。

長時間走っている場合は、代わりにserviceを使用してください。

@Arbaz Rizviがコメントで述べたように、文脈にも注意してください:アクティビティのコンテキストを使用せず、アクティビティに関連付けられていないプロセス全体のコンテキストを取得するために、Context.getApplicationContext()を使用してください。

+0

Ok ..しかし、プロセスが殺されないとどうなるでしょうか?コールバックが実行され、UIの変更を行うことができますか? –

+0

コールバックが実行されます。しかし、UIの変更を行うことができるかどうかは、あなたの活動が破壊されたかどうかによって異なります。 – Thomas

関連する問題