Android: пользовательские намерения запускаются в первую очередь - PullRequest
0 голосов
/ 28 февраля 2012

Я пишу приложение, чтобы получать смс и отображать его на моем экране.Я объявил приемник трансляции и зарегистрировался в своей деятельности (в oncreate ()).Я также не установил приоритет в моем файле манифеста.Однако во время выполнения мой получатель сначала получает смс, а затем сначала вызывается служба системных сообщений.Это поведение пользовательских широковещательных приемников?

Thx!Рахул.

1 Ответ

0 голосов
/ 28 февраля 2012

Android отправляет заказанные трансляции для SMS-сообщений.Из справочника (выделено мной)

Заказанные трансляции (отправленные с Context.sendOrderedBroadcast) доставляются одному получателю за раз.Поскольку каждый получатель выполняется по очереди, он может передавать результат следующему получателю или может полностью прервать трансляцию, чтобы он не передавался другим получателям.Приемники заказов могут управляться с помощью атрибута android: priority соответствующего фильтра намерений; приемники с одинаковым приоритетом будут работать в произвольном порядке.

Я подозреваю, что из-за отсутствия приоритета порядок выбирается произвольно.

...