แอปตัวอย่าง Google Home สำหรับ Matter

แอปตัวอย่าง Google Home สำหรับ Matter

Google Home Sample App for Matter ใช้ Google Home Mobile SDK เพื่อสร้างแอป Android ที่คล้ายกับ Google Home app (GHA) แอปตัวอย่างนี้มีฟีเจอร์ต่อไปนี้

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

คู่มือนี้อธิบายวิธีติดตั้ง APK ของ Sample App for Matter และใช้เพื่อคอมมิชชัน ควบคุม และแชร์อุปกรณ์ Matter

หากต้องการดาวน์โหลดซอร์สโค้ด ดูวิธีผสานรวม Mobile SDK และปรับแต่งหน้าจอใน Android Studio ให้ลองใช้ Codelab Sample App for Matter ของเรา

ไปที่ Sample App for Matter codelab

ข้อกำหนดเบื้องต้น

  • อุปกรณ์ Android O (8.1, ระดับ API 27) ขึ้นไปที่พร้อมสำหรับการทดสอบ หากต้องการตรวจสอบว่าอุปกรณ์ของคุณมีการรองรับ Matter เวอร์ชันล่าสุด โปรดดูคู่มือยืนยันโมดูลและบริการของ Matter
  • สร้างอุปกรณ์ Matter ที่มีความสามารถในการเปิด/ปิด แอปตัวอย่างนี้ใช้งานได้กับอุปกรณ์เสมือนจริงและ ESP32

คุณไม่จำเป็นต้องมีฮับ เช่น Google Nest Hub (2nd gen) เพื่อเริ่มใช้งานและควบคุมอุปกรณ์ด้วยSample App for Matter

ติดตั้ง

  1. ไปที่ส่วนรุ่นในที่เก็บ GitHub ของ Sample App for Matter สำหรับรุ่นล่าสุด ให้ค้นหา APK ที่ชื่อ GHSAFM-version-default-debug.apk ในส่วนชิ้นงาน อย่าเลือก targetcommissioner

  2. ติดตั้ง Android Debug Bridge (adb) โดยทำดังนี้

    ติดตั้ง adb

  3. เชื่อมต่ออุปกรณ์ Android ด้วย USB และเปิดใช้การโอนไฟล์ จากนั้นติดตั้ง APK โดยทำดังนี้

    $ adb unroot && adb install GHSAFM-version-default-debug.apk
    

ตั้งค่าอุปกรณ์

เมื่อเปิดแอปตัวอย่างเป็นครั้งแรก คุณจะเห็นกล่องโต้ตอบที่มีลิงก์ไปยัง Codelab ของ Sample App for Matter หากเลือกไม่ต้องแสดงข้อความนี้อีก คุณจะแสดงกล่องโต้ตอบอีกครั้งได้ทุกเมื่อโดยอัปเดตค่ากำหนดในส่วนผู้ดูแลระบบของแอป

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

ผ้า Matter คืออะไร

แอปตัวอย่าง Google Home สำหรับ Matter

Matter Fabric คือโดเมนความน่าเชื่อถือที่ใช้ร่วมกันระหว่างอุปกรณ์ในเครือข่ายในบ้าน ซึ่งช่วยให้อุปกรณ์สื่อสารกันได้

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

หากต้องการเริ่มใช้งานอุปกรณ์ Matter ให้ทำตามขั้นตอนต่อไปนี้

  1. แตะปุ่ม เพิ่มอุปกรณ์เพื่อเริ่มกระบวนการจัดเตรียมอุปกรณ์

    เพิ่มอุปกรณ์

  2. จากนั้น ระบบจะโอนการควบคุมไปยัง Google Play services ซึ่งเปิดขึ้นจากการเรียกใช้ Mobile SDK หากต้องการสร้างหลักฐานการครอบครอง ให้สแกนคิวอาร์โค้ดหรือแตะใช้รหัสการจับคู่

    สแกนโค้ด QR

  3. เมื่อการจัดเตรียมเสร็จสมบูรณ์ ให้ป้อนชื่ออุปกรณ์ แล้วแตะเสร็จสิ้น

ตอนนี้อุปกรณ์ของคุณเชื่อมต่อกับทั้งโครงสร้างพื้นฐาน Android ในเครื่องและโครงสร้างพื้นฐานสำหรับการพัฒนาแล้ว

Play services จะจัดการงานการคอมมิชชันและหน้าจอที่เกี่ยวข้องทั้งหมดเมื่อคอมมิชชันอุปกรณ์ ซึ่งจะช่วยให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่สอดคล้องกันและไม่จำเป็นต้องจัดการสิทธิ์ที่มีความละเอียดอ่อน เช่น ข้อมูลเข้าสู่ระบบ Wi-Fi และ Thread

ควบคุมอุปกรณ์

Fabric สำหรับการพัฒนาจะสร้างข้อมูลเข้าสู่ระบบเพื่อควบคุมอุปกรณ์ Matter จากแอปตัวอย่างโดยตรง

