Sobes.tech
Junior — Middle

Quel rôle joue l'attribut android:exported dans AndroidManifest.xml lors de la définition des composants de l'application?

sobes.tech IA

Réponse de l'IA

L'attribut android:exported dans AndroidManifest.xml détermine si un composant de l'application (Activity, Service, BroadcastReceiver ou ContentProvider) peut être accessible pour le lancement ou l'interaction depuis d'autres applications.

  • Si android:exported="true", le composant est accessible de l'extérieur, c'est-à-dire que d'autres applications peuvent lancer ce composant.
  • Si android:exported="false", le composant n'est accessible qu'à l'intérieur de l'application elle-même.

Ceci est important pour la sécurité et la gestion des accès. À partir d'Android 12, pour les composants avec des filtres d'intention, il est obligatoire de définir explicitement cet attribut.

Exemple:

<activity android:name=".MainActivity" android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>