J'ai certains récepteurs déclarés dans mon manifeste :
<receiver <!-- no warning -->
android:name=".receivers.TriggerMonitoringBootReceiver"
android:enabled="false" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<receiver <!-- no warning -->
android:name=".receivers.ScanResultsReceiver"
android:enabled="false" >
<intent-filter>
<action android:name="android.net.wifi.SCAN_RESULTS" />
</intent-filter>
</receiver>
<receiver <!-- warning : Exported receiver does not require permission-->
android:name=".receivers.BatteryMonitoringReceiver"
android:enabled="false" >
<intent-filter>
<action android:name="@string/intent_action_setup_alarm" />
<action android:name="@string/intent_action_cancel_alarm" />
<action android:name="@string/intent_action_monitor" />
</intent-filter>
</receiver>
La première est destinée à recevoir un BOOT_COMPLETED
action. La seconde est destinée à recevoir android.net.wifi.SCAN_RESULTS
. La troisième est destinée à recevoir certaines actions de diffusion (intent_action_monitor) et certaines actions émises par la AlarmManager
(intent_action_setup_alarm etc).
Deux questions :
- Pourquoi je ne reçois pas le message d'avertissement sur tous les récepteurs ?
- Les autorisations que dois-je créer pour les récepteurs destinés à recevoir le système de services de corriger l'avertissement (je comprends de quoi il s'agit et je ne veux pas que quiconque d'utiliser mon récepteurs de toute façon) ? Va
exported="false"
faire pour démarrer les récepteurs wifi, les récepteurs, les récepteurs d'alarme etc ?
Je pensais de l'aide personnalisé avec la permissionandroid:protectionLevel="signatureOrSystem"
mais les docs de conseiller à la fois à ce niveau de protection et d'autorisations personnalisées. Alors, comment je doit gérer cet avertissement ?
Des liens vers les docs et/ou du code sera apprécié.