สร้างการดําเนินการของแอป

แอปแอ็กชันช่วยให้ผู้ใช้เปิดฟังก์ชันการทำงานในแอป Android ได้โดยถาม Google Assistant หรือใช้แป้นพิมพ์ลัดของ Android ที่ Assistant แนะนำ ขั้นตอนหลักในการขยายแอป Android ด้วย App Actions มีดังนี้

  1. ระบุฟังก์ชันการทำงานในแอปที่จะทริกเกอร์และIntent ในตัว (BII) ที่ตรงกัน
  2. ระบุรายละเอียดการดำเนินการตามคำสั่งซื้อสำหรับ BII
  3. ส่งทางลัดสำหรับการดำเนินการของแอปไปยัง Assistant
  4. ดูตัวอย่างการดำเนินการของแอปในอุปกรณ์ทดสอบ
  5. สร้างรุ่นการทดสอบของแอป
  6. ขอรับการตรวจสอบและใช้งาน App Actions

คุณกำหนดทางลัดแบบไดนามิกให้ Assistant เพื่อแนะนำทางลัดเหล่านั้นให้แก่ผู้ใช้ได้ สร้างการดําเนินการของแอปโดยใช้แอปตัวอย่างโดยทําตามCodelab การดําเนินการของแอป

ข้อกำหนด

ก่อนเริ่มพัฒนา App Actions โปรดตรวจสอบว่าคุณและแอปมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้

  • คุณต้องมีบัญชี Google ที่มีสิทธิ์เข้าถึง Google Play Console
  • แอปของคุณต้องเผยแพร่ใน Google Play Store เนื่องจาก App Actions พร้อมให้บริการสำหรับแอปที่เผยแพร่ใน Store เท่านั้น นอกจากนี้ ให้ตรวจสอบว่าแอปไม่ได้มีไว้เพื่อใช้ในโปรไฟล์งาน เนื่องจาก Managed Google Play ไม่รองรับ App Actions
  • คุณต้องมีอุปกรณ์จริงหรือเสมือนเพื่อทดสอบ App Actions
  • ติดตั้ง Android Studio เวอร์ชันล่าสุดที่เข้ากันได้ซึ่ง Google Assistant Plugin รองรับ
  • คุณต้องใช้บัญชี Google เดียวกันเพื่อลงชื่อเข้าใช้ Android Studio, แอป Google ในอุปกรณ์ทดสอบ และ Google Play Console
  • คุณต้องตั้งค่า Assistant ในอุปกรณ์ทดสอบและทดสอบโดยแตะปุ่มหน้าแรกค้างไว้

จับคู่ Intent ในตัวกับฟังก์ชันการทำงานของแอป

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

มี BII ทั่วไปที่แอป Android เกือบทุกแอปใช้ได้ เช่น การขยายการค้นหาในแอปไปยัง Assistant ด้วย BII actions.intent.GET_THING หรือการให้ผู้ใช้เปิดฟีเจอร์บางอย่างของแอปด้วยเสียงด้วยการติดตั้งใช้งาน BII actions.intent.OPEN_APP_FEATURE

นอกจากนี้ยังมี BII ที่เปิดใช้ Use Case ประเภทธุรกิจหรือเฉพาะหมวดหมู่ เช่น แอปออกกำลังกายอาจใช้ actions.intent.START_EXERCISE BII

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

แอปแอ็กชันจะทํางานโดยเริ่ม Intent ของ Android จากแอป Assistant เพื่อนําผู้ใช้ไปยังเนื้อหาที่เฉพาะเจาะจงในแอปโดยตรง คุณสามารถกําหนด Intent เพื่อเปิดใช้งานกิจกรรมอย่างชัดเจนโดยระบุช่อง targetClass และ targetPackage หากแอปของคุณใช้ URL Deep Link ของ Android อยู่แล้ว คุณจะมีตัวเลือกในการกําหนดค่าความตั้งใจที่จะใช้ Deep Link สําหรับการสั่งซื้อ ดูรายละเอียดเพิ่มเติมได้ที่ส่วนทดสอบ Deep Link ของกิจกรรม

ระบุรายละเอียดการดำเนินการตามคำสั่งสำหรับ Intent ในตัว

การสร้างการดําเนินการในแอปส่วนใหญ่เป็นการประกาศความสามารถในไฟล์ทรัพยากร shortcuts.xml ของแอป Android ที่คุณระบุ BII ที่เลือกและการดําเนินการที่เกี่ยวข้อง BII จะจำลองการค้นหาของผู้ใช้สำหรับงาน และ Intent การดำเนินการจะระบุข้อมูลเกี่ยวกับวิธีดำเนินการกับงานให้ Assistant

