2016-11-28 6 views
0

よう繰延シンプルokhttp3のWeb要求を行うための最善の方法は何ですか:Androidの繰延Web要求

クライアントがオンラインになるとすぐに実行されますだけにして結果処理するために
Request request = Request.Builder().url(url).post(body).build(); 
Response response = client.newCall(request).execute(); 

たとえば、クライアントはデータをローカルに変更し、この変更をサーバーに送信する必要があります。しかし、ユーザーがオフラインで操作するケースもありますが、それでも対応する必要があります。

答えて

1

インターネットconnectivity changesを受信するブロードキャスト受信機と、リクエストを延期するための遅延ライブラリJdeferredを使用できます。

deferredの使用が多すぎると過度の作業である場合は、コネクターの変更が待ち時間が巨大になるまで、conutdownlatchと を別のスレッドで待つことができますので、賢明に選択してください。

CompletableFutureとすることもできます。しかし、これはapi 24からのみ利用可能です

もっと明確にする必要がある場合はお知らせください。

+0

アプリが閉鎖されたらどうなりますか?このリクエストは次回開封時に実行されますか? –

+0

この場合、アプリケーションクラス内でこれらの要求が検索されて再びスケジュールされると、要求がdbやファイルに保存されます –

関連する問題