Launcher จะแสดงป้ายกำกับและไอคอนสำหรับงานที่เพิ่งกลับมาทำต่อ หากแพ็กเกจแอปของคุณมีแอปหลายแอปเป็นกิจกรรม Launcher แยกกัน Launcher จะไม่ทราบว่าควรแสดงป้ายกำกับและไอคอนใดสำหรับกิจกรรมที่ไม่ใช่ Launcher เช่น กิจกรรมที่เปิดจากไทล์หรือการแจ้งเตือน ซึ่งอาจทำให้แอปไม่ปรากฏในรายการล่าสุดใน Launcher และทำให้แอปแสดงอย่างไม่ถูกต้อง
ติดป้ายกำกับกิจกรรมทั้งหมด
ตรวจสอบว่ากิจกรรมของคุณ รวมถึงกิจกรรมที่ไม่ใช่ตัวเรียกใช้ มีป้ายกำกับที่ถูกต้อง ในไฟล์ Manifest ตามที่แสดงในขั้นตอนต่อไปนี้

- สําหรับแต่ละกิจกรรมในไฟล์
AndroidManifest.xml
ให้พิจารณาว่ากิจกรรมนั้นเป็นของกิจกรรมตัวเรียกใช้ใด - คัดลอกไอคอน ไอคอนกลม และป้ายกำกับจากกิจกรรม Launcher หลักไปยัง แต่ละกิจกรรมที่ไม่ใช่ Launcher ที่เชื่อมโยง
- สำหรับกิจกรรมที่แชร์ในกิจกรรมตัวเรียกใช้หลายรายการ ให้ตัดสินใจ ว่าจะแสดงไอคอนและป้ายกำกับใดที่แสดงถึงกิจกรรมทั้งหมด
กำหนดค่างานสำหรับรายการล่าสุด
หากต้องการใช้ RecentTasks
สำหรับส่วนล่าสุดใน Launcher ให้ตรวจสอบว่าได้กำหนดองค์ประกอบ taskAffinity
อย่างถูกต้องในไฟล์ AndroidManifest.xml
และคุณจัดการงานและสแต็กย้อนกลับอย่างสม่ำเสมอ
โปรดพิจารณาสิ่งต่อไปนี้เมื่อมอบหมายงาน
- เลือกชื่อ
taskAffinity
ที่ไม่ซ้ำกันสำหรับแต่ละงานในแอป คุณอาจพิจารณา กิจกรรมตัวเรียกใช้แต่ละรายการและกิจกรรมย่อยเป็นงานเดียว กำหนดค่าtaskAffinity
ให้กับกิจกรรมที่เกี่ยวข้องแต่ละรายการในไฟล์ Manifest - หลีกเลี่ยงการเรียก
startActivity()
ด้วยFLAG_ACTIVITY_NEW_TASK
หรือFLAG_ACTIVITY_CLEAR_TOP
- หลีกเลี่ยงการสร้างกิจกรรมที่เรียกใช้กิจกรรมอื่น ซึ่งเป็นกิจกรรมที่เรียกใช้กิจกรรมอื่นเท่านั้น สร้างหน้าจอเริ่มต้นโดยใช้ SplashScreen API
- ใช้แฟล็ก
android:excludeFromRecents="true"
และandroid:noHistory="true"
เมื่อไม่ต้องการให้กิจกรรมปรากฏในส่วนล่าสุด - พิจารณาโหมดการเปิดตัวที่ดีที่สุดสำหรับกิจกรรมของคุณและพัฒนาโดยคำนึงถึงโหมดดังกล่าว
เคล็ดลับการแก้ไขข้อบกพร่อง
สิ่งที่คุณควรทราบเมื่อแก้ไขข้อบกพร่อง
- หากมีรายการซ้ำในส่วนล่าสุดสำหรับแอปเดียว
ให้ตรวจสอบว่าคุณใช้แฟล็ก
NEW_TASK
อย่างไม่เหมาะสมหรือไม่ - หากไอคอนหรือป้ายกำกับไม่ถูกต้อง ให้ตรวจสอบว่ากิจกรรมที่ไม่ใช่ตัวเรียกใช้ที่เชื่อมโยงแต่ละรายการมีไอคอน ไอคอนกลม และป้ายกำกับเดียวกันกับกิจกรรมหลัก
- หากระบบไม่เปิดอะไรเลยหลังจากแตะรายการใน
Launcher ให้ตรวจสอบ Logcat (กรองใน
launcher
) เพื่อหาข้อผิดพลาด เนื่องจากกิจกรรม Trampoline อาจทำให้เกิดปัญหานี้