ในไฟล์ shortcuts.xml คุณจะแสดง BIIs เป็นองค์ประกอบ <capability> และแสดงการจำหน่ายแต่ละรายการเป็นองค์ประกอบ <intent> ดังนี้

<shortcuts>
    <capability android:name="actions.intent.START_EXERCISE">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetPackage="com.example.app"
            android:targetClass="com.example.app.browse">
            <parameter
                android:name="exercise.name"
                android:key="exercise_name">
            </parameter>
        </intent>
    </capability>

สําหรับ BII ส่วนใหญ่ คุณจะดึงข้อมูลพารามิเตอร์ Intent จากการค้นหาของผู้ใช้โดยอิงตามเอนทิตี schema.org จากนั้นแอปจะใช้พารามิเตอร์ BII ดังกล่าวเพื่อนำผู้ใช้ไปยังความสามารถที่เลือก ตัวอย่างเช่น โค้ดด้านบนจะจับคู่พารามิเตอร์ exercise.name BII กับพารามิเตอร์ exercise_name Android intent

หากต้องการดำเนินการให้เสร็จสมบูรณ์โดยใช้ Deep Link คุณจะใช้ช่อง urlTemplate เพื่อกำหนด URL ของ Deep Link ที่แอปผู้ช่วยสร้างขึ้น ดังนี้

<shortcuts>
    <capability android:name="actions.intent.START_EXERCISE">
        <intent android:action="android.intent.action.VIEW">
            <url-template android:value="myexerciseapp://start{?exercise_name}" />
            <parameter android:name="exercise.name"
                android:key="exercise_name"
                android:mimeType="text/*">
            </parameter>
        </intent>
    </capability>
</shortcuts>

ดูรายละเอียดสําคัญเกี่ยวกับการเพิ่มการกระทําของแอปลงในไฟล์ shortcuts.xml ได้ที่สร้าง shortcuts.xml หน้าดังกล่าวยังอธิบายวิธีระบุค่าพารามิเตอร์ที่แอปคาดหวังด้วย

ใช้ Intent ในตัว GET_THING

หากแอปมีฟังก์ชันการค้นหา คุณต้องใช้ actions.intent.GET_THINGBII สำหรับฟังก์ชันดังกล่าว จากนั้น Assistant จะส่งต่อผู้ใช้ไปยังฟังก์ชันการค้นหาของแอปเพื่อดูผลการค้นหาในแอปเมื่อผู้ใช้ทำการค้นหา เช่น "Ok Google ค้นหาตัวอย่างสิ่งของในแอปตัวอย่าง"

ในไฟล์ shortcuts.xml ให้ใช้ <capability> สำหรับ BII actions.intent.GET_THING เช่นเดียวกับการใช้ BII อื่นๆ คุณใช้การตอบสนองหลายรายการสําหรับGET_THINGได้ ตราบใดที่คุณระบุการตอบสนองอย่างน้อย 1 รายการที่ส่งคําค้นหาของผู้ใช้ไปยังฟังก์ชันการค้นหาของแอป

ต่อไปนี้คือตัวอย่างการเพิ่ม actions.intent.GET_THING BII ใน shortcuts.xml

  <capability android:name="actions.intent.GET_THING">
    <intent
      android:targetPackage="com.example.myapp"
      android:targetClass="com.example.myapp.MySearchActivity">
      <parameter android:name="thing.name" android:key="query" />
    </intent>
  </capability>

ในการค้นหา Activity ให้ดึงข้อมูลคำค้นหาจากข้อมูลเพิ่มเติมของ intent แล้วส่งไปยังฟังก์ชันการค้นหาของแอป ในโค้ดก่อนหน้า ข้อความค้นหาที่ส่งผ่านเป็นคีย์ query จะแมปกับพารามิเตอร์ "thing.name"BII จากนั้นทำการค้นหาด้วยข้อความค้นหาและแสดงผลลัพธ์ในอินเทอร์เฟซผู้ใช้

ไม่บังคับ: ส่งทางลัดสำหรับการดำเนินการของแอปไปยัง Assistant

เมื่อคุณกำหนดความสามารถของการดำเนินการแล้ว ผู้ใช้จะเปิดการดำเนินการได้โดยพูดว่า "Ok Google สั่งพิซซ่าในแอปตัวอย่าง" Assistant สามารถแนะนำแป้นพิมพ์ลัดของ Android สำหรับการดำเนินการของคุณให้แก่ผู้ใช้ในเวลาที่เหมาะสม ซึ่งจะช่วยให้ผู้ใช้ค้นพบและเล่นซ้ำการดำเนินการของคุณได้ Assistant สามารถแนะนำทั้งแป้นพิมพ์ลัดแบบไดนามิกและแบบคงที่

หากต้องการส่งแป้นพิมพ์ลัดแบบไดนามิกไปยัง Assistant ให้ใช้ไลบรารีการผสานรวม Google Shortcuts ไลบรารี Jetpack นี้ช่วยให้ Assistant นำทางลัดของคุณไปใช้และแนะนำทางลัดเหล่านั้นแก่ผู้ใช้ในเวลาที่เหมาะสม

โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อส่งทางลัดแบบไดนามิกไปยัง Assistant

แสดงตัวอย่างการดำเนินการของแอป

ในระหว่างการพัฒนาและการทดสอบ ให้ใช้ปลั๊กอิน Google Assistant สําหรับ Android Studio เพื่อทดสอบว่า App Actions ทํางานกับแอปของคุณหรือไม่ ปลั๊กอินจะสร้างตัวอย่าง App Actions ใน Assistant สําหรับบัญชี Google ของคุณ เมื่อใช้เครื่องมือทดสอบ คุณจะทดสอบการจำหน่ายบนอุปกรณ์ทดสอบจริงหรือโปรแกรมจำลองได้โดยระบุพารามิเตอร์อินพุตของ BII ที่คุณคาดหวังว่าจะได้รับจากผู้ใช้

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

ทดสอบแอปในโหมดฉบับร่างโดยใช้เครื่องมือสำหรับนักพัฒนาแอปของ Google Play Console ก่อนส่งแอปเข้ารับการตรวจสอบ ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Google Play Console เพื่อเผยแพร่แอปฉบับร่างได้ที่เตรียมและเปิดตัวรุ่น

สร้างรุ่นทดสอบ

เมื่อพร้อมที่จะทดสอบ App Actions กับผู้ทดสอบเพิ่มเติมแล้ว ให้สร้างรุ่นทดสอบของแอปแบบภายในหรือแบบปิด โดยค่าเริ่มต้น ผู้ทดสอบรุ่นภายในและแบบปิดจะเข้าถึง App Actions ที่ตรวจสอบและอนุมัติแล้วได้

หากต้องการให้สิทธิ์เข้าถึงการทดสอบการดำเนินการของแอปทั้งหมด รวมถึงการดำเนินการที่ไม่ได้รับอนุมัติ ให้บอกผู้ทดสอบให้เข้าร่วม Google Group ของโปรแกรมการพัฒนาการดำเนินการของแอป สมาชิกของกลุ่มนี้จะมีสิทธิ์เข้าถึง App Actions ทั้งหมดในรุ่นการทดสอบแบบปิดและแบบภายในโดยไม่ต้องสร้างตัวอย่างโดยใช้เครื่องมือทดสอบ App Actions คุณอาจต้องรอถึง 3 ชั่วโมงหลังจากเข้าร่วมกลุ่มจึงจะมีสิทธิ์เข้าถึง

ขอรับการตรวจสอบและใช้งาน App Actions

ผู้ใช้แอปที่เผยแพร่หรือรุ่นการทดสอบแบบเปิดจะใช้ App Actions ไม่ได้จนกว่าแอปหรือรุ่นดังกล่าวจะได้รับการตรวจสอบและอนุมัติ การตรวจสอบ App Actions จะไม่ส่งผลต่อสถานะการตรวจสอบและการใช้งานแอป Android ใน Google Play แม้ว่าshortcuts.xmlที่ส่งมาจะได้รับอนุมัติและเผยแพร่ใน Play Store แล้ว แต่ Google อาจยังตรวจสอบshortcuts.xmlอยู่ App Actions จะไม่ทำงานสำหรับผู้ใช้ปลายทางจนกว่าการตรวจสอบดังกล่าวจะได้รับอนุมัติด้วย

เมื่อคุณทําให้แอปใช้งานได้ การดําเนินการในแอปจะยังคงเปิดใช้งานอยู่ อย่างไรก็ตาม เวอร์ชันที่นําไปใช้งานใหม่จะต้องได้รับการตรวจสอบโดย Google หากเวอร์ชันใหม่ทำงานไม่ถูกต้องหรือมีการละเมิดนโยบาย Google มีสิทธิ์ปิดใช้งาน App Actions สําหรับแอปของคุณ

