คำจำกัดความของระดับความเข้ากันได้
หากต้องการยืนยันว่าแอปมอบประสบการณ์การใช้งานที่ยอดเยี่ยมแก่ผู้ใช้บนชุดหูฟัง XR และ แว่นตา XR แบบมีสาย โปรดดูรายการตรวจสอบความเข้ากันได้และการทดสอบต่อไปนี้
รายการตรวจสอบและการทดสอบจะกำหนดชุดข้อกำหนดด้านคุณภาพที่ครอบคลุมสำหรับ แอป Android เกือบทุกประเภท
แอปบนอุปกรณ์เคลื่อนที่ที่ใช้ร่วมกับ Android XR ได้
แอปบนอุปกรณ์เคลื่อนที่ที่ใช้ร่วมกับ Android XR ได้คือแอปอุปกรณ์เคลื่อนที่ที่มีอยู่ซึ่ง ยังไม่ได้แก้ไขให้เหมาะกับหน้าจอขนาดใหญ่หรือรูปแบบอื่นๆ แอปประเภทนี้จะใช้งานร่วมกับ Android XR ได้โดยอัตโนมัติตราบใดที่ไม่จำเป็นต้องใช้ฟีเจอร์ที่ไม่รองรับ เช่น โทรศัพท์ ผู้ใช้ สามารถทำขั้นตอนงานที่สำคัญให้เสร็จสมบูรณ์ได้ แต่จะได้รับประสบการณ์ของผู้ใช้ที่ด้อยกว่า แอป Android XR ที่แตกต่าง
แอปประเภทนี้จะทำงานแบบเต็มหน้าจอบนแผงในสภาพแวดล้อมของผู้ใช้ แต่เลย์เอาต์อาจไม่เหมาะกับขนาดที่ใหญ่ขึ้น แอปที่ระบุขนาดกะทัดรัดในไฟล์ Manifest จะแสดงตามนั้น แอปไม่ทำงานในโหมดความเข้ากันได้และ จึงไม่ได้แสดงแบบกล่องจดหมาย แอปมีประสบการณ์การใช้งานที่ใช้งานได้จริงของรูปแบบการป้อนข้อมูลหลักที่ Android XR มอบให้ (การติดตามดวงตา + ท่าทางสัมผัสหรือมือที่ใช้การยิงรังสี) และการรองรับพื้นฐานสำหรับอุปกรณ์ป้อนข้อมูลภายนอก ซึ่งรวมถึงคีย์บอร์ด เมาส์ แทร็กแพด และเกมคอนโทรลเลอร์ ซึ่งอาจปรับขนาดได้หรือไม่ก็ได้
ระบบจะเลือกใช้แอปบนอุปกรณ์เคลื่อนที่ที่เข้ากันได้กับ Android XR โดยอัตโนมัติและพร้อมให้บริการใน Google Play Store แอปที่เข้ากันไม่ได้เนื่องจากข้อกำหนดของฟีเจอร์ที่ไม่รองรับจะติดตั้งผ่าน Play Store ไม่ได้
แอปหน้าจอขนาดใหญ่ที่รองรับ Android XR
แอปหน้าจอขนาดใหญ่ที่รองรับ Android XR คือแอประดับที่ 1 หรือระดับที่ 2 ที่มีหน้าจอขนาดใหญ่ซึ่งใช้การเพิ่มประสิทธิภาพเลย์เอาต์สำหรับหน้าจอทุกขนาด และการกำหนดค่าอุปกรณ์ทั้งหมด (เช่น หน้าจอขนาดใหญ่เพิ่มเติมจาก อุปกรณ์เคลื่อนที่) พร้อมด้วยการรองรับอุปกรณ์อินพุตภายนอกและ การทำงานแบบมัลติทาสก์ที่ดียิ่งขึ้น แอปหน้าจอขนาดใหญ่ที่รองรับ Android XR จะได้รับการเลือกใช้โดยอัตโนมัติ และพร้อมใช้งานใน Play Store
แอปหน้าจอขนาดใหญ่ที่รองรับ Android XR จะทำงานแบบเต็มหน้าจอบนแผงเชิงพื้นที่ในสภาพแวดล้อมของผู้ใช้ที่ 1024dp × 720dp ผู้ใช้จะโต้ตอบกับแอปได้อย่างเป็นธรรมชาติโดยใช้ดวงตาและมือ แต่จะมีความคล้ายคลึงกับแอปบนหน้าจอขนาดใหญ่มาก
แอปที่แตกต่างของ Android XR
แอปที่แตกต่างของ Android XR มีประสบการณ์ของผู้ใช้ที่ออกแบบมาโดยเฉพาะสำหรับ XR และใช้ฟีเจอร์ที่มีเฉพาะใน XR คุณสามารถใช้ประโยชน์จากความสามารถของ Android XR ได้อย่างเต็มที่และสร้างความแตกต่างให้กับประสบการณ์การใช้งานแอปโดยการเพิ่มฟีเจอร์ XR (เช่น แผงเชิงพื้นที่) เพิ่มเนื้อหา XR (เช่น วิดีโอ 3 มิติ) ลงในแอปพลิเคชันด้วยการพัฒนาโดยใช้ Android Jetpack XR SDK, Unity หรือ OpenXR
คุณสามารถใช้ Jetpack XR SDK เพื่อมอบความสามารถเฉพาะ XR ซึ่งรวมถึงแผงเชิงมิติพื้นที่ สภาพแวดล้อม โมเดล 3 มิติ เสียงเชิงมิติพื้นที่ วิดีโอ / รูปภาพ 3 มิติ / เชิงมิติพื้นที่ สมอ และ UI เชิงมิติพื้นที่อื่นๆ เช่น ออบิเตอร์
หากต้องการให้แอปได้รับการพิจารณาว่าเป็นแอป Android XR ที่แตกต่าง แอปต้องใช้ฟีเจอร์เฉพาะ XR หรือเนื้อหาเฉพาะ XR อย่างน้อย 1 รายการ สำหรับกรณีการใช้งานบางอย่าง อาจมีข้อกำหนดเพิ่มเติมเกี่ยวกับฟีเจอร์และเนื้อหา ดูรายละเอียดด้านล่าง
แอปทั้งหมดที่สร้างด้วย Unity หรือ OpenXR ถือว่ามีความแตกต่าง แอปที่สร้างด้วย Unity หรือ OpenXR ต้องเป็นไปตามเมตริกคุณภาพและข้อกำหนดขั้นต่ำจึงจะถือเป็นแอป Android XR ที่แตกต่าง ตัวอย่างเช่น แอปที่มีอัตราเฟรมต่ำ, ขัดข้อง หรือประสบการณ์ของผู้ใช้ในด้านลบอื่นๆ จะไม่มีสิทธิ์
รายการตรวจสอบความเข้ากันได้ของ Android XR
รายการตรวจสอบความเข้ากันได้เหล่านี้จะกำหนดเกณฑ์เพื่อช่วยคุณประเมินระดับการรองรับ XR ของแอป ระดับการสนับสนุนมีดังนี้
แอปบนอุปกรณ์เคลื่อนที่ที่ใช้ร่วมกับ Android XR ได้
แอปของคุณต้องเป็นไปตามข้อกำหนดด้านคุณภาพหลักของแอป
นอกจากนี้ แอปของคุณควรปฏิบัติตามหลักเกณฑ์การช่วยเหลือพิเศษที่เกี่ยวข้องทั้งหมดสำหรับ รูปแบบของอุปกรณ์อื่นๆ เช่น โทรศัพท์และแท็บเล็ต (เช่น คอนทราสต์ของสี)
แอปหน้าจอขนาดใหญ่ที่ใช้ได้กับ Android XR
แอปหน้าจอขนาดใหญ่ระดับ 1 หรือระดับ 2 จะถือเป็นแอปหน้าจอขนาดใหญ่ที่เข้ากันได้กับ Android XR หลักเกณฑ์ด้านคุณภาพของแอปสำหรับหน้าจอขนาดใหญ่จะช่วยให้ คุณมีแนวทางที่เป็นระบบในการรับประกันประสบการณ์การใช้งานที่ยอดเยี่ยมใน Android XR แต่ไม่จำเป็นต้องพิจารณาสถานะของอุปกรณ์ เช่น การหมุนหรือการพับ/กาง ในทำนองเดียวกัน Android XR ก็ไม่รองรับสไตลัส
แอปที่แตกต่างกันของ Android XR
เนื่องจากแอปที่แตกต่างกันของ Android XR มีความแตกต่างกันอย่างมาก ความสามารถบางอย่างที่ ระบุไว้จึงใช้ได้กับแอปบางประเภทเท่านั้น เลือก ความสามารถที่เหมาะสมกับแอปพลิเคชันของคุณ นอกจากนี้ แอป Android ต้องเป็นไปตามหลักเกณฑ์ของ Android สำหรับหน้าจอขนาดใหญ่และอุปกรณ์เคลื่อนที่ด้วย ดู ข้อกำหนดที่เหมาะสมกับการสมัครของคุณ (ข้อกำหนดบางอย่างอาจกลายเป็น การปรับปรุงนโยบายในอนาคตด้วย)
ประเภทแอป / กรณีการใช้งาน |
หมวดหมู่ |
พื้นที่ |
คำแนะนำ |
|---|---|---|---|
ข้อกำหนดพื้นฐานทั่วไป (Android และ OpenXR) |
ความเป็นส่วนตัวและความปลอดภัย |
การลงชื่อเข้าใช้บัญชี (UX สำหรับครั้งแรก) |
หากแอปใช้ระบบเข้าสู่ระบบ ให้แสดงข้อมูลเข้าสู่ระบบของผู้ใช้อย่างชัดเจน (เช่น ข้อมูลเข้าสู่ระบบชื่อผู้ใช้) หลังจากตรวจสอบสิทธิ์สำเร็จ ซึ่งจะช่วยสร้างความน่าเชื่อถือด้วยการยืนยันบัญชีที่ใช้งานอยู่ นอกจากนี้ ให้รวมเมนูหรือหน้าการตั้งค่าที่เข้าถึงได้ง่าย ซึ่งช่วยให้ผู้ใช้ดูและจัดการข้อมูลบัญชีได้ทุกเมื่อ |
ความปลอดภัยและความสะดวกสบาย |
การใช้แสง |
การลดความเสี่ยงของเอฟเฟกต์การกะพริบภายในแอปพลิเคชันเป็นสิ่งสำคัญเพื่อให้ผู้ใช้ทุกคนได้รับความปลอดภัยและมีคุณภาพชีวิตที่ดี หลีกเลี่ยงการจงใจใส่องค์ประกอบการออกแบบที่อาจทำให้เกิดการกะพริบ 1. หากจำเป็นต้องใช้เอฟเฟ็กต์การใช้แสง ให้ตรวจสอบว่าอัตราการกะพริบต่ำมาก (ต่ำกว่า 3 ครั้งต่อวินาที) และพื้นที่กะพริบมีขนาดเล็กและไม่เด่นชัด 2. โปรดพิจารณาให้ความสามารถในการปิดใช้ผ่านการตั้งค่าหรือค่ากำหนด 3. แสดงข้อความเตือนที่ชัดเจนก่อนที่จะเกิดการกะพริบ |
|
เลี่ยงอาการเมารถเมาเรือ |
ปฏิบัติตามหลักเกณฑ์ต่อไปนี้เพื่อหลีกเลี่ยงไม่ให้ผู้ใช้มีอาการเมารถเมาเรือ
|
||
อินพุต |
ขนาดเป้าหมายการโต้ตอบ |
เป้าหมายที่โต้ตอบได้มีขนาดขั้นต่ำและขนาดที่แนะนำโดยอิงตามระยะห่างของการโต้ตอบที่ต้องการ ดังนี้
เมื่อใช้ Jetpack XR SDK เราขอแนะนำให้ใช้ขนาดขั้นต่ำ 48 x 48dp โดยมีขนาดเป้าหมายการแตะที่แนะนำคือ 56 x 56dp หรือใหญ่กว่า |
|
ฟังก์ชันการทำงานทางเทคนิคของ XR |
การป้อนข้อมูลด้วยมือ |
แอปของคุณรองรับการป้อนข้อมูลด้วยมือตามธรรมชาติเป็นวิธีการโต้ตอบพื้นฐานสำหรับ Android XR ซึ่งรวมถึงข้อกำหนดของรังสีจากมือและรองรับท่าทางสัมผัสสำหรับองค์ประกอบพื้นฐานของอินพุต แอปของคุณเล่นได้หรือใช้งานได้โดยไม่ต้องใช้คอนโทรลเลอร์ แต่สามารถเพิ่มประสิทธิภาพได้ด้วยการใช้คอนโทรลเลอร์หากคุณเลือกที่จะทำเช่นนั้น |
|
Boundary (เดิมคือ Guardian) |
หากแอปคาดหวังให้ผู้ใช้เคลื่อนที่จากจุดเริ่มต้น (เมื่อเปิดแอป) ไปรอบๆ พื้นที่จริง แอปจะขอการส่งผ่านหรือประกาศ หากแอปใช้ |
||
ประสิทธิภาพ |
การแสดงภาพ |
แอปของคุณแสดงผลแต่ละเฟรมระหว่าง <11.1 มิลลิวินาที (90Hz) และ < 13.8 มิลลิวินาที (72 Hz) |
|
ความละเอียด |
แอปของคุณมีความละเอียดอย่างน้อย 1856 x 2160 ต่อตา |
||
เวลาเริ่มต้นของแอป |
ผู้ใช้ต้องการโต้ตอบกับแอปหรือเกมของคุณให้เร็วที่สุด คำจำกัดความของเวลาเริ่มต้นหรือเวลาในการโหลดที่ดีจะแตกต่างกันไปตามหมวดหมู่ แต่โดยหลักการทั่วไป เราขอแนะนำให้ลดเวลาตั้งแต่การเปิดตัวจนถึงการโต้ตอบครั้งแรกให้น้อยที่สุด ดูระยะเวลาเป้าหมายด้านล่าง
โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อเวลาเริ่มต้นของแอป |
||
ANR |
แอปของคุณไม่ขัดข้องหรือบล็อกเธรด UI ซึ่งทำให้เกิดข้อผิดพลาด ANR ("Android ไม่ตอบสนอง") แอปของคุณมี ANR น้อยกว่า 1 รายการใน 99.5% ของเซสชันรายวัน แอปของคุณใช้รายงานก่อนการเปิดตัวของ Google Play เพื่อระบุปัญหาด้านความเสถียรที่อาจเกิดขึ้น หลังจากที่ติดตั้งใช้งานแล้ว ให้ดูหน้า Android Vitals ใน Google Play Developer Console |
||
อัตราการขัดข้อง |
อย่าใช้ทรัพยากรของระบบมากเกินไปจนส่งผลกระทบต่อส่วนอื่นๆ ของระบบและแอปอื่นๆ โดยให้อัตราการขัดข้องอยู่ที่ประมาณ 1% |
||
Baseline ของแอป Android (XR ที่แตกต่าง) |
ภาพและประสบการณ์ของผู้ใช้ |
XR พื้นฐาน |
แอปของคุณใช้ฟีเจอร์หรือเนื้อหาเฉพาะ XR อย่างน้อย 1 รายการเพื่อปรับปรุงประสบการณ์ของผู้ใช้ ซึ่งอาจรวมถึงยานโคจร แผงเชิงพื้นที่อย่างน้อย 1 แผง สภาพแวดล้อม หรือออบเจ็กต์ 3 มิติ |
แผงเชิงพื้นที่ |
เมื่อทำงานหลายอย่างพร้อมกัน (เช่น ทำงาน 2 อย่างขึ้นไปพร้อมกัน) ด้วยแผง ให้สร้างแผงเชิงพื้นที่แยกกัน เช่น คุณอาจสร้างแผงเชิงพื้นที่แยกกันสำหรับหน้าต่างแชทและรายการ |
||
สภาพแวดล้อม |
เมื่อแสดงสภาพแวดล้อมเสมือนจริง ความสว่างอาจทำให้เสียสมาธิและเหนื่อยล้า แอปของคุณแสดงช่วงโทนสีที่ปลอดภัยโดยไม่มีความสว่างที่เพิ่มขึ้นซึ่งขัดแย้งกับ UI หรืออาจทำให้ผู้ใช้รู้สึกเหนื่อยล้า UI อ่านได้ในทุกทิศทาง โดยเฉพาะในแถบแนวนอนตรงกลางของสายตาผู้ใช้ (จะมีการลิงก์หลักเกณฑ์โดยละเอียดในอนาคต) |
||
การเปลี่ยนระหว่างพื้นที่หน้าแรก (HSM) กับพื้นที่เต็ม (FSM) |
เมื่อนำผู้ใช้ไปยัง Full Space แอปของคุณจะมีจุดแรกเข้าเพื่อให้ผู้ใช้เปลี่ยนจาก Home Space ไปยัง Full Space ได้อย่างรวดเร็ว ใช้ไอคอนหรือป้ายกำกับ และวางปุ่มในตำแหน่งที่เข้าถึงได้ง่าย |
||
แผงเชิงพื้นที่ |
วางเมนู ชิ้นงาน และตัวควบคุมในแผงหรือวงโคจรเฉพาะ โปรดอย่ารวมคอมโพเนนต์เหล่านี้ไว้ในแผงการแก้ไขหลัก |
||
การเลื่อนเมนู / รายการ |
แอปของคุณอัปเดตการโต้ตอบการเลื่อน (โดยเฉพาะผ่านภาพสไลด์หรือรายการแนวตั้ง) ให้มีฟิสิกส์หรือโมเมนตัม ตัวอย่างเช่น การเลื่อนจะรวมโมเมนตัมไว้ด้วย ซึ่งทำให้เนื้อหาในภาพสไลด์และรายการเคลื่อนที่ต่อไปชั่วครู่หลังจากที่ผู้ใช้โต้ตอบ ก่อนที่จะค่อยๆ หยุด (แทนที่จะหยุดทันทีเมื่อผู้ใช้หยุดป้อนข้อมูล) |
||
ฟังก์ชันการทำงานของวิดีโอ / สื่อ |
ภาพและประสบการณ์ของผู้ใช้ |
Spatial Player (Android เท่านั้น) |
แอปของคุณอนุญาตให้ผู้ใช้ดูเนื้อหาใน Full Space นำตัวควบคุมการเล่นออกจากภาพซ้อนทับที่ด้านบนของเนื้อหา แล้ววางไว้ในแผงหรือวงโคจรเฉพาะแทน สำหรับแผงที่มีการเล่นวิดีโอ ให้ตั้งค่าสัดส่วนภาพเพื่อนำแถบดำด้านบนและด้านล่างออก |
เสียงรอบทิศทาง |
พิจารณารองรับเสียงรอบทิศทาง รวมถึงเสียงที่ล็อกไว้ในแผงหรือเสียงเซอร์ราวด์ |
||
การดูวิดีโอพร้อมกัน |
หากแอปของคุณรองรับสตรีมวิดีโอหลายรายการพร้อมกัน อินเทอร์เฟซผู้ใช้จะแสดงข้อมูลต่อไปนี้อย่างชัดเจน
|
||
สภาพแวดล้อม |
เมื่อเล่นเนื้อหาใน Full Space แอปของคุณจะอนุญาตให้ผู้ใช้ลดความสว่างของฟีเจอร์ส่งผ่านหรือเลือกสภาพแวดล้อมเสมือน |
OpenXR™ และโลโก้ OpenXR เป็นเครื่องหมายการค้าของ The Khronos Group Inc. และจดทะเบียนเป็นเครื่องหมายการค้าในจีน สหภาพยุโรป ญี่ปุ่น และสหราชอาณาจักร