У меня есть прецедент, где Service
выполняет некоторую работу на заднем плане и должен уведомить событие о двух Activities
и одном Service
. Я использую упорядоченную трансляцию, потому что:Упорядоченная трансляция для обслуживания
1) Если на переднем плане находится ActivityA
, она обрабатывает входящее событие, а затем отменяет широковещательную передачу. Таким образом, ActivityB
и Service
не будут уведомлены.
2) В случае, если трансляция не прервана, ActivityB
является следующим на линии. Он также отменяет трансляцию, если она активна.
3) В противном случае Service
имеет дело с событием.
Для этого на каждом компоненте с другим приоритетом имеется BroadcastReceiver
. Service's BroadcastReceiver
является внутренним статическим классом, а <receiver>
объявлен в AndroidManifest.xml с надлежащим <intent-filter>
.
Проблема заключается в том, что, как указано here, я не хочу, чтобы кто-либо подслушивал мои трансляции, оставляя пользовательские действия в манифесте, но я не знаю других способов достижения порядка, кроме использования упорядоченной трансляции.
Любые другие варианты?
Я думаю, что AIDL является излишним в этом случае. Кроме того, компоненты находятся в одном процессе. –