หากต้องการส่ง App Actions เพื่อรับการตรวจสอบ ให้ทำดังนี้

  1. ยอมรับข้อกำหนดในการให้บริการของ App Actions ใน Google Play Console (การตั้งค่าขั้นสูง > App Actions):

    ข้อกำหนดในการให้บริการของการดำเนินการของแอปใน Google Play Console

  2. อัปโหลดแอปที่มี shortcuts.xml ไปยัง Google Play Console เพื่อเผยแพร่ตามปกติ

  3. หลังจากอัปโหลดแอปไปยัง Play Console แล้ว Google จะติดต่อคุณทางอีเมลในบัญชี Play Console พร้อมข้อมูลเพิ่มเติมเกี่ยวกับสถานะการตรวจสอบการดำเนินการของแอป นอกจากนี้ คุณยังติดต่อทีมสนับสนุนนักพัฒนาแอป Assistant หากมีข้อสงสัยเกี่ยวกับสถานะการตรวจสอบการดำเนินการของแอป ในแบบฟอร์มติดต่อ ให้ระบุรหัสแพ็กเกจแอปและเลือกการตรวจสอบการดำเนินการของแอปในช่องตัวเลือกเราจะช่วยคุณได้อย่างไร

หากต้องการใช้ Deep Link เพื่อเปิด Activity โดยใช้ App Action คุณต้องตั้งค่า Activity ด้วย URL ของ Deep Link และมีตัวกรอง Intent ที่เกี่ยวข้องในไฟล์ Manifest ของแอป Android

หากต้องการทดสอบว่าเข้าถึงกิจกรรมได้และสามารถทริกเกอร์โดยใช้การดําเนินการของแอปโดยใช้ Deep Link ให้เรียกใช้คําสั่ง adb ต่อไปนี้

$ adb shell am start -a android.intent.action.VIEW -d "AppLinksURL"

เช่น

$ adb shell am start -a android.intent.action.VIEW -d "https://www.example.com/deeplink"

หากกิจกรรมไม่เปิดขึ้นอย่างถูกต้องด้วยคำสั่ง adb ให้ตรวจสอบสิ่งต่อไปนี้

  • ในไฟล์ Manifest ของแอป กิจกรรมมี android:exported=true จึงเปิดใช้งานโดยใช้ Intent จาก Google Assistant ได้
  • หากใช้ URL ของ App Link ให้ทําตามขั้นตอนทั้งหมดในการจัดการ App Link ของ Android

นโยบายการดำเนินการของแอป

แอปเพล็ตต้องเป็นไปตามนโยบายที่เฉพาะเจาะจงเพื่อช่วยดูแลให้ผู้ใช้ที่เรียกให้แอปเพล็ตแสดงได้รับประสบการณ์การใช้งานตามที่คาดไว้ โปรดอ่านนโยบายเหล่านี้ก่อนส่งแอปเพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ดีที่สุดและหลีกเลี่ยงความล่าช้าหรือถูกปฏิเสธในการตรวจสอบของ Play Store

  • นําผู้ใช้ไปยังเนื้อหาที่ผู้ใช้ต้องการ

    Intent (BIIs) และ/หรือพารามิเตอร์ในตัวของแอปการกระทําต้องนําผู้ใช้ไปยังการกระทําที่เกี่ยวข้องและผู้ใช้ต้องการเท่านั้น ซึ่งอาจรวมถึงเนื้อหาในแอป เนื้อหาเว็บไซต์ หรือข้อมูลที่แสดงในข้อมูลโค้ดหรือวิดเจ็ต ตราบใดที่ผู้ใช้ตั้งใจให้แสดงประสบการณ์ดังกล่าว

    เช่น การติดตั้งใช้งาน BII START_EXERCISE ช่วยให้ผู้ใช้เริ่มออกกำลังกายประเภทหนึ่งๆ ได้ เช่น การวิ่งหรือการว่ายน้ำ ข้อยกเว้นเดียวของนโยบายนี้คือเมื่อ BII OPEN_APP_FEATURE นำผู้ใช้ไปยังหน้าจอหลักของแอป

  • ใช้ BII ของการกระทำในแอปที่เกี่ยวข้อง

    BII ที่ติดตั้งใช้งานต้องเกี่ยวข้องกับเนื้อหาและฟังก์ชันการทำงานของแอปโดยตรง

    เช่น หากแอปอยู่ในหมวดหมู่การสื่อสารของ Play Store อย่าใช้ BII START_EXERCISE ซึ่งแนะนำสำหรับแอปในหมวดหมู่สุขภาพและการออกกำลังกาย

  • ใช้ความตั้งใจที่กําหนดเองที่เกี่ยวข้อง

    คําค้นหาที่กําหนดไว้สําหรับ Intent ที่กําหนดเองเกี่ยวข้องกับเนื้อหาและฟังก์ชันการทํางานของแอป ตัวอย่างการละเมิดนโยบายนี้ที่อาจเกิดขึ้นคือการสร้าง Intent custom.action.intent.GET_RECIPE ที่มีรูปแบบการค้นหาที่เกี่ยวข้อง "แสดงสูตรอาหาร Burrito ให้ฉัน" สําหรับแอปในหมวดหมู่ "การขนส่ง" ของ Play Store