アクティビティの開始時にサービスを開始するAndroidアプリがあります。 サービスは、起動ルーチン中に大量のデータをダウンロードします。 サービスは次のように構成されます START_STICKY
、したがって自動的に再起動します。 問題は、テスト中にサービスが何度も再起動されることを発見したため、同じデータが何度も何度もダウンロードされることです。
この場合に「最善の策」があるかどうか、または再起動の継続を防ぐ方法があるかどうかを尋ねています。
ありがとうございました。
回答:
回答№1は0あなたは最後からコードを与えていませんが、問題がどこにあるのかを理解するのは難しいですが、アクティビティからサービスが開始された後、サービスが終了したときにサービスを呼び出して、インターネットが利用できる日に1回サービスを呼び出すことをお勧めします。数分後にサービスを呼び出します。
それは非常に簡単です。ローカルデータベース内に保存し、このデータベースからデータを表示します。また、新しいデータが利用可能かどうかを確認してください。利用可能な場合は、最初のユーザーに通知し、ユーザーが新しいデータを更新したい場合は更新されます。
この問題を解決する最良の方法です。コードのサポートが必要な場合は教えてください。注:ユーザーAlarmManagerおよびPendingIntent。
ありがとう。
回答№2の場合は0
サービスで「stopWithTask = false」フラグを使用してみてください。アプリケーションで何かが発生したときにサービスを停止しないようにします。この解決に役立つことを願っています。