1

サービスから実行しましたAsyncTask。別のスレッドで実行されるためAsyncTask、疑問はほとんどありません。

  1. onStartCommand()AsyncTask の実行中にサービス メソッドが返るとどうなりますか? の実行中にサービスがシャットダウンしAsyncTaskますか? この状況を解決するにはどうすればよいですか? START_STICKY を使用する必要がありますか?

  2. UIThreadonPostExecute()で実行されるため、サービスのonStartCommandメソッドと同じスレッドで実行されますか? AsyncTask上記の場合、サービスがシャットダウンしている間に がまだ実行されている場合はどうなりますか。どのスレッドonPostExecute()に?

Update:

Service を使用している理由は、Service がonReceiveBroadcast Receiver のメソッドからインスタンス化されるためです。onPreExecuteonReceive で通常のスレッドを使用できることに同意しますが、およびで行っているいくつかの通知も発生させる必要があるため、service-AsyncTask パターンの方が優れているようですonPostExecute

4

1 に答える 1