Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る

<activity-alias>

構文:
<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>
説明:
targetActivity 属性によって指定したアクティビティのエイリアス。ターゲットは、エイリアスと同じアプリ内に存在する必要があり、マニフェスト内でエイリアスよりも前に宣言する必要があります。

エイリアスは、ターゲット アクティビティを独立したエンティティとして提示します。エイリアスは、独自のインテント フィルタ セットを持つことができます。どのインテントがエイリアス経由でターゲットをアクティブにできるのか、そして、どのようにシステムがエイリアスを処理するのかを決定するのは、ターゲット アクティビティのインテント フィルタではなく、エイリアスのインテント フィルタです。たとえば、エイリアスのインテント フィルタが「android.intent.action.MAIN」フラグと「android.intent.category.LAUNCHER」フラグを指定していた場合、ターゲット アクティビティのフィルタがこのフラグをセットしていなくても、アプリ ランチャー内に表示されます。

targetActivity を除き、<activity-alias> 属性は <activity> 属性のサブセットです。サブセット内に存在している属性の場合、ターゲットに対して設定されている値は、エイリアスには引き継がれません。他方、サブセット内に存在しない属性の場合は、ターゲット アクティビティに対して設定されている値がエイリアスにも適用されます。

属性:
android:enabled
システムがこのエイリアス経由でターゲット アクティビティをインスタンス化できるかどうかを指定します。可能な場合は「true」、そうでない場合は「false」に設定します。デフォルト値は「true」です。

<application> 要素には独自の enabled 属性があり、アクティビティ エイリアスを含め、すべてのアプリ コンポーネントに適用されます。そのため、システムがエイリアス経由でターゲット アクティビティをインスタンス化できるようにするには、<application> 属性と <activity-alias> 属性の両方を「true」にする必要があります。いずれか一方でも「false」の場合、エイリアスは機能しません。

android:exported
他のアプリのコンポーネントがこのエイリアス経由でターゲット アクティビティを起動できるかどうかを指定します。可能な場合は「true」、そうでない場合は「false」に設定します。「false」にした場合、エイリアス経由でターゲット アクティビティを起動できるのは、エイリアスと同じアプリのコンポーネントか、同じユーザー ID を持つアプリだけに限定されます。

デフォルト値は、エイリアスにインテント フィルタが含まれているかどうかによって異なります。フィルタが存在しない場合、エイリアス経由でアクティビティを呼び出すには、エイリアスの名前を正確に指定する必要があります。つまり、アプリの内部だけでエイリアスを使用するように想定されています(他のデベロッパーは名前を知ることができないため)。そのため、この場合、デフォルト値は「false」になります。一方、少なくとも 1 つのフィルタが存在している場合は、外部からでもエイリアスを使用できるように想定されています。そのため、デフォルト値は「true」になります。

android:icon
ターゲット アクティビティをエイリアス経由でユーザーに表示する際のアイコン。詳細については、<activity> 要素の icon 属性をご覧ください。
android:label
エイリアス経由でユーザーに提示する際に、ユーザー可読形式で表示されるエイリアスのラベル。詳細については、<activity> 要素の label 属性をご覧ください。

android:name
エイリアスの一意の名前。この名前は、完全修飾クラス名と同様です。ただし、ターゲット アクティビティの名前とは異なり、エイリアス名は任意です。実際のクラスを参照するわけではありません。

android:permission
クライアントがターゲット アクティビティを起動したり、エイリアス経由でターゲット アクティビティに何かを実行させたりする際に必要となるパーミッションの名前。startActivity()startActivityForResult() の呼び出し元が指定パーミッションを付与されていない場合、ターゲット アクティビティはアクティブになりません。

この属性は、ターゲット アクティビティに対して設定されているパーミッションをオーバーライドします。この属性が設定されていない場合、エイリアス経由でターゲットをアクティブにする際、パーミッションは必要ありません。

パーミッションの詳細については、概要の「パーミッション」セクションをご覧ください。

android:targetActivity
エイリアス経由でアクティブにできるアクティビティの名前。この名前は、マニフェスト内でエイリアスよりも前にある <activity> 要素の name 属性と一致する必要があります。

導入時の API レベル:
API レベル 1
関連項目:
<activity>