7

のように優先順位を設定できるのではないかと思いIntentServiceましたThread。今のところ何も見つかりません。

4

4 に答える 4

13

インテントサービスProcess.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)の方法で設定できます。onHandleIntent()

CommonsWareによるソリューションも機能します。ただし、これはもっと簡単です。

于 2013-06-07T22:21:37.777 に答える
6

使用HandlerThreadするIntentServiceはSDKに公開されていません。優先度として設定さProcess.THREAD_PRIORITY_DEFAULTれています。

IntentService空白とコメントを含む143行のコードであることに注意してください。したがって、クローンを作成して、目的の優先順位を持つコードを作成することを検討してください。

于 2010-09-01T21:03:53.053 に答える
0

明確にするために、内部的に使用するため、デフォルトでIntentServiceは優先度がデフォルトです。OnHandleIntent()、またはCommonsWareが回答で提案したものなら何でも使用できます。Process.THREAD_PRIORITY_DEFAULTHandlerThreadProcess.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)

一部の人々はこれをバグとして提起しました。このために利用できるパッチもあります。

于 2016-08-03T18:36:06.483 に答える
-4

「android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_BACKGROUND);」を使用してIntentServiceの優先度を変更しました。IntentServiceクラスのコンストラクター内。

私の場合は、ゼロ(0)の "Process.THREAD_PRIORITY_DEFAULT"から10(10)の "Process.THREAD_PRIORITY_BACKGROUND"に変更され、結果が表示されました。

于 2013-02-01T17:51:45.380 に答える