ระดับ 2 - ปรับอัตโนมัติให้เหมาะสม

แอปที่เพิ่มประสิทธิภาพรองรับหน้าจอทุกประเภทและสถานะอุปกรณ์ทั้งหมดอย่างเต็มรูปแบบ รวมถึงการเปลี่ยนสถานะ

ภาพแสดงระดับคุณภาพ 3 ระดับเป็นเลเยอร์ที่ซ้อนกันในแนวตั้ง โดยไฮไลต์ระดับกลาง

หลักเกณฑ์

สร้างแอปให้ปรับตามขนาดจอแสดงผลและสถานะอุปกรณ์ทั้งหมด

อินเทอร์เฟซผู้ใช้

รหัสหลักเกณฑ์ รหัสการทดสอบ คำอธิบาย
Responsive_adaptive_layouts T-Layout_Flow

แอปมีเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์และปรับเปลี่ยนตามพื้นที่โฆษณาซึ่งออกแบบมาสำหรับหน้าจอทุกขนาด เลย์เอาต์ทั้งหมดปรับเปลี่ยนตามพื้นที่โฆษณา (ดูหัวข้อย้ายข้อมูล UI ไปยังเลย์เอาต์ที่ปรับเปลี่ยนตามพื้นที่โฆษณา) การใช้เลย์เอาต์แบบปรับขนาดได้จะกำหนดโดยคลาสขนาดหน้าต่าง

UI ของแอปอาจมีสิ่งต่อไปนี้

  • แถบนำทางที่ทันสมัยซึ่งขยายเป็นแผงการนำทางแบบเต็มเมื่อหน้าต่างมีขนาดใหญ่ขึ้น
  • เลย์เอาต์ตารางกริดที่ปรับขนาดจำนวนคอลัมน์เพื่อรองรับการเปลี่ยนแปลงขนาดหน้าต่าง
  • คอลัมน์ข้อความบนหน้าจอขนาดใหญ่
  • แผงขอบต่อท้ายที่เปิดอยู่โดยค่าเริ่มต้นในขนาดหน้าจอเดสก์ท็อป และปิดอยู่บนหน้าจอขนาดเล็ก

สร้างเลย์เอาต์แบบหลายแผง (ตามความเหมาะสม) เพื่อใช้ประโยชน์จากพื้นที่หน้าจอขนาดใหญ่ ดูเลย์เอาต์มาตรฐาน

สำหรับแอป Jetpack Compose ให้ใช้เลย์เอาต์แบบปรับอัตโนมัติ (เช่น ListDetailPaneScaffold) เพื่อสร้าง UI แบบหลายแผง สำหรับแอปที่อิงตามกิจกรรมแบบเดิม การฝังกิจกรรมจะเปิดใช้เลย์เอาต์แบบหลายแผงโดยแสดงกิจกรรมเคียงข้างกัน

UI_Secondary_Elements T-Layout_Flow

โมดัล เมนูตามบริบท และองค์ประกอบรองอื่นๆ ได้รับการจัดรูปแบบอย่างเหมาะสมในหน้าจอทุกประเภทและสถานะอุปกรณ์ทั้งหมด เช่น

Touch_Targets T-Touch_Targets เป้าหมายการสัมผัสมีขนาดอย่างน้อย 48dp ดูหลักเกณฑ์ขนาดเป้าหมายของ Material Design
Drawable_Focus T-Drawable_Focus ระบบจะสร้างสถานะที่มีการโฟกัสสำหรับ Drawable ที่กำหนดเองซึ่งเป็นแบบอินเทอร์แอกทีฟ Drawable ที่กำหนดเองคือองค์ประกอบ UI ภาพที่เฟรมเวิร์ก Android ไม่มีให้ หากผู้ใช้โต้ตอบกับ Drawable ที่กำหนดเองได้ Drawable นั้นต้องโฟกัสได้เมื่ออุปกรณ์ไม่ได้อยู่ในโหมดการแตะ และต้องมีการแสดงสถานะที่มีการโฟกัสอย่างชัดเจน

แป้นพิมพ์ เมาส์ และแทร็กแพด

รหัสหลักเกณฑ์ รหัสการทดสอบ คำอธิบาย
Keyboard_Navigation T-Keyboard_Navigation ขั้นตอนการทำงานหลักในแอปจะรองรับการไปยังส่วนต่างๆ ด้วยแป้นพิมพ์ ซึ่งรวมถึงการไปยังส่วนต่างๆ ด้วยปุ่ม Tab และปุ่มลูกศร ดูสร้างแอปที่รองรับการช่วยเหลือพิเศษมากขึ้น
Keyboard_Shortcuts T-Keyboard_Shortcuts แอปต้องรองรับแป้นพิมพ์ลัดสำหรับการดำเนินการที่ใช้บ่อย เช่น เลือก ตัด คัดลอก วาง เลิกทำ และทำซ้ำ โปรดดูหัวข้อแป้นพิมพ์ เมาส์ และแทร็กแพด
Keyboard_Media_Playback T-Keyboard_Media_Playback คุณใช้แป้นพิมพ์เพื่อควบคุมการเล่นสื่อได้ เช่น Spacebar จะเล่นและหยุดสื่อชั่วคราว
Keyboard_Send T-Keyboard_Send แป้น Enter ของแป้นพิมพ์จะทำหน้าที่ส่งในแอปสื่อสาร
Keyboard_Exit T-Keyboard_Exit แป้น Esc บนแป้นพิมพ์จะทำหน้าที่ออกซึ่งจะสิ้นสุดหรือยกเลิกการดำเนินการ เช่น
  • ปิดโมดัล กล่องโต้ตอบ ป๊อปอัป และเมนู
  • ล้างข้อความค้นหาหรือนำโฟกัสการค้นหาออก
  • ยกเลิกโฟกัสของแป้นพิมพ์
  • ออกจากวิดีโอแบบเต็มหน้าจอ, PiP, โหมดเต็มหน้าจอ หรือภาพสไลด์
  • ปิดการควบคุมบนหน้าจอ เช่น แถบความคืบหน้าหรือเมนู
  • ยกเลิกตัวจับเวลาของรายการถัดไป / การเล่นอัตโนมัติ
  • ยกเลิกการเลือกรายการที่เลือกทั้งหมด
  • ยกเลิกการเปลี่ยนชื่อ/แก้ไขโดยไม่บันทึก
  • ออกจากเครื่องมือครอบตัด/เปลี่ยนรูปแบบและทิ้งการเปลี่ยนแปลง
Context_Menus T-Context_Menus เมนูตามบริบทสามารถเข้าถึงได้โดยการคลิกขวาด้วยเมาส์และแทร็กแพดตามปกติ (ปุ่มเมาส์รองหรือการแตะรอง)
Content_Zoom T-Content_Zoom คุณสามารถซูมเนื้อหาแอปได้โดยใช้ปุ่มลูกกลิ้ง (ร่วมกับการกดปุ่ม Control หรือ Ctrl) และท่าทางสัมผัสแบบบีบนิ้วบนแทร็กแพด
Hover_States T-Hover_States องค์ประกอบ UI ที่ดำเนินการได้มีสถานะเมื่อวางเมาส์เหนือ (ตามความเหมาะสม) เพื่อระบุให้ผู้ใช้เมาส์และแทร็กแพดทราบว่าองค์ประกอบดังกล่าวเป็นแบบอินเทอร์แอกทีฟ

การทดสอบ

ทำการทดสอบต่อไปนี้เพื่อให้มั่นใจว่าแอปได้รับการเพิ่มประสิทธิภาพและตอบสนองต่อการกำหนดค่าการแสดงผลทั้งหมด

อินเทอร์เฟซผู้ใช้

รหัสทดสอบ รหัสหลักเกณฑ์ คำอธิบาย
T-Layout_Flow Responsive_adaptive_layouts,
UI_Secondary_Elements

เรียกใช้แอปในอุปกรณ์ที่มีขนาดหน้าจอหลากหลาย รวมถึงโทรศัพท์ โทรศัพท์แบบพับได้ แท็บเล็ตขนาดเล็กและขนาดใหญ่ และอุปกรณ์เดสก์ท็อป เรียกใช้แอปในโหมดหลายหน้าต่างบนอุปกรณ์

ตรวจสอบว่าเลย์เอาต์ของแอปตอบสนองและปรับให้เข้ากับขนาดหน้าจอและหน้าต่างต่างๆ ตรวจสอบว่าแอปขยายและหดแถบนำทาง ปรับขนาดจำนวนคอลัมน์ในเลย์เอาต์ตารางกริด จัดข้อความให้ไหลลงในคอลัมน์ และอื่นๆ หรือไม่ สังเกตว่าองค์ประกอบ UI ได้รับการจัดรูปแบบให้สวยงามและใช้งานได้ดีหรือไม่

