のように優先順位を設定できるのではないかと思いIntentService
ましたThread
。今のところ何も見つかりません。
4 に答える
インテントサービスProcess.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)
の方法で設定できます。onHandleIntent()
CommonsWareによるソリューションも機能します。ただし、これはもっと簡単です。
使用HandlerThread
するIntentService
はSDKに公開されていません。優先度として設定さProcess.THREAD_PRIORITY_DEFAULT
れています。
IntentService
空白とコメントを含む143行のコードであることに注意してください。したがって、クローンを作成して、目的の優先順位を持つコードを作成することを検討してください。
明確にするために、内部的に使用するため、デフォルトでIntentService
は優先度がデフォルトです。OnHandleIntent()、またはCommonsWareが回答で提案したものなら何でも使用できます。Process.THREAD_PRIORITY_DEFAULT
HandlerThread
Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)
一部の人々はこれをバグとして提起しました。このために利用できるパッチもあります。
「android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_BACKGROUND);」を使用してIntentServiceの優先度を変更しました。IntentServiceクラスのコンストラクター内。
私の場合は、ゼロ(0)の "Process.THREAD_PRIORITY_DEFAULT"から10(10)の "Process.THREAD_PRIORITY_BACKGROUND"に変更され、結果が表示されました。