Android - нужен ли WakeLock? - PullRequest
       30

Android - нужен ли WakeLock?

1 голос
/ 20 марта 2012

У меня есть BroadcastReceiver, который прослушивает «SMS_SENT» намерение после отправки SMS. Насколько я знаю, SMSManager действительно обеспечивает блокировку, чтобы он мог отправлять SMS (у меня нет никаких доказательств этого, но здравый смысл сказал бы мне, что это так).

Однако мой BroadcastReceiver вызывает WakefulIntentService, который использует свой собственный wakelock, так что все в порядке. Однако как насчет самого приемника? Нужно ли создавать новый wakelock, чтобы я мог гарантировать, что вызывается WakefulIntentService? Или я могу просто проигнорировать это так же, как это можно сделать с приемником для AlarmManager?

Спасибо

Ответы [ 2 ]

2 голосов
/ 21 марта 2012

Однако как быть с самим приемником?Нужно ли создавать новый wakelock, чтобы я мог гарантировать, что WakefulIntentService вызывается?

Когда ваш приемник вызывает WakefulIntentService.sendWakefulWork(), механизм WakefulIntentService получает WakeLock.

Пока вы не выполняете много работы до этого звонка, с вами все будет в порядке.

1 голос
/ 21 марта 2012

Я думаю, вам не нужно создавать Wakelock для ожидания ответа. Вот мои мысли. Прежде всего, представьте, что ваш приемник вещания по какой-то причине не получает вещание. Тогда у вас будет активный Wakelock. Во-вторых, мне кажется, что трансляция должна активировать ваш телефон (потому что я никогда не видел примеров приложений смс, где создается wakelock). Так что, на мой взгляд, вам не нужно создавать вейк-рул.

...