Что такое Sticky Broadcast?

Я встретил этот термин в документации для Android с приложенным определением

Это широковещательные передачи, данные которых хранятся в системе после завершения, так что клиенты могут быстро получить эти данные без приходится ждать следующей трансляции. 1238 Что это значит? Может ли кто-нибудь конкретизировать его использование на конкретном примере? Я считаю, что мы должны запросить разрешение на использование этого намерения? Почему так?

<uses-permission android:name="android.permission.BROADCAST_STICKY"/> - Allows an application to broadcast sticky intents.
86
задан M-WaJeEh 15 April 2014 в 04:43
поделиться

1 ответ

Прочтите объяснение Марка Мерфи здесь: в чем разница между sendStickyBroadcast и sendBroadcast в Android

Вот абстрактный пример того, как можно использовать липкую трансляцию:

Intent intent = new Intent("some.custom.action");
intent.putExtra("some_boolean", true);
sendStickyBroadcast(intent);

Если вы слушаете эту трансляцию в Activity, которая была заморожена (onPause), вы может пропустить фактическое мероприятие. Это позволяет вам проверить трансляцию после ее запуска (onResume).

РЕДАКТИРОВАТЬ: Подробнее о липких трансляциях ...

Также ознакомьтесь с removeStickyBroadcast (Intent) и на уровне API 5+, isInitialStickyBroadcast () для использования в приемнике onReceive .

Надеюсь, что это поможет.

107
ответ дан 24 November 2019 в 08:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: