ความสามารถใน shortcuts.xml
ช่วยให้คุณประกาศประเภทการดำเนินการที่ผู้ใช้ทำได้เพื่อเปิดแอปและทำงานบางอย่างได้โดยตรง
ตัวอย่างเช่น การดำเนินการของแอป Google Assistant ใช้ความสามารถต่างๆ เพื่อให้นักพัฒนาซอฟต์แวร์
ขยายฟีเจอร์ในแอปให้ครอบคลุม Intent ในตัว (BII) เพื่อให้ผู้ใช้เปิดใช้งาน
และควบคุมฟีเจอร์เหล่านั้นด้วยคำสั่งเสียง ความสามารถประกอบด้วยชื่อการดําเนินการและ intent
ที่กําหนดเป้าหมายปลายทางในแอปซึ่งแก้ไขความตั้งใจของผู้ใช้
กำหนดความสามารถใน shortcuts.xml
คุณกำหนดองค์ประกอบ capability
ในไฟล์ทรัพยากร shortcuts.xml
ในโปรเจ็กต์การพัฒนาแอป Android หากต้องการกำหนดเอลิเมนต์ capability
ให้ทำ
ดังต่อไปนี้:
- สร้างทรัพยากร
shortcuts.xml
โดยทำตามวิธีการในสร้าง แป้นพิมพ์ลัดแบบคงที่ ระบุข้อมูลที่จำเป็นต่อไปนี้ในความสามารถของคุณ
ชื่อความสามารถ: การดำเนินการที่คุณต้องการให้แอปรองรับ โปรดดู เอกสารคอมโพเนนต์สำหรับฟีเจอร์ที่ต้องใช้ความสามารถ คำจำกัดความ คำสั่งที่พร้อมใช้งานด้วยเสียงของ App Actions จะใช้ BII
Action ID
สำหรับชื่อความสามารถ ซึ่งดูได้ในข้อมูลอ้างอิง BII ตัวอย่างเช่นGET_THING
BII แสดงAction ID
เป็นactions.intent.GET_THING
ปลายทางของแอป: ปลายทางในแอปที่การดำเนินการเปิดขึ้น ดำเนินการตามคำขอของผู้ใช้ กำหนดปลายทางของแอปโดยใช้องค์ประกอบ
intent
ฝังอยู่ในcapability
การแมปพารามิเตอร์:
intent
แต่ละรายการอาจมีพารามิเตอร์ที่จะส่งเป็นข้อมูลextra
ของ Intent เช่น การดำเนินการของแอปแต่ละรายการ BII รวมฟิลด์ที่แสดงข้อมูลที่ผู้ใช้มักให้ไว้ในข้อความค้นหาที่ ทริกเกอร์ BII
ตัวอย่างต่อไปนี้แสดงคำจำกัดความของความสามารถใน shortcuts.xml
สำหรับ actions.intent.START_EXERCISE
ซึ่งเป็น BII ที่ช่วยให้ผู้ใช้ใช้คำสั่งเสียงกับ Assistant เพื่อเริ่มออกกำลังกายในแอปฟิตเนสได้
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
<capability android:name="actions.intent.START_EXERCISE">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="com.example.sampleApp"
android:targetClass="com.example.sampleApp.ExerciseActivity">
<parameter
android:name="exercise.name"
android:key="exerciseType"/>
</intent>
</capability>
</shortcuts>
ในตัวอย่างก่อนหน้านี้ แอตทริบิวต์ <capability>
android:name
หมายถึง BII START_EXERCISE
หากผู้ใช้เรียกใช้ BII นี้ด้วยการถาม Assistant ว่า"Ok
Google เริ่มเรียกใช้ใน ExampleApp, Assistant ดำเนินการตามคำขอของผู้ใช้โดยใช้
ข้อมูลที่ให้ไว้ในองค์ประกอบ intent
ที่ฝังอยู่ intent
ในตัวอย่างนี้
กําหนดรายละเอียดต่อไปนี้
android:targetPackage
จะกำหนดแพ็กเกจแอปพลิเคชันเป้าหมายสำหรับ Intent- ช่อง
android:targetClass
จะระบุกิจกรรมปลายทาง ดังนี้com.example.sampleApp.ExerciseActivity
- Intent
parameter
ประกาศการรองรับพารามิเตอร์ BIIexercise.name
และวิธีส่งค่าพารามิเตอร์ (รวบรวม) จากผู้ใช้ - เป็นข้อมูลเพิ่มเติมในintent
เชื่อมโยงทางลัดกับความสามารถ
เมื่อกําหนดความสามารถแล้ว คุณจะขยายฟังก์ชันการทํางานของความสามารถนั้นได้โดยเชื่อมโยงทางลัดแบบคงที่หรือแบบไดนามิกกับความสามารถ วิธีที่ลิงก์แป้นพิมพ์ลัดกับ capability
จะขึ้นอยู่กับฟีเจอร์ที่ใช้และคำจริงที่รวมอยู่ในคำขอของผู้ใช้ ตัวอย่างเช่น เมื่อผู้ใช้เริ่มวิ่งในแอปติดตามการออกกำลังกายโดยถาม Assistant ว่า "Ok Google เริ่มวิ่งใน ExampleApp" Assistant ใช้แป้นพิมพ์ลัดเพื่อเปิดอินสแตนซ์ของ capability
ที่กําหนดเอนทิตีการออกกําลังกาย "run" ที่ถูกต้องสําหรับพารามิเตอร์ exercise.name
ได้
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมโยงทางลัดกับการดำเนินการของแอปได้ที่ภาพรวมการดำเนินการของแอป