แว่นตา AI แต่ละประเภทมีความสามารถแตกต่างกัน ตัวอย่างเช่น แม้ว่าแว่นตา AI ทุกรุ่นจะมีประสบการณ์ด้านเสียงผ่านเสียงพูด แต่แว่นตา AI บางรุ่นก็มีจอแสดงผลที่แอปของคุณสามารถแสดง UI ที่สร้างด้วย Jetpack Compose Glimmer ได้
หากต้องการสร้างประสบการณ์การใช้งานที่ราบรื่นในอุปกรณ์แว่นตา AI ที่หลากหลาย ให้วางแผนActivityสำหรับแว่นตาเพื่อตรวจสอบความสามารถของอุปกรณ์ต่างๆ
แนวทางนี้ช่วยลดความซับซ้อนในการพัฒนาด้วยการให้คุณสร้างกิจกรรมเดียวที่
ปรับลักษณะการทำงาน แทนที่จะสร้างกิจกรรมหลายรายการที่กำหนดเป้าหมายไปยังอุปกรณ์ที่เฉพาะเจาะจง
ทําความเข้าใจวงจรของกิจกรรมที่คาดการณ์
กิจกรรมที่คุณสร้างสำหรับแว่นตา AI จะไม่ทำงานบนอุปกรณ์โดยตรง แต่จะฉายไปยังอุปกรณ์จากอุปกรณ์โฮสต์ (เช่น โทรศัพท์ของผู้ใช้) กิจกรรมเฉพาะที่คุณสร้างขึ้นเพื่อวัตถุประสงค์นี้คือกิจกรรมที่คาดการณ์ไว้ วงจรของกิจกรรมที่ฉายจะสร้างขึ้นจากวงจรของกิจกรรมมาตรฐาน แต่ก็มีข้อแตกต่างที่สำคัญหลายประการซึ่ง รองรับความสามารถของแว่นตา AI ประเภทต่างๆ
ต่อไปนี้คือรายละเอียดของเหตุการณ์สำคัญ พร้อมไฮไลต์การโต้ตอบที่ เฉพาะเจาะจงสำหรับกิจกรรมที่คาดการณ์ว่าจะเกิดขึ้นในแว่นตา AI
onCreate()- เรียกใช้เมื่อสร้างกิจกรรมที่คาดการณ์ไว้
- เริ่มต้น UI ของ Glimmer ของ Jetpack Compose ในแอปและคอมโพเนนต์อื่นๆ ที่นี่
onStart()- เรียกใช้เมื่อกิจกรรมที่คาดการณ์ไว้เริ่มต้นขึ้นและผู้ใช้รับรู้ถึงแอป
onResume()- เรียกใช้เมื่อกิจกรรมที่ฉายกลับมามีโฟกัส ขณะที่กิจกรรม อยู่ในโฟกัส ผู้ใช้จะโต้ตอบกับกิจกรรมได้และสามารถใช้การป้อนข้อมูลจากทัชแพดหรือปุ่ม
- เรียกใช้เมื่อใส่แว่นกลับ (สวม) หลังจากที่ก่อนหน้านี้ถอดออกจากศีรษะ (ถอด)
onPause()- เรียกใช้เมื่อกิจกรรมที่คาดการณ์ไว้สูญเสียโฟกัส แต่ผู้ใช้ยังคงรับรู้ถึงแอปของคุณ ขณะที่กิจกรรมอยู่นอกโฟกัส กิจกรรมนั้นจะโต้ตอบไม่ได้และหยุดรับอินพุต
onStop()- เรียกใช้เมื่อระบบเชื่อว่าผู้ใช้ไม่ได้รับรู้ถึงแอปของคุณอีกต่อไป
- เรียกใช้เมื่อถอดแว่นตาออกจากศีรษะ (ถอดออก)
onDestroy()- เรียกใช้เมื่อกำลังจะทำลายกิจกรรมที่ฉาย เมื่อเรียกใช้ ฟังก์ชันนี้ ระบบจะปล่อยทรัพยากรทั้งหมดที่เชื่อมโยงกับกิจกรรม
ทำความเข้าใจว่าสถานะการแสดงผลส่งผลต่อวงจรของกิจกรรมที่คาดการณ์ไว้อย่างไร
ใน Activity มาตรฐาน สถานะวงจรของอุปกรณ์จะเปลี่ยนเมื่อหน้าจอของอุปกรณ์
ปิดลง โดยปกติจะเปลี่ยนเป็น onPause() หรือ onStop()
ในทางตรงกันข้าม วงจรของกิจกรรมที่ฉายจะไม่เปลี่ยนแปลงเมื่อจอแสดงผลของแว่นตา AI
เปิดหรือปิด ลักษณะการทำงานนี้หมายความว่ากิจกรรมที่ฉายจะทำงานต่อไป
ในสถานะ "เริ่มแล้ว" หรือ "กลับมาทำงานอีกครั้ง" แม้ว่าจอแสดงผลจะปิดอยู่ ซึ่งจะช่วยให้
ประสบการณ์เสียงของแอปทำงานต่อไปได้โดยไม่หยุดชะงัก
การเปลี่ยนแปลงสถานะกิจกรรมอื่นๆ ที่ทริกเกอร์โดยเหตุการณ์ต่างๆ ของระบบและผู้ใช้ จะทํางานตามปกติ
ทําความเข้าใจว่าการรับรู้ของผู้ใช้ส่งผลต่อกิจกรรมที่คาดการณ์ไว้อย่างไร
ผู้ใช้จะทราบกิจกรรมที่คาดการณ์ไว้ได้แม้ว่าจะมองไม่เห็นก็ตาม การรับรู้หมายถึงวิธีทั้งหมดที่ผู้ใช้สามารถรับรู้และโต้ตอบกับประสบการณ์การใช้งานของแอป ซึ่งรวมถึงสิ่งต่อไปนี้
- การฟังเสียง เสียงตอบรับ หรือสัญญาณเสียงอื่นๆ
- การดำเนินการของแอปที่ทริกเกอร์ LED ที่หันหน้าไปทางผู้ใช้ เช่น สัญญาณบอกสถานะความเป็นส่วนตัว หากแอปเข้าถึงกล้องหรือไมโครโฟน
ในสถานการณ์เหล่านี้ ผู้ใช้จะทราบว่าแว่นตา AI ทำงานอยู่และตอบสนอง แม้ว่าจะไม่ได้มองที่จอแสดงผลก็ตาม
- สถานะ
onStart()สำหรับกิจกรรมที่คาดการณ์ไว้หมายความว่ากิจกรรมนั้น ใช้งานอยู่ - สถานะ
onResume()หมายความว่ากิจกรรมโต้ตอบได้และรับ อินพุตจากทัชแพด หรือกำลังรับการส่งอินพุตหลัก
ตราบใดที่ผู้ใช้ทราบว่าคุณมีแอป กิจกรรมของคุณจะยังคงทำงานอยู่และแสดงในเบื้องหน้า หากระบบไม่ตรวจพบสัญญาณการรับรู้ในช่วงเวลาสั้นๆ ระบบจะนำกิจกรรมออกจากเบื้องหน้าและทริกเกอร์ onStop() ในที่สุด
ทำความเข้าใจกิจกรรมและบริบทที่คาดการณ์
ระบบจะถือว่าแว่นตา AI เป็นอุปกรณ์ที่เชื่อมต่อซึ่งขยายความสามารถของโทรศัพท์ของผู้ใช้ บริบทที่ฉายคือ Context ที่รับรู้ถึงอุปกรณ์ซึ่งช่วยให้แอปโต้ตอบกับฮาร์ดแวร์ในอุปกรณ์แว่นตาที่เชื่อมต่อได้ เช่น เซ็นเซอร์ กล้อง หรือไมโครโฟน แทนที่จะเป็นฮาร์ดแวร์ของโทรศัพท์ ขณะพัฒนา
ประสบการณ์การใช้งานสำหรับแว่นตา AI แอปของคุณต้องใช้บริบทที่คาดการณ์ไว้เพื่อเข้าถึงฮาร์ดแวร์ของแว่นตา
ระบบจะให้บริบทที่คาดการณ์ไว้แก่แอปโดยอัตโนมัติ ทั้งนี้ขึ้นอยู่กับบริบทของกิจกรรมการโทร ดังนี้
สำหรับกิจกรรมที่คาดการณ์: หากโค้ดของแอปทำงานจากภายในกิจกรรมที่คาดการณ์ บริบทกิจกรรมของโค้ดนั้นจะเป็นบริบทที่คาดการณ์อยู่แล้ว ในกรณีนี้ การโทรที่ดำเนินการภายในกิจกรรมนั้นจะเข้าถึงฮาร์ดแวร์ของแว่นตาได้อยู่แล้ว
สำหรับแอปหรือบริการโทรศัพท์: หากส่วนหนึ่งของแอปที่อยู่นอกกิจกรรมที่คาดการณ์ไว้ (เช่น กิจกรรมโทรศัพท์หรือบริการ) ต้องเข้าถึงฮาร์ดแวร์ของแว่นตา แอปจะต้องขอรับบริบทที่คาดการณ์ไว้อย่างชัดเจน หากต้องการทำเช่นนี้ ให้ใช้วิธี
createProjectedDeviceContext()
โปรดดูข้อมูลเพิ่มเติมที่หัวข้อใช้บริบทที่คาดการณ์ไว้เพื่อเข้าถึงฮาร์ดแวร์ของแว่นตา AI
ทำความเข้าใจ API ที่รับรู้ถึงอุปกรณ์
API มาตรฐานของ Android บางรายการจะเปลี่ยนฮาร์ดแวร์ของอุปกรณ์ที่เข้าถึงโดยขึ้นอยู่กับContextของกิจกรรมการเรียก เมื่อ API เหล่านี้ได้รับบริบทที่คาดการณ์ไว้
API จะเข้าถึงฮาร์ดแวร์ของแว่นตา AI แทนฮาร์ดแวร์ใน
อุปกรณ์โทรศัพท์โฮสต์
CameraManager: เข้าถึงกล้องในแว่นตาSensorManager: ดึงข้อมูลเซ็นเซอร์ (เช่น ข้อมูลเครื่องวัดการหมุนหรือ ตัวตรวจวัดความเร่ง) จากแว่นตาAudioManager: จัดการสตรีมเสียง ระดับเสียง และการกำหนดเส้นทางใน แว่นตาAudioRecord: บันทึกเสียงโดยใช้ไมโครโฟนของแว่นตา