- 语法
<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>
- 包含于
<application>
- 可包含
<intent-filter>
<meta-data>
- 描述
- Activity 的别名,由
targetActivity
属性命名。目标 Activity 必须与此别名在同一个应用中,并且必须在清单文件中在此别名之前声明。此别名将目标 Activity 呈现为一个独立的实体,并且可以拥有自己的一组 Intent 过滤器。这些过滤器(而非目标 Activity 本身的 Intent 过滤器)决定了哪些 Intent 可以通过此别名激活目标 Activity 以及系统如何处理此别名。
例如,此别名上的 Intent 过滤器可能指定
"android.intent.action.MAIN"
和"android.intent.category.LAUNCHER"
标志,使其显示在应用启动器中,即使目标 Activity 本身没有任何过滤器设置这些标志。除了
targetActivity
之外,<activity-alias>
属性是<activity>
属性的子集。对于子集中的属性,为目标 Activity 设置的值不会传递给此别名。但是,对于不在子集中的属性,为目标 Activity 设置的值也适用于此别名。 - 属性
android:enabled
- 目标 Activity 是否可以通过此别名由系统实例化。如果是,则为
"true"
;否则为"false"
。默认值为"true"
。<application>
元素有自己的enabled
属性,适用于所有应用组件,包括 Activity 别名。<application>
和<activity-alias>
属性都必须为"true"
,系统才能通过此别名实例化目标 Activity。如果其中任何一个为"false"
,则此别名将不起作用。 android:exported
- 其他应用的组件是否可以通过此别名启动目标 Activity。如果是,则为
"true"
;否则为"false"
。如果为"false"
,则目标 Activity 只能通过此别名所在的相同应用或具有相同用户 ID 的应用中的组件启动。默认值取决于此别名是否包含 Intent 过滤器。如果没有指定任何过滤器,则表示 Activity 只能通过指定此别名的确切名称来调用。这意味着此别名仅用于应用内部使用,因为其他应用不知道其名称。因此,默认值为
"false"
。另一方面,如果存在至少一个过滤器,则表示此别名旨在供外部使用,因此默认值为"true"
。 android:icon
- 目标 Activity 通过此别名呈现给用户时所用的图标。如需了解详情,请参阅
<activity>
元素的icon
属性。 android:label
- 此别名通过此别名呈现给用户时所用的用户可读标签。如需了解详情,请参阅
<activity>
元素的label
属性。 android:name
- 此别名的唯一名称。该名称类似于完全限定类名。但是,与目标 Activity 的名称不同,此别名是任意的。它不指代实际类。
android:permission
- 客户端必须拥有的权限名称,才能通过此别名启动目标 Activity 或使其执行某些操作。如果
startActivity()
或startActivityForResult()
的调用方未被授予指定权限,则目标 Activity 不会被激活。此属性取代为目标 Activity 本身设置的任何权限。如果未设置此属性,则无需权限即可通过此别名激活目标 Activity。
如需了解权限的更多信息,请参阅应用清单概览中的“权限”部分。
android:targetActivity
- 可以通过此别名激活的 Activity 的名称。此名称必须与清单文件中在此别名之前声明的
<activity>
元素的name
属性匹配。
- 引入于
- API 级别 1
- 另请参阅
<activity>
<activity-alias>
本页上的内容和代码示例受内容许可中描述的许可限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的商标或注册商标。
上次更新时间:2025 年 2 月 10 日 UTC。
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[]]