แอปตัวอย่าง
หากพบปัญหาเมื่อใช้ Home API คุณสามารถรวบรวมบันทึกเพื่อทำการดีบักเพิ่มเติมได้ การรวบรวมบันทึกจากอุปกรณ์เคลื่อนที่ต้องใช้ Xcode หากต้องการความช่วยเหลือจาก Google ให้รวบรวมบันทึกจากทั้งอุปกรณ์ iOS และฮับ แล้วเปิดตั๋วในเครื่องมือติดตามปัญหาพร้อมข้อมูลและบันทึกที่เกี่ยวข้อง
รวบรวมบันทึก iOS
อุปกรณ์เคลื่อนที่ต้องเชื่อมต่อกับเครื่องในระบบของคุณสำหรับทุกขั้นตอนที่เกี่ยวข้องกับ Xcode
บันทึกของแอปและบันทึกของ SDK จะแสดงและรวบรวมได้โดยตรงภายในคอนโซล Xcode เมื่ออุปกรณ์เคลื่อนที่เชื่อมต่อกับเครื่องในระบบของคุณและคุณเรียกใช้แอปพลิเคชันผ่าน Xcode คอนโซลจะบันทึกและสตรีมบันทึกเอาต์พุตมาตรฐาน (stdout) และบันทึกข้อผิดพลาดมาตรฐาน (stderr) จากทั้งเลเยอร์แอปพลิเคชันและ Home SDK ที่ผสานรวมโดยอัตโนมัติ ซึ่งเป็นวิธีที่ตรงไปตรงมาในการตรวจสอบกระบวนการเริ่มต้นแบบเรียลไทม์ การโต้ตอบกับ API และเหตุการณ์ SDK ระหว่างการพัฒนาและการดีบัก
การรวบรวมบันทึกส่วนขยายจาก Xcode
หากพบปัญหาเมื่อใช้ Home API คุณสามารถรวบรวมบันทึกเพื่อทำการดีบักเพิ่มเติมได้
ใน Xcode ให้ไปที่ดีบัก ในแถบเมนูด้านบน แล้วคลิกแนบกับกระบวนการด้วย PID หรือชื่อ

ในส่วน PID หรือชื่อกระบวนการ ให้เลือก MatterExtension แล้วคลิก แนบ

คุณจะเห็นข้อความกำลังรอการแนบกับ MatterAddDeviceExtension ใน iPhone หากคลิกที่ด้านขวาบน

คลิกแท็บ แล้วเลือก MatterAddExtension

