3

我一直在阅读有关从广播接收器启动服务的信息。在这种情况下,我必须获取一个 WakeLock,直到 Intent 由 IntentService 处理。

当我直接从包装到 pendingIntent 中的 AlarmManager 调用 IntentService 时会怎样?在这种情况下,没有广播接收器...意图直接转发到服务的 onHandleIntent。那么,我在哪里获得锁呢?真的需要吗???一切似乎都很好。

4

1 回答 1

1

AnIntentService只是一个线程服务。您将需要获取唤醒锁。Commonsguy 在WakefulIntentService 这里很可爱。

他的 IntentService 为您获取了一个唤醒锁,因此如果您从 AlarmService 调用它,它将唤醒获取唤醒并在工作完成后释放它。

我已经使用它分配了,效果很好,并且源在 Github 上,所以你可以看到它是如何工作的。

于 2012-08-23T14:43:21.453 回答