Google Home Sample App for Matter ใช้ Google Home Mobile SDK เพื่อสร้างแอป Android ที่คล้ายกับ Google Home app (GHA) แอปตัวอย่างนี้มีฟีเจอร์ต่อไปนี้
- จัดเตรียมอุปกรณ์ Matter จริงและอุปกรณ์เสมือนให้กับ ผ้า Android ในพื้นที่
- จัดเตรียมอุปกรณ์จริงและอุปกรณ์เสมือนให้กับระบบการพัฒนา
- ควบคุมอุปกรณ์ในอุปกรณ์การพัฒนา เช่น การเปิดไฟ
- ฟีเจอร์ของผู้ดูแลระบบหลายคนช่วยให้คุณแชร์อุปกรณ์ในอุปกรณ์การพัฒนา กับแอปอื่นๆ ได้ และในทางกลับกัน ก็สามารถนำไปใส่ในอุปกรณ์การพัฒนา ที่แชร์จากแอปอื่นๆ ได้
- ยูทิลิตีของนักพัฒนาซอฟต์แวร์
คู่มือนี้อธิบายวิธีติดตั้ง Sample App for Matter APK และนำไปใช้ ค่าคอมมิชชัน ควบคุม และแชร์อุปกรณ์ Matter
หากต้องการดาวน์โหลดซอร์สโค้ด เรียนรู้วิธีผสานรวม Mobile SDK และปรับแต่งหน้าจอใน Android Studio ลองใช้ Sample App for Matter Codelab
ไปที่ Sample App for Matter Codelab
ข้อกำหนดเบื้องต้น
- มีอุปกรณ์ Android O (8.1, API ระดับ 27) ขึ้นไปสำหรับการทดสอบ หากต้องการตรวจสอบว่าอุปกรณ์ของคุณรองรับ Matter ล่าสุดหรือไม่ โปรดอ่านคู่มือยืนยันโมดูลและบริการของ Matter
- สร้างอุปกรณ์ Matter ที่มีความสามารถในการเปิด/ปิด แอปตัวอย่างนี้ใช้งานได้กับอุปกรณ์เสมือนและ ESP32
- อุปกรณ์เสมือน Matter (MVD) เราขอแนะนำให้คุณใช้ MVD ในการเริ่มต้นเพื่อลดปัญหาเกี่ยวกับสภาพแวดล้อม หากพบปัญหา การตรวจสอบจะง่ายขึ้นมากหากมีการใช้แอปตัวอย่างกับ MVD
- สร้างอุปกรณ์เสมือนของ Matter
ด้วยแอป
rootnode_dimmablelight_bCwGYSDpoe
เมื่อคุณ สร้างการผสานรวม Matter ใน Google Home Developer Console ให้ใช้0xFFF1
เป็นรหัสผู้ให้บริการและใช้0x8000
เป็นรหัสผลิตภัณฑ์ - สร้างอุปกรณ์ Espressif
ด้วย
all-clusters-app
เมื่อคุณสร้างการผสานรวม Matter ใน Developer Console ให้ใช้0xFFF1
เป็นรหัสผู้ให้บริการและใช้0x8001
เป็นรหัสผลิตภัณฑ์
คุณไม่จำเป็นต้องใช้ฮับ เช่น Google Nest Hub (2nd gen) เพื่อสั่งงานและควบคุมอุปกรณ์ด้วย Sample App for Matter
ติดตั้ง
ไปที่ส่วนรุ่นในที่เก็บ GitHub ของ Sample App for Matter สำหรับรุ่นล่าสุด ให้ค้นหาในส่วน "เนื้อหา" โดย APK ชื่อ
GHSAFM-version-default-debug.apk
อย่าเลือกtargetcommissioner
ติดตั้ง Android Debug Bridge (adb):
เชื่อมต่ออุปกรณ์ Android ด้วย USB และเปิดใช้การโอนไฟล์ จากนั้นติดตั้ง APK โดยทำดังนี้
$ adb unroot && adb install GHSAFM-version-default-debug.apk
อุปกรณ์ค่าคอมมิชชัน
เมื่อเปิดแอปตัวอย่างเป็นครั้งแรก คุณจะเห็นกล่องโต้ตอบพร้อมลิงก์ไปยัง Sample App for Matter Codelab หากเลือกไม่ต้องแสดงข้อความนี้อีก คุณสามารถนำกล่องโต้ตอบกลับมาได้ทุกเมื่อโดยอัปเดตค่ากำหนดในส่วนผู้ดูแลระบบของแอป
ในขั้นตอนถัดไป คุณจะต้องเพิ่มอุปกรณ์ Matter ลงในผ้า Android ในเครื่อง พร้อมกับผ้าการพัฒนาที่พร้อมใช้งานภายในของแอปตัวอย่างเท่านั้น
ผ้า Matter คืออะไร
ผ้า Matter เป็นโดเมนที่ใช้ร่วมกันระหว่างอุปกรณ์ต่างๆ ในเครือข่ายในบ้านซึ่งช่วยให้อุปกรณ์สื่อสารกันได้
อุปกรณ์อาจมีผ้าอย่างน้อย 1 ชนิดที่สอดคล้องกับแพลตฟอร์ม แอป หรือกลุ่มอุปกรณ์ที่โต้ตอบกัน Fabric จะมีรหัสที่ไม่ซ้ำกัน และอุปกรณ์ต่างๆ จะใช้ข้อมูลเข้าสู่ระบบและหน่วยงานผู้ให้การรับรองชุดเดียวกัน (CA) ระบบจะกำหนดข้อมูลเข้าสู่ระบบเหล่านี้ในระหว่าง การจัดเตรียมอุปกรณ์ Matter
หากต้องการจัดเตรียมอุปกรณ์ Matter ให้ทำตามขั้นตอนต่อไปนี้
แตะปุ่ม "เพิ่มอุปกรณ์"
เพื่อเริ่มขั้นตอนการเริ่มใช้งานต่อไป ตัวควบคุมจะโอนไปยัง Google Play services ซึ่งจะเปิดขึ้นจากการเรียกใช้ไปยัง Mobile SDK หากต้องการส่งหลักฐานการครอบครอง ให้สแกนคิวอาร์โค้ดหรือแตะใช้รหัสการจับคู่
เมื่อการมอบหมายเสร็จสมบูรณ์ ให้ป้อนชื่ออุปกรณ์ แล้วแตะเสร็จสิ้น
ตอนนี้อุปกรณ์ของคุณเชื่อมต่อกับทั้งผ้า Android ท้องถิ่นและผ้าสำหรับการพัฒนาซอฟต์แวร์แล้ว
งานที่มอบหมายและหน้าจอที่เกี่ยวข้องทั้งหมดจะจัดการโดย Play services เมื่อจัดเตรียมอุปกรณ์ วิธีนี้ช่วยให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่สอดคล้องกันและไม่ต้องจัดการสิทธิ์ที่มีความละเอียดอ่อน เช่น ข้อมูลเข้าสู่ระบบ Wi-Fi และเทรด
ควบคุมอุปกรณ์
โครงสร้างการพัฒนาจะสร้างข้อมูลเข้าสู่ระบบเพื่อควบคุมอุปกรณ์ Matter จากแอปตัวอย่างได้โดยตรง
จากหน้าจอหลัก คุณสามารถสลับอุปกรณ์เป็นเปิดหรือปิด แตะอุปกรณ์เพื่อเข้าถึงรายละเอียดอุปกรณ์
แชร์อุปกรณ์
การแชร์อุปกรณ์จะเรียกว่าขั้นตอนสำหรับผู้ดูแลระบบหลายคนในข้อกำหนดของ Matter เมื่อมีการมอบหมายอุปกรณ์ให้กับแอปตัวอย่าง คุณจะแชร์กับระบบนิเวศอื่นๆ ได้อย่างง่ายดาย
หากต้องการแชร์อุปกรณ์ Matter กับระบบนิเวศอื่นๆ คุณจะต้องติดตั้งแพลตฟอร์มอื่นในอุปกรณ์ Android แพลตฟอร์มภายนอกนี้จะกลายเป็นค่าคอมมิชชันเป้าหมาย เราได้สร้างอินสแตนซ์อีกตัวหนึ่งของแอปตัวอย่างที่คุณสามารถใช้เป็นค่าคอมมิชชันเป้าหมายได้
ไปที่ส่วนรุ่นในที่เก็บ GitHub ของ Sample App for Matter สำหรับรุ่นล่าสุด ให้ค้นหาในส่วน "เนื้อหา" โดย APK ชื่อ
GHSAFM-version-targetcommissioner-debug.apk
อย่าเลือกdefault
ติดตั้งค่าคอมมิชชันเป้าหมาย
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
จากหน้าจอหลัก ให้แตะอุปกรณ์เพื่อแสดงข้อมูลอุปกรณ์ แตะแชร์
แอปตัวอย่างเรียกใช้ Mobile SDK Share API และโอนการควบคุมไปยัง Play services อีกครั้ง
ชีตการแชร์จะปรากฏขึ้นเพื่อให้คุณเลือกแอปหรือแพลตฟอร์มที่ต้องการจับคู่อุปกรณ์ หน้าจอนี้แสดง 2 วิธีในการแชร์อุปกรณ์ ดังนี้
- ตั้งค่าด้วยตนเองผ่านรหัสการตั้งค่าเพื่อแชร์กับแอปค่าคอมมิชชันเป้าหมาย
- ด้วยแอป Android ในพื้นที่ซึ่งลงทะเบียนเป็น กรรมาธิการ Matter
แอปค่าคอมมิชชันเป้าหมายจะมีป้ายกํากับว่า GHSAFM-TC แตะอินสแตนซ์นี้ของแอปตัวอย่างเพื่อแชร์อุปกรณ์
ต่อไป แอปภายนอก (เจ้าหน้าที่เป้าหมาย) จะจัดเตรียมอุปกรณ์ให้เป็นระบบของตนเอง
การตั้งค่า
จากหน้าจอหลัก ให้คลิกไอคอนการตั้งค่า
ซึ่งคุณจะมีตัวเลือกในการอัปเดตค่ากำหนดของผู้ใช้ รับความช่วยเหลือ และดูข้อมูลเพิ่มเติมเกี่ยวกับแอปการแจ้งเตือนแบบ Halfsheet
จากหน้าจอการตั้งค่า คุณเลือกปิดการแจ้งเตือนการค้นพบเชิงรุกสำหรับอุปกรณ์ Matter เครื่องได้
หากแอปพลิเคชันมีขั้นตอนการค้นหา Matter หรือค่าคอมมิชชันของตัวเอง คุณอาจต้องระงับการแจ้งเตือนเหล่านี้เพื่อป้องกันการหยุดชะงัก ดูข้อมูลเพิ่มเติมได้ที่ระงับการแจ้งเตือนการค้นพบที่คำนวณได้
ยูทิลิตีของนักพัฒนาซอฟต์แวร์
จากหน้าจอการตั้งค่า คุณยังสามารถเข้าถึงยูทิลิตีของนักพัฒนาซอฟต์แวร์ได้ด้วย
หากต้องการดูเนื้อหาของที่เก็บ Device and User Preferences DataStore ใน Logcat ให้ทำตามขั้นตอนต่อไปนี้
คลิกเนื้อหาในที่เก็บบันทึก
คลิก OK ในกล่องโต้ตอบ แล้วเลือก Logcat
ความคิดเห็นและความช่วยเหลือ
หากต้องการส่งความคิดเห็นหรือความคิดเห็นเกี่ยวกับวิธีที่เราสามารถปรับปรุงประสบการณ์การพัฒนาด้วย Sample App for Matter โปรดกรอกแบบฟอร์มความคิดเห็นของเรา
หากพบปัญหาเกี่ยวกับ Sample App for Matter ให้ลองทําตามขั้นตอนต่อไปนี้เพื่อยืนยันสภาพแวดล้อมของคุณ
หากมีข้อสงสัยเกี่ยวกับการใช้แอปตัวอย่างหรือค้นหาข้อบกพร่องเกี่ยวกับโค้ด คุณสามารถส่งปัญหาไปยังเครื่องมือติดตามปัญหาในที่เก็บของ GitHub ได้โดยทำดังนี้
หากต้องการคำแนะนำอย่างเป็นทางการจาก Google สำหรับคำถามทางเทคนิค โปรดดูฟอรัมนักพัฒนาซอฟต์แวร์สมาร์ทโฮมต่อไปนี้
หากต้องการรับการสนับสนุนด้านเทคนิคจากชุมชน ให้ใช้แท็ก google-smart-home
ใน Stack Overflow ดังนี้