<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>
description:
ชื่อแทนของกิจกรรม ตั้งชื่อโดย targetActivity เป้าหมายต้องอยู่ในแอปพลิเคชันเดียวกันกับ และประกาศก่อนชื่อแทนในไฟล์ Manifest

ชื่อแทนนำเสนอกิจกรรมเป้าหมายเป็นเอนทิตีอิสระ และมีชุดความตั้งใจเป็นของตัวเองได้ ตัวกรอง มากกว่า Intent จะกรองในตัวกิจกรรมเป้าหมายเอง รวมทั้งระบุ Intent สามารถเปิดใช้งานเป้าหมายผ่านชื่อแทนและวิธีที่ระบบ ที่ถือเป็นนามแฝง

ตัวอย่างเช่น ตัวกรอง Intent ในชื่อแทนอาจ ระบุ "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" กิจกรรมเป้าหมายสามารถเปิดผ่านชื่อแทนได้โดย คอมโพเนนต์ของแอปพลิเคชันเดียวกับชื่อแทนหรือแอปพลิเคชันที่มีรหัสผู้ใช้เดียวกัน

ค่าเริ่มต้นจะขึ้นอยู่กับว่าชื่อแทนมีตัวกรอง Intent หรือไม่ ไม่มีตัวกรองใดๆ หมายความว่ากิจกรรมดังกล่าวสามารถเรียกใช้ผ่านชื่อแทนได้ โดยการระบุชื่อแทนเท่านั้น แสดงว่าชื่อแทน มีไว้เพื่อใช้ภายในแอปพลิเคชันเท่านั้น เนื่องจากมีผู้อื่นไม่ทราบชื่อ ดังนั้น ค่าเริ่มต้นคือ "false" ในขณะที่ การมีตัวกรองอย่างน้อยหนึ่งรายการบ่งบอกว่านามแฝง มีไว้สำหรับใช้ภายนอก ดังนั้นค่าเริ่มต้นจะเป็น "true"

android:icon
ไอคอนสำหรับกิจกรรมเป้าหมายเมื่อแสดงต่อผู้ใช้ผ่านชื่อแทน ดูข้อมูลเพิ่มเติมได้ที่องค์ประกอบ <activity> icon
android:label
ป้ายกำกับที่ผู้ใช้อ่านได้สำหรับชื่อแทนเมื่อแสดงต่อผู้ใช้ผ่านชื่อแทน ดูข้อมูลเพิ่มเติมได้ที่องค์ประกอบ <activity> label

android:name
ชื่อที่ไม่ซ้ำกันสำหรับชื่อแทน ชื่อนี้คล้ายกับ ชื่อคลาสที่ผ่านการรับรอง แต่ต่างจากชื่อของกิจกรรมเป้าหมาย จะใช้นามแฝงก็ได้ ซึ่งไม่ได้หมายถึงชั้นเรียนจริง

android:permission
ชื่อสิทธิ์ที่ลูกค้าต้องใช้เพื่อเปิดกิจกรรมเป้าหมาย หรือสั่งให้ทำอะไรบางอย่างโดยใช้ชื่อแทน หากผู้โทร startActivity() หรือ วันที่ startActivityForResult() ไม่มีการให้สิทธิ์ที่ระบุ กิจกรรมเป้าหมายจะไม่เปิดใช้งาน

แอตทริบิวต์นี้จะแทนที่สิทธิ์ที่ตั้งไว้สำหรับกิจกรรมเป้าหมาย ถ้า ไม่ได้ตั้งค่าไว้ จึงไม่จำเป็นต้องมีสิทธิ์เพื่อเปิดใช้งานเป้าหมายผ่านชื่อแทน

ดูข้อมูลเพิ่มเติมเกี่ยวกับสิทธิ์ได้ที่ สิทธิ์ ในภาพรวมไฟล์ Manifest ของแอป

android:targetActivity
ชื่อของกิจกรรมที่เปิดใช้งานผ่านชื่อแทนได้ ชื่อนี้ต้องตรงกับแอตทริบิวต์ name ของ <activity> องค์ประกอบก่อนหน้า ชื่อแทนในไฟล์ Manifest

เปิดตัวใน
API ระดับ 1
ดูเพิ่มเติม
<activity>