คำจำกัดความของระดับความเข้ากันได้
โปรดตรวจสอบรายการตรวจสอบและความเข้ากันได้และการทดสอบต่อไปนี้เพื่อให้มั่นใจว่าแอปของคุณจะมอบประสบการณ์การใช้งานที่ยอดเยี่ยมบนอุปกรณ์ Android 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 มิติ / เชิงพื้นที่ Anchor และ UI เชิงพื้นที่อื่นๆ เช่น Orbiters
หากต้องการให้แอปได้รับการพิจารณาว่าเป็นแอป 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 ซึ่งรวมถึงข้อกำหนดของ Hand Raycast และการรองรับท่าทางสัมผัสสำหรับองค์ประกอบพื้นฐานของอินพุต แอปของคุณเล่นได้หรือใช้งานได้โดยไม่ต้องใช้คอนโทรลเลอร์ แต่สามารถเพิ่มประสิทธิภาพได้ด้วยการใช้คอนโทรลเลอร์หากคุณเลือกที่จะทำเช่นนั้น |
|
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% |
||
พื้นฐานของแอป Android (แตกต่างจาก XR) |
ภาพและประสบการณ์ของผู้ใช้ |
XR พื้นฐาน |
แอปของคุณใช้ฟีเจอร์หรือเนื้อหาเฉพาะ XR อย่างน้อย 1 รายการเพื่อปรับปรุงประสบการณ์ของผู้ใช้ ซึ่งอาจรวมถึงยานโคจร แผงเชิงพื้นที่อย่างน้อย 1 แผง สภาพแวดล้อม หรือออบเจ็กต์ 3 มิติ |
แผงเชิงพื้นที่ |
เมื่อทำงานหลายอย่างพร้อมกัน (เช่น ทำงาน 2 อย่างขึ้นไปพร้อมกัน) ด้วยแผง ให้สร้างแผงเชิงพื้นที่แยกกัน เช่น คุณอาจสร้างแผงเชิงพื้นที่แยกกันสำหรับหน้าต่างแชทและรายการ |
||
สภาพแวดล้อม |
เมื่อแสดงสภาพแวดล้อมเสมือนจริง ความสว่างอาจทำให้เสียสมาธิและเหนื่อยล้า แอปของคุณแสดงช่วงโทนสีที่ปลอดภัยโดยไม่มีการเพิ่มความสว่างที่ขัดแย้งกับ UI หรืออาจทำให้ผู้ใช้รู้สึกเหนื่อยล้า UI อ่านได้ในทุกทิศทาง โดยเฉพาะภายในแถบแนวนอนตรงกลางของสายตาผู้ใช้ (จะลิงก์หลักเกณฑ์โดยละเอียดในอนาคต) |
||
การเปลี่ยนระหว่างพื้นที่หน้าแรก (HSM) กับพื้นที่เต็ม (FSM) |
เมื่อนำผู้ใช้ไปยังพื้นที่เต็ม แอปของคุณจะมีจุดแรกเข้าเพื่อให้ผู้ใช้เปลี่ยนจากพื้นที่หน้าแรกไปยังพื้นที่เต็มได้อย่างรวดเร็ว ใช้ไอคอนหรือป้ายกำกับ และวางปุ่มในตำแหน่งที่เข้าถึงได้ง่าย |
||
แผงเชิงพื้นที่ |
วางเมนู ชิ้นงาน และตัวควบคุมในแผงหรือวงโคจรเฉพาะ โปรดอย่ารวมคอมโพเนนต์เหล่านี้ไว้ในแผงการแก้ไขหลัก |
||
การเลื่อนเมนู / รายการ |
แอปของคุณอัปเดตการโต้ตอบการเลื่อน (โดยเฉพาะผ่านภาพสไลด์หรือรายการแนวตั้ง) ให้มีฟิสิกส์หรือโมเมนตัม ตัวอย่างเช่น การเลื่อนจะรวมโมเมนตัมไว้ด้วย ซึ่งทำให้เนื้อหาในภาพสไลด์และรายการเคลื่อนที่ต่อไปชั่วครู่หลังจากที่ผู้ใช้โต้ตอบก่อนที่จะค่อยๆ หยุด (แทนที่จะหยุดทันทีเมื่อผู้ใช้หยุดป้อนข้อมูล) |
||
ฟังก์ชันการทำงานของวิดีโอ / สื่อ |
ภาพและประสบการณ์ของผู้ใช้ |
Spatial Player (Android เท่านั้น) |
แอปของคุณอนุญาตให้ผู้ใช้ดูเนื้อหาใน Full Space นำตัวควบคุมการเล่นออกจากภาพซ้อนทับที่ด้านบนของเนื้อหา แล้ววางไว้ในแผงหรือวงโคจรเฉพาะแทน สำหรับแผงที่มีการเล่นวิดีโอ ให้ตั้งค่าสัดส่วนภาพเพื่อนำแถบดำด้านบนและด้านล่างออก |
เสียงรอบทิศทาง |
พิจารณารองรับเสียงรอบทิศทาง รวมถึงเสียงที่ล็อกไว้ในแผงหรือเสียงเซอร์ราวด์ |
||
การดูวิดีโอพร้อมกัน |
หากแอปของคุณรองรับสตรีมวิดีโอหลายรายการพร้อมกัน อินเทอร์เฟซผู้ใช้จะแสดงข้อมูลต่อไปนี้อย่างชัดเจน
|
||
สภาพแวดล้อม |
เมื่อเล่นเนื้อหาใน Full Space แอปของคุณจะอนุญาตให้ผู้ใช้ลดความสว่างของฟีเจอร์ส่งผ่านหรือเลือกสภาพแวดล้อมเสมือน |
OpenXR™ และโลโก้ OpenXR เป็นเครื่องหมายการค้าของ The Khronos Group Inc. และจดทะเบียนเป็นเครื่องหมายการค้าในจีน สหภาพยุโรป ญี่ปุ่น และสหราชอาณาจักร