สำหรับแอปเดิมที่ใช้การฝังกิจกรรม ให้ทดสอบว่ากิจกรรมแสดงเคียงข้างกันบนหน้าจอขนาดใหญ่และซ้อนกันบนหน้าจอขนาดเล็กหรือไม่

T-Touch_Targets Touch_Targets ตรวจสอบว่าเป้าหมายการสัมผัสมีขนาดและตำแหน่งที่สอดคล้องกันและเข้าถึงได้ รวมถึงไม่ถูกซ่อนหรือบดบังโดยองค์ประกอบ UI อื่นๆ สำหรับการกำหนดค่าและขนาดการแสดงผลทั้งหมด ดูข้อมูลเกี่ยวกับการช่วยเหลือพิเศษได้ที่เครื่องตรวจการเข้าถึง
T-Drawable_Focus Drawable_Focus ในหน้าจอแอปแต่ละหน้าจอที่มีภาพวาดที่กำหนดเองแบบอินเทอร์แอกทีฟ ให้ตรวจสอบว่าภาพวาดนั้นสามารถโฟกัสได้โดยใช้แป้นพิมพ์ภายนอก, D-pad หรืออุปกรณ์อื่นๆ ที่ช่วยให้โฟกัสองค์ประกอบ UI ได้ ตรวจสอบว่ามีสัญญาณภาพที่บ่งบอกสถานะที่มีการโฟกัสอย่างชัดเจน ดูข้อมูลที่เกี่ยวข้องได้ที่เอกสารประกอบเกี่ยวกับโฟกัสของ Compose

แป้นพิมพ์ เมาส์ และแทร็กแพด

รหัสทดสอบ รหัสหลักเกณฑ์ คำอธิบาย
T-Keyboard_Navigation Keyboard_Navigation ไปยังส่วนต่างๆ ของคอมโพเนนต์ที่โฟกัสได้ของแอปโดยใช้แป้น Tab และแป้นลูกศรของแป้นพิมพ์ภายนอก
T-Keyboard_Shortcuts Keyboard_Shortcuts ใช้แป้นพิมพ์ลัดบนแป้นพิมพ์ภายนอกเพื่อดำเนินการเลือก ตัด คัดลอก วาง เลิกทำ และทำซ้ำ
T-Keyboard_Media_Playback Keyboard_Media_Playback ใช้แป้นพิมพ์ภายนอกเพื่อเริ่ม หยุด หยุดชั่วคราว กรอกลับ และกรอการเล่นสื่อไปข้างหน้า
T-Keyboard_Send Keyboard_Send ใช้แป้น Enter ของแป้นพิมพ์ภายนอกเพื่อส่งข้อมูล
T-Keyboard_Exit Keyboard_Exit

ใช้แป้น Esc ของแป้นพิมพ์ภายนอกเพื่อทำฟังก์ชันออก ตรวจสอบว่าคีย์ทำสิ่งต่อไปนี้ (หากมี)

  • ปิดโมดัล กล่องโต้ตอบ ป๊อปอัป และเมนู
  • ล้างข้อความค้นหาหรือนำโฟกัสการค้นหาออก
  • ยกเลิกโฟกัสของแป้นพิมพ์
  • ออกจากวิดีโอแบบเต็มหน้าจอ, PiP, โหมดเต็มหน้าจอ หรือภาพสไลด์
  • ปิดการควบคุมบนหน้าจอ
  • ยกเลิกตัวจับเวลาของรายการถัดไป / การเล่นอัตโนมัติ
  • ยกเลิกการเลือกรายการที่เลือกทั้งหมด
  • ยกเลิกการเปลี่ยนชื่อ/แก้ไขโดยไม่บันทึก
  • ออกจากเครื่องมือครอบตัด/เปลี่ยนรูปแบบและทิ้งการเปลี่ยนแปลง
T-Context_Menus Context_Menus ใช้ปุ่มรองของเมาส์หรือความสามารถในการแตะรองของแทร็กแพดเพื่อเข้าถึงเมนูตามบริบทขององค์ประกอบแบบอินเทอร์แอกทีฟ
T-Content_Zoom Content_Zoom ใช้ปุ่มลูกกลิ้งเมาส์ (ร่วมกับแป้น Control หรือ Ctrl) และท่าทางสัมผัสแบบบีบเพื่อซูมเนื้อหาเข้าและออก
T-Hover_States Hover_States วางเคอร์เซอร์เมาส์หรือแทร็กแพดเหนือองค์ประกอบ UI ที่ดำเนินการได้เพื่อเปิดใช้งานสถานะการวางเมาส์เหนือองค์ประกอบ