Что такое использование android: exported = "true" в BroadcastReceiver

Привет, я вижу, что какой-то широковещательный приемник использует этот тег android:exported="true" в Android Manifest.xml для регистрации.

<receiver android:exported="true" android:name="com.flyingsoftgames.googleplayquery.QueryReceiver">
    <intent-filter>
       <action android:name="com.android.vending.INSTALL_REFERRER" />
    </intent-filter>
</receiver>

Какое использование android:exported="true" для регистрации широковещательного приемника в Android?

Спасибо заранее.

Ответ 1

В Руководство разработчика:

Android: экспортироватьсяНезависимо от того, сможет ли широковещательный приемник получать сообщения из источников вне его приложения - "true", если это возможно, и "false" , если нет. Если "false" , единственными сообщениями, которые может принимать широковещательный приемник, являются те, которые отправляются компонентами одного и того же приложения или приложений с одинаковым идентификатором пользователя. Значение по умолчанию зависит от того, содержит ли широковещательный приемник фильтры намерений. Отсутствие каких-либо фильтров означает, что он может быть вызван только объектами Intent, которые определяют его точное имя класса. Это означает, что приемник предназначен только для внутреннего использования приложения (так как другие обычно не знают имя класса). Поэтому в этом случае значением по умолчанию является "false" . С другой стороны, наличие по меньшей мере одного фильтра подразумевает, что широковещательный приемник предназначен для приема сигналов, транслируемых системой или другими приложениями, поэтому значение по умолчанию является "истинным".

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

Ответ 2

андроид: экспортироваться

true: приемник вещания может принимать события, отправленные теми же или другими приложениями

false‍: получатель вещания может принимать события, отправленные одним и тем же приложением