เมื่อผู้ใช้ทำกิจกรรมต่างๆ ในแต่ละวัน แว่นตา AI อาจขาดการเชื่อมต่อกับอุปกรณ์โฮสต์ (เช่น โทรศัพท์ของผู้ใช้) หรือแว่นตาอาจไม่พร้อมใช้งานชั่วคราวหากผู้ใช้ถอดแว่นตาออก เพื่อรองรับการเปลี่ยนแปลงประเภทนี้ในความพร้อมใช้งานของอุปกรณ์ แอปของคุณสามารถใช้ XR Device Availability API ซึ่งรวมสัญญาณความพร้อมใช้งานของอุปกรณ์เข้ากับค่า Lifecycle.State มาตรฐานของ Android ใช้ API นี้เพื่อช่วยจัดการ
การกำหนดเส้นทางเสียง การเปิดใช้งานคำสั่งให้ดำเนินการ และเพื่อทราบเวลาที่คาดว่าจะได้รับข้อมูลจากผู้ใช้ตาม
เวลาที่แว่นตา AI พร้อมใช้งาน
ทำความเข้าใจสถานะวงจร
ตารางต่อไปนี้แสดงวิธีที่สัญญาณความพร้อมใช้งานของอุปกรณ์เชื่อมโยงกับค่า Lifecycle.State
สถานะวงจร |
สถานะอุปกรณ์ |
คำอธิบาย |
|---|---|---|
|
สร้างแล้ว |
สร้างออบเจ็กต์วงจร แต่ยังไม่ได้สังเกต |
|
ไม่ได้ใช้งาน |
บริการเชื่อมต่ออยู่ แต่ผู้ใช้ไม่ได้สวมอุปกรณ์ |
|
ใช้งานอยู่ |
ผู้ใช้สวมอุปกรณ์อยู่ |
|
ยกเลิกการเชื่อมต่อแล้ว |
อุปกรณ์ไม่ได้เชื่อมต่ออยู่หรือการเชื่อมต่อบริการถูกตัด |
ตรวจสอบและติดตามความพร้อมใช้งานของอุปกรณ์
หากต้องการตรวจสอบและติดตามความพร้อมของอุปกรณ์ คุณจะต้องใช้บริบทที่คาดการณ์ไว้ ร่วมกับสถานะวงจรการใช้งานเพื่อพิจารณาว่าแอปควรจัดการแต่ละกรณีอย่างไร
val xrDevice = XrDevice.getCurrentDevice(projectedContext) xrDevice.getLifecycle().currentStateFlow .takeWhile { it != Lifecycle.State.DESTROYED } .collect { state -> when (state) { Lifecycle.State.STARTED -> { /* Device is ACTIVE (worn) */ } Lifecycle.State.CREATED -> { /* Device is INACTIVE (not worn) */ } else -> { /* Handle other states */ } } } }
ประเด็นสำคัญเกี่ยวกับโค้ด
- ตรวจสอบการเชื่อมต่อ: ก่อนเข้าถึงวงจรของอุปกรณ์ ให้โทรหา
ProjectedContext.isProjectedDeviceConnectedเพื่อยืนยันว่าอุปกรณ์ที่ คาดการณ์เชื่อมต่อกับอุปกรณ์โฮสต์แล้ว - รับ
ProjectedContext: โทรหาProjectedContext.createProjectedDeviceContextหลังจากยืนยันการเชื่อมต่อแล้ว และตรวจสอบว่าคุณส่งบริบทนี้ไปยังอินสแตนซ์XrDevice - จัดการการล้างบริบท: ระบบจะสร้าง
deviceIdใหม่ทุกครั้งที่อุปกรณ์ที่ฉายภาพเชื่อมต่อ เมื่อสถานะถึงDESTROYEDแล้วProjectedContextปัจจุบันจะใช้ไม่ได้ หยุดใช้ทันทีและรอการเชื่อมต่อใหม่ - เพิ่มประสิทธิภาพแบตเตอรี่และทรัพยากร: จัดการฟังก์ชันการทำงานของแอปอย่างเหมาะสมตามสถานะวงจรการใช้งานเพื่อรักษาทรัพยากรของระบบและลดการใช้แบตเตอรี่ เช่น คุณควรหยุดฉายเนื้อหา UI ไปยังแว่นตา AI
เมื่อสถานะเปลี่ยนเป็น
CREATED