<ตัวกรองความตั้งใจ>

ไวยากรณ์:
<intent-filter android:icon="drawable resource"
               android:label="string resource"
               android:priority="integer" >
    ...
</intent-filter>
อยู่ใน
<activity>
<activity-alias>
<service>
<receiver>
<provider>
ต้องประกอบด้วยข้อมูลต่อไปนี้
<action>
อาจมีข้อมูลต่อไปนี้
<category>
<data>
<uri-relative-filter-group>
description:
ระบุประเภทของ Intent ที่ตัวรับกิจกรรม บริการ หรือการออกอากาศจะตอบสนองได้ ตัวกรอง Intent จะประกาศความสามารถของคอมโพเนนต์หลัก ซึ่งได้แก่ สิ่งที่กิจกรรมหรือบริการทําได้ และประเภทของการส่งสัญญาณที่ตัวรับจัดการได้

ซึ่งจะเปิดคอมโพเนนต์ให้รับ Intent ประเภทที่โฆษณาไปพร้อมกับกรอง Intent ที่ไม่มีความหมายสําหรับคอมโพเนนต์ออก เนื้อหาส่วนใหญ่ของตัวกรองจะอธิบายโดยองค์ประกอบย่อย ดังนี้

ดูการพูดคุยเรื่องตัวกรองโดยละเอียดได้ที่หัวข้อIntent และตัวกรอง Intent และส่วนตัวกรอง Intent ในภาพรวมไฟล์ Manifest ของแอป

แอตทริบิวต์
android:icon
ไอคอนที่แสดงถึงกิจกรรม บริการ หรือตัวรับสัญญาณหลักเมื่อคอมโพเนนต์นั้นแสดงต่อผู้ใช้ว่ามีความสามารถตามที่ตัวกรองอธิบายไว้

แอตทริบิวต์นี้ตั้งค่าเป็นการอ้างอิงไปยังทรัพยากรที่วาดได้ซึ่งมีคำจำกัดความของรูปภาพ ค่าเริ่มต้นคือไอคอนที่ตั้งค่าโดยแอตทริบิวต์ icon ของคอมโพเนนต์หลัก หากรายการหลักไม่ได้ระบุไอคอน ค่าเริ่มต้นจะเป็นไอคอนที่องค์ประกอบ <application> กำหนด

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

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

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

ค่าเริ่มต้นคือป้ายกำกับที่กำหนดโดยคอมโพเนนต์หลัก หากรายการหลักไม่ได้ระบุป้ายกํากับ ค่าเริ่มต้นจะเป็นป้ายกํากับที่ตั้งค่าโดยแอตทริบิวต์ label ขององค์ประกอบ <application>

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

android:priority
ลําดับความสําคัญที่กําหนดให้กับคอมโพเนนต์หลักเพื่อจัดการ Intent ของประเภทที่ตัวกรองระบุ แอตทริบิวต์นี้มีความหมายสําหรับทั้งกิจกรรมและตัวรับการออกอากาศ
  • ซึ่งจะให้ข้อมูลเกี่ยวกับความสามารถของกิจกรรมในการตอบสนองต่อความตั้งใจที่ตรงกับตัวกรอง เมื่อเทียบกับกิจกรรมอื่นๆ ที่ตอบสนองต่อความตั้งใจนั้นได้เช่นกัน เมื่อ Intent จัดการได้หลายกิจกรรมที่มีลําดับความสําคัญต่างกัน Android จะพิจารณาเฉพาะกิจกรรมที่มีค่าลําดับความสําคัญสูงกว่าเป็นเป้าหมายที่เป็นไปได้สําหรับ Intent
  • ซึ่งจะควบคุมลําดับที่ตัวรับการออกอากาศจะทํางานเพื่อรับข้อความการออกอากาศ โดยระบบจะเรียกใช้ตัวรับที่มีค่าลําดับความสําคัญสูงกว่าก่อนตัวที่มีค่าต่ำกว่า ลําดับมีผลกับข้อความแบบซิงค์เท่านั้น ระบบจะไม่สนใจสำหรับข้อความแบบไม่พร้อมกัน

ใช้แอตทริบิวต์นี้เฉพาะในกรณีที่คุณต้องกำหนดลำดับที่เฉพาะเจาะจงในการรับการออกอากาศ หรือต้องการบังคับให้ Android ให้ความสำคัญกับกิจกรรมหนึ่งมากกว่ากิจกรรมอื่นๆ

ค่าต้องเป็นจํานวนเต็ม เช่น 100 ตัวเลขที่สูงกว่าจะมีลำดับความสำคัญสูงกว่า ค่าเริ่มต้นคือ 0

ในบางกรณี ระบบจะไม่สนใจลําดับความสําคัญที่ขอและจำกัดค่าไว้ที่ 0 ซึ่งกรณีนี้จะเกิดขึ้นเมื่อ

  • แอปพลิเคชันที่ไม่มีสิทธิ์จะขอลำดับความสำคัญใดก็ได้ที่มากกว่า 0
  • แอปพลิเคชันที่มีสิทธิ์จะขอลําดับความสําคัญ >0 สําหรับ ACTION_VIEW, ACTION_SEND, ACTION_SENDTO หรือ ACTION_SEND_MULTIPLE

ดูข้อมูลเพิ่มเติมได้ที่ setPriority()

android:order

ลําดับที่ระบบประมวลผลตัวกรองเมื่อมีตัวกรองหลายรายการตรงกัน

order แตกต่างจาก priority ตรงที่ priority มีผลกับแอปต่างๆ ขณะที่ order ช่วยขจัดความกำกวมของตัวกรองที่ตรงกันหลายรายการในแอปเดียว

เมื่อตัวกรองหลายรายการจับคู่กันได้ ให้ใช้ Intent แบบมีทิศทางแทน

ค่าต้องเป็นจํานวนเต็ม เช่น 100 ระบบจะจับคู่ตัวเลขที่สูงกว่าก่อน ค่าเริ่มต้นคือ 0

แอตทริบิวต์นี้เปิดตัวใน API ระดับ 28

android:autoVerify
Android จำเป็นต้องยืนยันว่าไฟล์ JSON ของลิงก์เนื้อหาดิจิทัล (Digital Asset Links) จากโฮสต์ที่ระบุตรงกับแอปพลิเคชันนี้หรือไม่

โปรดดูข้อมูลเพิ่มเติมที่หัวข้อยืนยัน Android App Link

ค่าเริ่มต้นคือ false

แอตทริบิวต์นี้เปิดตัวใน API ระดับ 23

เปิดตัวใน
API ระดับ 1
ดูข้อมูลเพิ่มเติมได้ที่
<action>
<category>
<data>
<uri-relative-filter-group>