- Syntaxe :
<activity-alias android:enabled=["true" | "false"] android:exported=["true" | "false"] android:icon="drawable resource" android:label="string resource" android:name="string" android:permission="string" android:targetActivity="string" > ... </activity-alias>
- Contenu dans :
<application>
- Peut contenir :
<intent-filter>
<meta-data>
- Description :
- Alias d'une activité, nommé par l'attribut
targetActivity
. La cible doit se trouver dans la même application que et déclaré avant l'alias dans le fichier manifeste.L'alias présente l'activité cible en tant qu'entité indépendante et peut avoir son propre ensemble d'intents des filtres. Ils, et non les les filtres d'intent sur l'activité cible elle-même, déterminer les intents peut activer la cible via l'alias et comment le système traite l'alias.
Par exemple, les filtres d'intent sur l'alias peuvent spécifiez
"android.intent.action.MAIN"
et"android.intent.category.LAUNCHER"
" des indicateurs, ce qui entraîne dans le lanceur d'applications, même si aucun des les filtres sur l'activité cible elle-même définissent ces indicateurs.À l'exception de
targetActivity
, les attributs<activity-alias>
constituent un sous-ensemble des attributs<activity>
. Pour les attributs du sous-ensemble, aucune des valeurs définies pour la cible ne s'applique à l'alias. Toutefois, pour les attributs qui ne font pas partie du sous-ensemble, les valeurs définies pour l'activité cible s'appliquent également à l'alias. - Attributs :
android:enabled
- Indique si l'activité cible peut être instanciée par le système via
cet alias.
"true"
si tel est le cas, et"false"
dans le cas contraire. La valeur par défaut est"true"
.L'élément
<application>
possède son propre attributenabled
qui s'applique à tous les composants d'application, y compris les alias d'activité. La<application>
et<activity-alias>
Les attributs doivent tous les deux être"true"
pour que le système puisse être instancié l'activité cible via l'alias. Si l'une des valeurs est"false"
, l'alias ne fonctionne pas. android:exported
- Indique si les composants d'autres applications peuvent lancer l'activité cible.
via cet alias.
"true"
si c'est le cas, et"false"
dans le cas contraire. Si la valeur est"false"
, l'activité cible ne peut être lancée via l'alias qu'en de la même application que l'alias ou les applications ayant le même ID utilisateur.La valeur par défaut varie selon que l'alias contient des filtres d'intent ou non. En l'absence de filtres, l'activité ne peut être appelée via l'alias qu'en spécifiant le nom exact de l'alias. Cela implique que l'alias est destiné uniquement à un usage interne à l’application, car les autres utilisateurs ne connaissent pas son nom. Ainsi, la valeur par défaut est
"false"
. En revanche, la présence d'au moins un filtre implique que l'alias est destiné à un usage externe. La valeur par défaut est donc"true"
. android:icon
- Icône de l'activité cible lorsqu'elle est présentée aux utilisateurs via l'alias.
Pour en savoir plus, consultez les éléments
<activity>
icon
. android:label
- Libellé lisible pour l'alias lorsqu'il est présenté aux utilisateurs via l'alias.
Pour en savoir plus, consultez les éléments
<activity>
label
. android:name
- Nom unique de l'alias. Son nom ressemble à une image nom de classe qualifié. Mais, contrairement au nom de l'activité cible, le nom de l'alias est arbitraire. Il ne s'agit pas d'une classe réelle.
android:permission
- Nom d'une autorisation que les clients doivent avoir pour lancer l'activité cible
ou lui demander d'effectuer
quelque chose en utilisant l'alias. Si un appelant de
startActivity()
oustartActivityForResult()
ne dispose pas de l'autorisation spécifiée, l'activité cible n'est pas activée.Cet attribut supplante toute autorisation définie pour l'activité cible elle-même. Si s'il n'est pas défini, une autorisation n'est pas nécessaire pour activer la cible via l'alias.
Pour en savoir plus sur les autorisations, consultez la Autorisations dans la présentation du fichier manifeste d'application.
android:targetActivity
- Nom de l'activité pouvant être activée via l'alias.
Ce nom doit correspondre à l'attribut
name
d'un élément<activity>
qui précède l'alias dans le fichier manifeste.
- Première apparition :
- Niveau d'API 1
- Voir aussi :
<activity>
<alias-activité>
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/07/27 (UTC)."],[],[],null,["# <activity-alias\u003e\n\nsyntax:\n:\n\n ```xml\n \u003cactivity-alias android:enabled=[\"true\" | \"false\"]\n android:exported=[\"true\" | \"false\"]\n android:icon=\"drawable resource\"\n android:label=\"string resource\"\n android:name=\"string\"\n android:permission=\"string\"\n android:targetActivity=\"string\" \u003e\n ...\n \u003c/activity-alias\u003e\n ```\n\ncontained in:\n: [\u003capplication\u003e](/guide/topics/manifest/application-element)\n\ncan contain:\n: [\u003cintent-filter\u003e](/guide/topics/manifest/intent-filter-element)\n\n [\u003cmeta-data\u003e](/guide/topics/manifest/meta-data-element)\n\ndescription:\n: An alias for an activity, named by the `targetActivity`\n attribute. The target must be in the same application as the\n alias and declared before the alias in the manifest.\n\n\n The alias presents the target activity as an independent entity, and can have its own set of intent\n filters. They, rather than the\n intent filters on the target activity itself, determine which intents\n can activate the target through the alias and how the system\n treats the alias.\n\n For example, the intent filters on the alias might\n specify the [\"android.intent.action.MAIN\"](/reference/android/content/Intent#ACTION_MAIN)\n and [\"android.intent.category.LAUNCHER\"](/reference/android/content/Intent#CATEGORY_LAUNCHER)\" flags, causing it to\n be represented in the application launcher, even though none of the\n filters on the target activity itself set these flags.\n\n\n With the exception of `targetActivity`, `\u003cactivity-alias\u003e`\n attributes are a subset of [\u003cactivity\u003e](/guide/topics/manifest/activity-element) attributes.\n For attributes in the subset, none of the values set for the target carry over\n to the alias. However, for attributes not in the subset, the values set for\n the target activity also apply to the alias.\n\nattributes:\n:\n\n `android:enabled`\n : Whether the target activity can be instantiated by the system through\n this alias. `\"true\"` if it can be, and `\"false\"` if not.\n The default value is `\"true\"`.\n\n\n The [\u003capplication\u003e](/guide/topics/manifest/application-element) element has its own\n [enabled](/guide/topics/manifest/application-element#enabled) attribute that applies to all\n application components, including activity aliases. The\n `\u003capplication\u003e` and `\u003cactivity-alias\u003e`\n attributes must both be `\"true\"` for the system to be able to instantiate\n the target activity through the alias. If either is `\"false\"`, the alias\n doesn't work.\n\n `android:exported`\n : Whether the components of other applications can launch the target activity\n through this alias. `\"true\"` if they can, and `\"false\"` if not.\n If `\"false\"`, the target activity can be launched through the alias only by\n components of the same application as the alias or applications with the same user ID.\n\n\n The default value depends on whether the alias contains intent filters. The\n absence of any filters means that the activity can be invoked through the alias\n only by specifying the exact name of the alias. This implies that the alias\n is intended only for application-internal use, since others don't know its name.\n So, the default value is `\"false\"`.\n On the other hand, the presence of at least one filter implies that the alias\n is intended for external use, so the default value is `\"true\"`.\n\n `android:icon`\n : An icon for the target activity when presented to users through the alias.\n For more information, see the [\u003cactivity\u003e](/guide/topics/manifest/activity-element) element's\n [icon](/guide/topics/manifest/activity-element#icon) attribute.\n\n `android:label`\n : A user-readable label for the alias when presented to users through the alias.\n For more information, see the [\u003cactivity\u003e](/guide/topics/manifest/activity-element) element's\n [label](/guide/topics/manifest/activity-element#label) attribute.\n\n \u003cbr /\u003e\n\n `android:name`\n\n : A unique name for the alias. The name resembles a fully qualified class name. But, unlike the name of the target activity, the alias name is arbitrary. It doesn't refer to an actual class. \u003cbr /\u003e\n\n `android:permission`\n : The name of a permission that clients must have to launch the target activity\n or get it to do something using the alias. If a caller of\n [startActivity()](/reference/android/content/Context#startActivity(android.content.Intent)) or\n [startActivityForResult()](/reference/android/app/Activity#startActivityForResult(android.content.Intent, int))\n isn't granted the specified permission, the target activity isn't activated.\n\n This attribute supplants any permission set for the target activity itself. If\n it isn't set, a permission isn't needed to activate the target through the alias.\n\n\n For more information about permissions, see the\n [Permissions](/guide/topics/manifest/manifest-intro#perms)\n section in the app manifest overview.\n\n `android:targetActivity`\n : The name of the activity that can be activated through the alias.\n This name must match the `name` attribute of an\n [\u003cactivity\u003e](/guide/topics/manifest/activity-element) element that precedes\n the alias in the manifest.\n\n \u003cbr /\u003e\n\nintroduced in:\n: API level 1\n\nsee also:\n: [\u003cactivity\u003e](/guide/topics/manifest/activity-element)"]]