1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wizardforcel-android-app-sec-guidebook

Клонировать/Скачать
4.2.1.md 4.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 27.11.2024 20:24 c13bfb7

4.2.1 Пример кода

Для того чтобы принимать широковещательные сообщения, необходимо создать широковещательный приемник. Риски и меры противодействия при использовании широковещательного приемника различаются в зависимости от типа принимаемого широковещания. Вы можете найти свой широковещательный приёмник в следующем процессе принятия решения.

Приложение не может проверить имя пакета приложения, отправляющего широковещательное сообщение, это необходимо партнёрам. Поэтому невозможно создать широковещательный приёмник для партнёров.

Таблица 4.2: Определение типов широковещательных приёмников:

Тип Определение
Частный Широковещательный приёмник, который может принимать только широковещание от того же приложения, поэтому он наиболее безопасен
Общий Широковещательный приёмник, который может принимать широковещание из неопределённого количества приложений
Внутренний Широковещательный приёмник, который может принимать только широковещание от других внутренних приложений

Кроме того, в соответствии с методом определения, широковещательные приёмники можно разделить на две категории: статические и динамические. Различия между ними можно найти на следующем рисунке. Пример кода демонстрирует методы реализации каждой категории. Также описывается метод реализации приложения-отправителя, поскольку стратегия противодействия отправке информации зависит от приёмника.

Таблица 4.2-2

Метод определения Характеристики
Статический Определяется элементом <receiver> в AndroidManifest.xml 1) Существуют некоторые ограничения, нельзя получить некоторые широковещательные сообщения, отправленные системой, например ACTION_BATTERY_CHANGED. 2) Можно получать широковещательные сообщения с момента запуска приложения до его удаления
Динамический Динамическая регистрация и отмена регистрации широковещательного приёмника путём вызова registerReceiver() и unregisterReceiver() в программе 1) Можно получить широковещательные сообщения, которые не могут быть получены статическими широковещательными приёмниками. 2) Временем приёма широковещательных сообщений можно управлять с помощью программы, например, можно принимать широковещательные сообщения только тогда, когда активность находится на переднем плане. 3) Невозможно создать частный широковещательный приёмник.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/wizardforcel-android-app-sec-guidebook.git
git@api.gitlife.ru:oschina-mirror/wizardforcel-android-app-sec-guidebook.git
oschina-mirror
wizardforcel-android-app-sec-guidebook
wizardforcel-android-app-sec-guidebook
master