Google Home Sample App for Matter ใช้ Google Home Mobile SDK เพื่อสร้างแอป Android ที่คล้ายกับ Google Home app (GHA) แอปตัวอย่างนี้มีฟีเจอร์ต่อไปนี้
- จัดสรรอุปกรณ์จริงและอุปกรณ์เสมือน Matter ให้กับ Local Android fabric
- จัดสรรอุปกรณ์จริงและอุปกรณ์เสมือนให้กับโครงสร้างพื้นฐานสำหรับการพัฒนา
- ควบคุมอุปกรณ์ในโครงสร้างพื้นฐานการพัฒนา เช่น การเปิด ไฟ
- ฟีเจอร์ผู้ดูแลระบบหลายคนช่วยให้คุณแชร์อุปกรณ์ใน Fabric การพัฒนา กับแอปอื่นๆ ได้ และในทางกลับกันก็สามารถรวมอุปกรณ์ที่แชร์จากแอปอื่นๆ ไว้ใน Fabric การพัฒนา ได้ด้วย
- ยูทิลิตีสำหรับนักพัฒนาแอป
คู่มือนี้อธิบายวิธีติดตั้ง 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
ติดตั้ง
ไปที่ส่วนรีลีส ในที่เก็บ Sample App for Matter GitHub สำหรับรุ่นล่าสุด ให้ค้นหา 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อุปกรณ์ลงใน Fabric ของ Android ในพื้นที่ พร้อมกับ Fabric สำหรับการพัฒนาที่อยู่ในเครื่องของแอปตัวอย่าง เท่านั้น
ผ้า Matter คืออะไร
Matter Fabric คือโดเมนความน่าเชื่อถือที่แชร์กันในหมู่อุปกรณ์ ในเครือข่ายในบ้าน ซึ่งช่วยให้อุปกรณ์สื่อสารกันได้
อุปกรณ์อาจมีโครงสร้างอย่างน้อย 1 รายการที่สอดคล้องกับแพลตฟอร์ม แอป หรือ กลุ่มอุปกรณ์ที่โต้ตอบกัน Fabric มีรหัสที่ไม่ซ้ำกัน และอุปกรณ์จะใช้ชุดข้อมูลเข้าสู่ระบบและผู้ออกใบรับรอง (CA) ชุดเดียวกัน ระบบจะกำหนดข้อมูลเข้าสู่ระบบเหล่านี้ในระหว่างการMatter เตรียมใช้งาน
หากต้องการเปิดใช้Matter ให้ทำตามขั้นตอนต่อไปนี้
แตะปุ่ม
เพิ่ม อุปกรณ์เพื่อเริ่มกระบวนการเตรียมใช้งานจากนั้นระบบจะโอนการควบคุมไปยัง Google Play services ซึ่งจะเปิดตัว จากการเรียกไปยัง Mobile SDK หากต้องการสร้างหลักฐานการครอบครอง ให้สแกนคิวอาร์โค้ดหรือแตะใช้รหัสการจับคู่
เมื่อการจัดสรรเสร็จสมบูรณ์ ให้ป้อนชื่ออุปกรณ์ แล้วแตะเสร็จสิ้น
ตอนนี้อุปกรณ์ของคุณเชื่อมต่อกับทั้ง Fabric ของ Android ในพื้นที่และ Fabric สำหรับการพัฒนาแล้ว
Play services จะจัดการงานการจัดสรรทั้งหมดและหน้าจอที่เกี่ยวข้องเมื่อจัดสรรอุปกรณ์ ซึ่งจะช่วยให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่สม่ำเสมอและไม่ต้องจัดการสิทธิ์ที่มีความละเอียดอ่อน เช่น ข้อมูลเข้าสู่ระบบ Wi-Fi และ Thread
ควบคุมอุปกรณ์
Fabric สำหรับการพัฒนาจะสร้างข้อมูลเข้าสู่ระบบเพื่อควบคุม Matter อุปกรณ์ได้โดยตรงจากแอปตัวอย่าง
จากหน้าจอหลัก คุณสามารถเปิดหรือปิดอุปกรณ์ได้ แตะอุปกรณ์เพื่อเข้าถึงรายละเอียดอุปกรณ์
แชร์อุปกรณ์
การแชร์อุปกรณ์เรียกว่าโฟลว์ผู้ดูแลระบบหลายคนใน Matter เมื่อมอบหมายอุปกรณ์ให้กับแอปตัวอย่างแล้ว คุณจะแชร์อุปกรณ์กับระบบนิเวศอื่นๆ ได้อย่างง่ายดาย
หากต้องการแชร์อุปกรณ์ Matter กับระบบนิเวศอื่นๆ คุณจะต้องติดตั้งแพลตฟอร์มอื่นในอุปกรณ์ Android แพลตฟอร์มภายนอกนี้จะกลายเป็นผู้รับค่าคอมมิชชันเป้าหมาย เราได้สร้างอินสแตนซ์อื่นของแอปตัวอย่างที่คุณใช้เป็นผู้รับค่าคอมมิชชันเป้าหมายได้
ไปที่ส่วนรีลีส ในที่เก็บ Sample App for Matter GitHub สำหรับรุ่นล่าสุด ให้ค้นหา APK ที่ชื่อ
GHSAFM-version-targetcommissioner-debug.apk
ในส่วนชิ้นงาน อย่าเลือกdefault
ติดตั้งผู้รับมอบสิทธิ์เป้าหมาย
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
จากหน้าจอหลัก ให้แตะอุปกรณ์เพื่อแสดงข้อมูลอุปกรณ์ แตะ แชร์
แอปตัวอย่างจะเรียกใช้ Mobile SDKShare API และระบบจะโอนการควบคุมไปยัง Play services อีกครั้ง
ชีตการแชร์จะแสดงขึ้นเพื่อให้คุณเลือกแอปหรือแพลตฟอร์มที่ต้องการจับคู่อุปกรณ์ หน้าจอนี้มีวิธีแชร์อุปกรณ์ 2 วิธี ดังนี้
- ด้วยตนเองผ่านรหัสการตั้งค่าที่จะแชร์กับแอปค่าคอมมิชชันเป้าหมาย
- ด้วยแอป Android ในพื้นที่ที่ลงทะเบียนเป็น Matterผู้รับมอบอำนาจ
แอปผู้รับค่าคอมมิชชันเป้าหมายจะมีป้ายกำกับ GHSAFM-TC แตะอินสแตนซ์ของ แอปตัวอย่างนี้เพื่อแชร์อุปกรณ์
จากนั้นแอปภายนอก (ผู้ให้บริการเป้าหมาย) จะทำการจัดสรรอุปกรณ์ ลงในโครงข่ายของตนเองให้เสร็จสมบูรณ์
การตั้งค่า
จากหน้าจอหลัก ให้คลิกไอคอนการตั้งค่า
ในส่วนนี้ คุณจะมีตัวเลือกในการ อัปเดตค่ากำหนดของผู้ใช้ รับความช่วยเหลือ และดูข้อมูลเพิ่มเติมเกี่ยวกับแอปการแจ้งเตือนเกี่ยวกับโฆษณาครึ่งหน้า
จากหน้าจอการตั้งค่า คุณสามารถเลือกปิดใช้การแจ้งเตือนการค้นพบที่สร้างค่าคอมมิชชันได้เชิงรุกสำหรับMatterอุปกรณ์
หากแอปพลิเคชันมีMatterการค้นพบหรือ ขั้นตอนการว่าจ้างของตัวเอง คุณอาจต้องการระงับการแจ้งเตือนเหล่านี้เพื่อป้องกัน การหยุดชะงัก ดูข้อมูลเพิ่มเติมได้ที่ระงับการแจ้งเตือนการค้นพบที่คิดค่าคอมมิชชันได้
ยูทิลิตีสำหรับนักพัฒนาแอป
จากหน้าจอการตั้งค่า คุณยังเข้าถึงยูทิลิตีสำหรับนักพัฒนาแอปได้ด้วย
หากต้องการตรวจสอบเนื้อหาของที่เก็บ Device และ User Preferences DataStore ใน Logcat ให้ทำตามขั้นตอนต่อไปนี้
คลิกเนื้อหาที่เก็บบันทึก
คลิก OK ในกล่องโต้ตอบ แล้วเลือก Logcat
ความคิดเห็นและความช่วยเหลือ
หากต้องการส่งความคิดเห็นเกี่ยวกับวิธีปรับปรุงประสบการณ์การพัฒนาด้วย Sample App for Matter โปรดกรอกแบบฟอร์มความคิดเห็น
หากพบปัญหาเกี่ยวกับ Sample App for Matter ให้ลองทำตาม ขั้นตอนเพื่อยืนยันสภาพแวดล้อม
หากมีคำถามเกี่ยวกับการใช้แอปตัวอย่างหรือพบข้อบกพร่องในโค้ด คุณ สามารถส่งปัญหาไปยังเครื่องมือติดตามปัญหาในที่เก็บ GitHub ได้
หากต้องการรับคำแนะนำอย่างเป็นทางการจาก Google เกี่ยวกับคำถามทางเทคนิค ให้ใช้ฟอรัมนักพัฒนาซอฟต์แวร์สมาร์ทโฮม
หากต้องการรับการสนับสนุนทางเทคนิคจากชุมชน ให้ใช้แท็ก google-smart-home
ใน
Stack Overflow: