- ไวยากรณ์:
<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>
ตัวอย่างเนื้อหาและโค้ดในหน้าเว็บนี้ขึ้นอยู่กับใบอนุญาตที่อธิบายไว้ในใบอนุญาตการใช้เนื้อหา Java และ OpenJDK เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2024-08-22 UTC
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2024-08-22 UTC"],[],[]]