2

ServiceIntentServiceの違いについては、こちらをご覧ください。ロケーショントラッキングサービスの場合のサービスとIntentService

私が読ん主なものは、IntentServiceは、サービスが実行されているWorkerhtreadを持っていることである。

私は関係なく、アプリケーションの活動/ UIの実行サービスを持っている必要があり、ユーザーの場所を追跡します。

サービスは、GoogleApiClient.ConnectionCallbacks,GoogleApiClient.OnConnectionFailedListenerおよびLocationListenerを実装し、実行時には常にユーザーの場所で(停止するまで)テーブルを更新します。

ServiceまたはIntentServiceを使用しますか?

答えて

3

IntentServiceは、比較的短時間の作業のために、サービスを開始するために、火災と忘れのためのものです。もう1つの重要な違いは、onHandleIntent()が返ってくるとIntentServiceが停止することです。定期的なサービスは、あなた(またはアンドロイドOS)が明示的に停止しない限り停止しません。アプリがフォアグラウンドにないときに実行される長期実行タスクを計画しているようです。

このシナリオでは、確実に通常のサービスを使用します。別のスレッドで作業を実行することもできますが、サービス内で作業を行いそこで作業を行いますが、必ずしもそうする必要はありません。デフォルトでは、サービスはメインのtheadで実行されることに注意してください。

+0

よく説明された答えをありがとう。私は定期的なサービスに行き、場所を追跡するためにスレッドを開始するかもしれないと思う。もう1つの質問 - 私はそれにGoogleマップで断片を持っています、そして、私は場所が変更されたときに断片を知らせて、新しい場所を描くことができるようにしたいと思います。私はカスタムインテントを放送してこれを行うことを考えていました。それはOKと聞こえますか? –

+0

はい、OKです –

関連する問題