คอนโซลจะบันทึกบันทึกส่วนขยาย
Sherlog: การติดตามเหตุการณ์แบบข้ามสแต็ก
Sherlog เป็นบริการติดตามแบบเรียลไทม์ที่ให้มุมมองแบบครบวงจรของการโต้ตอบระหว่างโครงสร้างพื้นฐานของ Google กับบริการคลาวด์ของพาร์ทเนอร์
ข้อกำหนดเบื้องต้น: การติดตามต้องใช้บัญชีที่แชร์และประสานงานโดย Google (เช่น บัญชีที่ลงทะเบียน GReg หรือบัญชีเดโม)
วัตถุประสงค์หลัก: แก้ไขข้อบกพร่องด้านฟังก์ชันการทำงานและปัญหาการผสานรวมแบบคลาวด์กับคลาวด์ (C2C) (เช่น การลิงก์บัญชีล้มเหลวหรือสถานะอุปกรณ์ไม่ถูกต้อง) โดยไม่ต้องเปลี่ยนแปลงโค้ดเวอร์ชันที่ใช้งานจริง
ความสามารถ: ให้กราฟการเรียก RPC ที่สมบูรณ์ เพย์โหลดคำขอ/การตอบกลับ และข้อมูลเมตาสำหรับ Intent SYNC, EXECUTE, QUERY และการลิงก์บัญชี
บันทึกอุปกรณ์ฮับ Fuchsia
คุณสามารถรวบรวมบันทึกจากฮับ Fuchsia ต่อไปนี้โดยใช้วิธีนี้ * Google Nest Hub (รุ่นที่ 2) * Google Nest Hub Max
วิธีเปิดใช้ฮับสำหรับการดึงบันทึกในระบบ
- ส่งอีเมลพร้อมหมายเลขซีเรียลและรุ่นของอุปกรณ์ให้ผู้จัดการลูกค้าด้านเทคนิค (TAM) ของ Google ซึ่งจะอยู่ในตัวอักษรขนาดเล็กใต้ตัวอุปกรณ์
- เมื่ออยู่ในรายการที่อนุญาตแล้ว คุณต้องเปิดใช้ฟีเจอร์โดยทำตามขั้นตอนต่อไปนี้
- จากฮับ ให้ทำดังนี้
- เลื่อนนิ้วลงจากด้านบนของหน้าจอ
- แตะไอคอนการตั้งค่า
- ค้นหาเวอร์ชัน Fuchsia: ใน Nest Hub (รุ่นที่ 2) ให้ไปที่ข้อมูลอุปกรณ์ > ข้อมูลทางเทคนิค > เวอร์ชัน Fuchsia
- แตะ "เวอร์ชัน Fuchsia" 7 ครั้ง ซึ่งจะเปิดใช้ตัวเลือกสำหรับนักพัฒนาแอป
- กลับไปที่เมนูระดับบนสุด
- แตะ "ตัวเลือกสำหรับนักพัฒนาแอป"
- แตะ "การบันทึกของพาร์ทเนอร์"
- ระบบจะเปิดใช้ฟีเจอร์นี้เป็นเวลา 24 ชั่วโมง หลังจากนั้น ให้เปิดใช้ฟีเจอร์การบันทึกอีกครั้งตั้งแต่ขั้นตอนที่ 5 เป็นต้นไป
- จากฮับ ให้ทำดังนี้
- รับที่อยู่ IP ของฮับโดยทำดังนี้
- จากฮับ หากฮับมีหน้าจอ ให้ทำดังนี้
- เลื่อนนิ้วลงจากด้านบนของหน้าจอ
- แตะไอคอนการตั้งค่า
- ค้นหาที่อยู่ IP ของอุปกรณ์: ใน Nest Hub (รุ่นที่ 2) ให้ไปที่ข้อมูลอุปกรณ์ > ข้อมูลทางเทคนิค > ที่อยู่ IP
- จากแอป Google Home (GHA) ในโทรศัพท์ ให้ทำดังนี้
- แตะอุปกรณ์เพื่อเปิดหน้ารายละเอียดอุปกรณ์
- แตะไอคอนการตั้งค่า เพื่อ เปิดหน้าการตั้งค่า
- ค้นหาที่อยู่ IP ของอุปกรณ์: ไปที่ข้อมูลอุปกรณ์ > ข้อมูลทางเทคนิค > ที่อยู่ IP
- จากฮับ หากฮับมีหน้าจอ ให้ทำดังนี้
- หากต้องการดึงบันทึกจากฮับ คุณจะต้องส่งคำขอ GET HTTP ไปยังฮับจากคอมพิวเตอร์ในเครือข่าย Wi-Fi เดียวกัน
- จดพอร์ตและเส้นทางของปลายทาง
curl -k -X GET https://ip-address:8443/setup/get_logs --output output-file - การเชื่อมต่อจะเปิดไว้ได้เพียง 1 นาที แต่ข้อมูลที่ดึงจากบัฟเฟอร์มักจะมีเหตุการณ์ที่ผ่านมา 20-30 นาที
- วิธีนี้เหมาะสำหรับการดึงบันทึกทันทีหลังจากทำตามขั้นตอนการทดสอบเสร็จสมบูรณ์ เพื่อให้บัฟเฟอร์มีเนื้อหาที่เกี่ยวข้องกับการทดสอบ (คล้ายกับรายงานข้อบกพร่องของ Android)
- จดพอร์ตและเส้นทางของปลายทาง
การทำงานอัตโนมัติ
การตรวจจับขอบ
การทำงานอัตโนมัติในระบบนิเวศ Google Home มีการตรวจจับขอบ ซึ่ง เป็นตรรกะที่ตรวจสอบว่าตัวเริ่มต้นจะเปิดใช้งานก็ต่อเมื่อมีการเปลี่ยนแปลงสถานะจริงเท่านั้น ไม่ใช่การอัปเดตสถานะซึ่งเพียงแค่ทำซ้ำสถานะก่อนหน้า ของอุปกรณ์
ตัวอย่างเช่น หากการเปิดไฟเป็นตัวเริ่มต้น การตรวจจับขอบจะตรวจสอบว่าตัวเริ่มต้นจะเปิดใช้งานก็ต่อเมื่ออุปกรณ์ไฟเปลี่ยนจากปิดเป็นเปิดเท่านั้น ไม่ใช่จากเปิดเป็นเปิด (ไม่มีการเปลี่ยนแปลง)
การทำงานอัตโนมัติไม่ทำงานตามที่คาดไว้
หลังจากพิจารณาการตรวจจับขอบแล้ว หากการทำงานอัตโนมัติไม่ทำงานตามที่คาดไว้ ให้ทำดังนี้
ตรวจสอบอุปกรณ์แต่ละเครื่องเพื่อให้แน่ใจว่าอุปกรณ์ทำงานอย่างถูกต้องโดยไม่ขึ้นอยู่กับการทำงานอัตโนมัติ
ดูกราฟการทำงานอัตโนมัติของการทำงานอัตโนมัติของคุณ โดยเปรียบเทียบกับ DSL การทำงานอัตโนมัติเพื่อดูสมมติฐานที่อาจไม่ถูกต้อง
สังเกตสถานะอุปกรณ์ในแอป Google Home ระหว่างการดำเนินการการทำงานอัตโนมัติ
ตรวจสอบว่าอุปกรณ์ทั้งหมดที่การทำงานอัตโนมัติอ้างอิงถึงอยู่ในโครงสร้างที่คุณต้องการ การลบอุปกรณ์ที่การทำงานอัตโนมัติขึ้นอยู่กับอุปกรณ์นั้นอาจส่งผลที่ไม่คาดคิด ดู ผลกระทบของการลบอุปกรณ์ต่อการทำงานอัตโนมัติ
การทำงานอัตโนมัติทำงานเมื่อไม่ควร
หากการทำงานอัตโนมัติทำงานเมื่อไม่ควร ให้ตรวจสอบเกณฑ์ตัวเริ่มต้น คุณอาจต้องเพิ่มตรรกะเพิ่มเติมเพื่อให้แน่ใจว่าระบบจะบันทึกการเปลี่ยนแปลงสถานะเพียงครั้งเดียวและทริกเกอร์การทำงานอัตโนมัติเพียงครั้งเดียว
การทำงานอัตโนมัติไม่คอมไพล์
ตรวจสอบว่าแอปของคุณมีการนำเข้าที่จำเป็นทั้งหมด รวมถึงคลาสแต่ละคลาสที่สอดคล้องกับโหนดประเภทต่างๆ รวมถึงลักษณะภาษาที่คุณอ้างอิง
การสร้างการทำงานอัตโนมัติไม่ผ่านการตรวจสอบ
หากการสร้างการทำงานอัตโนมัติไม่ผ่านการตรวจสอบ ข้อความเตือนหรือข้อความแสดงข้อผิดพลาดจะให้ข้อมูลเกี่ยวกับปัญหา ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลอ้างอิง
ValidationIssueType
OAuth
หากคุณมีไคลเอ็นต์ OAuth อยู่แล้ว
หากคุณมีไคลเอ็นต์ OAuth ที่ยืนยันแล้วสำหรับแอปที่เผยแพร่ คุณสามารถใช้ไคลเอ็นต์ OAuth ที่มีอยู่เพื่อทดสอบ Home API ได้
Google Home Developer Console ไม่จำเป็นต้องลงทะเบียนเพื่อทดสอบและใช้ Home API อย่างไรก็ตาม คุณยังคงต้องลงทะเบียนที่ได้รับอนุมัติ Developer Console เพื่อเผยแพร่แอป แม้ว่าคุณจะมี ไคลเอ็นต์ OAuth ที่ยืนยันแล้วจากการผสานรวมอื่นๆ
ข้อควรพิจารณาต่อไปนี้มีผลบังคับใช้
มีข้อจำกัดผู้ใช้ 100 รายเมื่อใช้ไคลเอ็นต์ OAuth ที่มีอยู่ ดูข้อมูลเกี่ยวกับการเพิ่มผู้ใช้ทดสอบได้ที่หัวข้อ สร้างรหัสไคลเอ็นต์ OAuth ID โดยไม่ขึ้นอยู่กับการยืนยัน OAuth Home API กำหนดข้อจำกัดผู้ใช้ 100 รายที่สามารถให้สิทธิ์เข้าถึงแอปพลิเคชันของคุณ ข้อจำกัดนี้จะถูกยกเลิกเมื่อ ลงทะเบียน Developer Console เสร็จสมบูรณ์
Developer Console การลงทะเบียน ควร ส่งเพื่อขออนุมัติเมื่อคุณพร้อมที่จะจำกัดการให้สิทธิ์ประเภทอุปกรณ์ ผ่าน OAuth เพื่อเตรียมพร้อมสำหรับการอัปเดตแอปด้วย Home API
สำหรับแอป Google Cloud ที่ยังอยู่ระหว่างการยืนยัน OAuth ผู้ใช้จะทำขั้นตอน OAuth ให้เสร็จสมบูรณ์ไม่ได้จนกว่าการยืนยันจะเสร็จสมบูรณ์ หากพยายามให้สิทธิ์ ระบบจะแสดงข้อผิดพลาดต่อไปนี้
Access blocked: <Project Name> has not completed the Google verification process.