ความสามารถใน shortcuts.xml
ช่วยให้คุณประกาศประเภทของการดำเนินการที่ผู้ใช้สามารถทำเพื่อเปิดแอปและทำงานที่เฉพาะเจาะจงได้โดยตรง
ตัวอย่างเช่น App Actions ของ 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 ของ App Actions แต่ละรายการ จะมีช่องที่แสดงข้อมูลซึ่งผู้ใช้มักระบุในคำค้นหาที่ ทริกเกอร์ 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
หมายถึง
START_EXERCISE
BII หากผู้ใช้เรียกใช้ 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
ที่กำหนดเอนทิตีการออกกำลังกายที่ถูกต้องของ "วิ่ง" สำหรับพารามิเตอร์ exercise.name
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมโยงทางลัดกับการดำเนินการของแอปได้ที่ภาพรวมการดำเนินการของแอป