จากหน้าจอหลัก คุณสามารถสลับอุปกรณ์เป็นเปิดหรือปิดได้ แตะอุปกรณ์เพื่อเข้าถึงรายละเอียดอุปกรณ์

เพิ่มอุปกรณ์แล้ว

แชร์อุปกรณ์

การแชร์อุปกรณ์เรียกว่าขั้นตอนการดูแลระบบหลายคนในข้อกำหนดเฉพาะของ Matter เมื่อมีการคอมมิชชันอุปกรณ์ไปยังแอปตัวอย่างแล้ว คุณจะแชร์อุปกรณ์กับระบบนิเวศอื่นๆ ได้อย่างง่ายดาย

หากต้องการแชร์อุปกรณ์ Matter กับระบบนิเวศอื่นๆ คุณจะต้องติดตั้งแพลตฟอร์มอื่นในอุปกรณ์ Android แพลตฟอร์มภายนอกนี้จะกลายเป็นผู้ว่าจ้างเป้าหมาย เราได้สร้างอินสแตนซ์อื่นของแอปตัวอย่างที่คุณใช้เป็นคอมมิชชันเนอร์เป้าหมายได้

  1. ไปที่ส่วนรุ่นในที่เก็บ GitHub ของ Sample App for Matter สำหรับรุ่นล่าสุด ให้ค้นหา APK ที่ชื่อ GHSAFM-version-targetcommissioner-debug.apk ในส่วนชิ้นงาน อย่าเลือก default

  2. ติดตั้งคอมมิชชันเนอร์เป้าหมาย

    $ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
    
  3. จากหน้าจอหลัก ให้แตะอุปกรณ์เพื่อแสดงข้อมูลอุปกรณ์ แตะแชร์

    แชร์อุปกรณ์

แอปตัวอย่างจะเรียกใช้ Mobile SDK Share API และระบบจะโอนการควบคุมไปยัง Play services อีกครั้ง

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

  1. ด้วยตนเองผ่านรหัสการตั้งค่าที่จะแชร์กับแอปผู้ควบคุมเป้าหมาย
  2. ด้วยแอป Android ในเครื่องที่ลงทะเบียนเป็น Matter Commissioner

แอปผู้รับมอบคอมมิชชันเป้าหมายจะมีป้ายกำกับว่า GHSAFM-TC แตะอินสแตนซ์นี้ของแอปตัวอย่างเพื่อแชร์อุปกรณ์

จากนั้น แอปภายนอก (ผู้รับมอบสิทธิ์เป้าหมาย) จะดำเนินการมอบสิทธิ์อุปกรณ์ให้เข้าสู่แฟบริกของตนเองให้เสร็จสมบูรณ์

การตั้งค่า

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

การตั้งค่า

การแจ้งเตือนแบบครึ่งหน้าจอ

จากหน้าจอการตั้งค่า คุณสามารถเลือกปิดใช้การแจ้งเตือนการค้นพบอุปกรณ์ที่สามารถรับค่าคอมมิชชันได้ในเชิงรุกสำหรับอุปกรณ์ Matter เครื่อง

หากแอปพลิเคชันของคุณมีขั้นตอนการค้นพบหรือการคอมมิชชัน Matter ของตัวเอง คุณอาจต้องการระงับการแจ้งเตือนเหล่านี้เพื่อป้องกันการรบกวน ดูข้อมูลเพิ่มเติมได้ที่ระงับการแจ้งเตือนการค้นพบที่ได้รับค่าคอมมิชชัน

ยูทิลิตีสำหรับนักพัฒนาซอฟต์แวร์

จากหน้าจอการตั้งค่า คุณยังเข้าถึงยูทิลิตีสำหรับนักพัฒนาแอปได้ด้วย

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

  1. คลิกเนื้อหาที่เก็บข้อมูลบันทึก

  2. คลิกตกลงในกล่องโต้ตอบ แล้วเลือก Logcat

ความคิดเห็นและความช่วยเหลือ

หากต้องการส่งความคิดหรือความคิดเห็นเกี่ยวกับวิธีที่เราสามารถปรับปรุงประสบการณ์การพัฒนาด้วย Sample App for Matter โปรดกรอกแบบฟอร์มความคิดเห็น

ส่งความคิดเห็นถึงเรา

หากพบปัญหาเกี่ยวกับ Sample App for Matter ให้ลองทำตามขั้นตอนเพื่อยืนยันสภาพแวดล้อมของคุณ ดังนี้

หากมีคำถามเกี่ยวกับการใช้แอปตัวอย่างหรือพบข้อบกพร่องของโค้ด คุณสามารถส่งปัญหาไปยัง Issue Tracker ในที่เก็บ GitHub ได้โดยทำดังนี้

หากต้องการรับคำแนะนำอย่างเป็นทางการจาก Google เกี่ยวกับคำถามทางเทคนิค ให้ใช้ฟอรัมสำหรับนักพัฒนาซอฟต์แวร์สมาร์ทโฮม

หากต้องการรับการสนับสนุนด้านเทคนิคจากชุมชน ให้ใช้แท็ก google-smart-home ใน Stack Overflow ดังนี้