
Google Home Sample App for Matter ใช้ Google Home Mobile SDK เพื่อสร้างแอป Android ที่คล้ายกับ Google Home app (GHA) แอปตัวอย่างนี้มีฟีเจอร์ต่อไปนี้
- จัดสรรอุปกรณ์จริงและอุปกรณ์เสมือนMatterให้กับ Local Android 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 MatterCodelab หากเลือกอย่าแสดงข้อความนี้อีก คุณจะเรียกกล่องโต้ตอบกลับมาได้ ทุกเมื่อโดยการอัปเดตค่ากำหนดในส่วนผู้ดูแลระบบของแอป
ในขั้นตอนถัดไป คุณจะเพิ่มMatterอุปกรณ์ลงใน Fabric ของ Android ในพื้นที่ พร้อมกับ Fabric สำหรับการพัฒนาที่อยู่ในแอปตัวอย่างเท่านั้น
ผ้า Matter คืออะไร

Matter Fabric คือโดเมนความน่าเชื่อถือที่แชร์กันในหมู่อุปกรณ์ ในเครือข่ายในบ้าน ซึ่งช่วยให้อุปกรณ์สื่อสารกันได้
อุปกรณ์อาจมี 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 แตะอินสแตนซ์ของ แอปตัวอย่างนี้เพื่อแชร์อุปกรณ์
จากนั้นแอปภายนอก (ผู้ให้บริการเป้าหมาย) จะทำการจัดสรร อุปกรณ์ลงใน Fabric ของตัวเองให้เสร็จสมบูรณ์
การตั้งค่า
จากหน้าจอหลัก ให้คลิกไอคอนการตั้งค่า ที่นี่คุณจะมีตัวเลือกในการ อัปเดตค่ากำหนดของผู้ใช้ รับความช่วยเหลือ และดูข้อมูลเพิ่มเติมเกี่ยวกับแอป

การแจ้งเตือนแบบครึ่งหน้า
จากหน้าจอการตั้งค่า คุณสามารถเลือกปิดใช้การแจ้งเตือนการค้นพบที่สร้างค่าคอมมิชชันได้เชิงรุกสำหรับ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: