Android 13 ต่อยอดมาจากการเพิ่มประสิทธิภาพแท็บเล็ตที่เปิดตัวใน Android 12 และการอัปเดตฟีเจอร์ใหม่ของ 12L ซึ่งรวมถึงการเพิ่มประสิทธิภาพ UI ของระบบ การทำงานหลายอย่างพร้อมกันที่ดีขึ้น และโหมดความเข้ากันได้ที่ปรับปรุงใหม่ ในการทดสอบ ให้ตรวจสอบว่าแอปของคุณดูดีที่สุดบนแท็บเล็ตและอุปกรณ์อื่นๆ ที่มีหน้าจอขนาดใหญ่
เริ่มต้นใช้งานโดยตั้งค่าอุปกรณ์เสมือนสำหรับโปรแกรมจำลอง Android ใน Android Studio หรือรับ Android 13 บนอุปกรณ์หน้าจอขนาดใหญ่จากพาร์ทเนอร์ผู้ผลิตอุปกรณ์
หากคุณเพิ่งเริ่มต้นการพัฒนาหน้าจอขนาดใหญ่ โปรดดูคู่มือหน้าจอขนาดใหญ่และอุปกรณ์แบบพับได้เพื่ออ่านคำแนะนำและเทคนิคล่าสุดในการสร้างประสบการณ์ที่ยอดเยี่ยมบนอุปกรณ์เหล่านี้
ต่อไปนี้เป็นภาพรวมของฟีเจอร์ใหม่และแนวคิดเกี่ยวกับสิ่งที่ควรทดสอบในแอป
ระบบปฏิบัติการที่เพิ่มประสิทธิภาพสำหรับหน้าจอขนาดใหญ่
ตอนนี้ UI ของระบบดูสวยงามขึ้นและใช้งานได้ง่ายขึ้นบนหน้าจอขนาดใหญ่ ไม่ว่าจะเป็นการแจ้งเตือน การตั้งค่าด่วน หน้าจอล็อก ภาพรวม หน้าจอหลัก และอื่นๆ
ในหน้าจอขนาดใหญ่ แผงการแจ้งเตือนจะใช้ประโยชน์จากพื้นที่ว่างโดยแสดงการตั้งค่าด่วนและการแจ้งเตือนในเลย์เอาต์ 2 คอลัมน์แบบใหม่ นอกจากนี้ หน้าจอล็อกยังใช้เลย์เอาต์ 2 คอลัมน์ที่ใหญ่ขึ้นเพื่อไฮไลต์การแจ้งเตือนและนาฬิกา รวมถึงมีการเพิ่มประสิทธิภาพแอประบบ เช่น การตั้งค่า ด้วย
ส่วนการเปลี่ยนแปลงอื่นๆ จะมุ่งเน้นที่การทําให้โต้ตอบที่สําคัญบนหน้าจอขนาดใหญ่ง่ายขึ้น ตัวอย่างเช่น ตอนนี้การควบคุมรูปแบบและ PIN ของหน้าจอล็อกในแท็บเล็ตจะแสดงที่ด้านข้างของหน้าจอเพื่อให้เข้าถึงได้ง่ายขึ้น และผู้ใช้เพียงแตะอีกด้านหนึ่งของหน้าจอเพื่อย้ายการควบคุม PIN/รูปแบบไปไว้ที่ด้านนั้น
สำหรับอุปกรณ์แบบพับได้ ระบบจะเพิ่มประสิทธิภาพตารางกริดของหน้าจอหลักและปรับแต่งการเปลี่ยนจากแบบพับเป็นแบบกางออก เพื่อให้ผู้ใช้สลับจากหน้าจอด้านนอกแบบหน้าจอเดียวไปเป็นหน้าจอที่กางออกขนาดใหญ่ได้อย่างราบรื่น ซึ่งจะช่วยเพิ่มความต่อเนื่องไปพร้อมกับการคงตัวเลือกของผู้ใช้ไว้
สำหรับนักพัฒนาซอฟต์แวร์: การเปลี่ยนแปลงในการฉายภาพสื่อ
ตั้งแต่ 12L เป็นต้นไป เมื่อระบบแสดงผลเสมือนจริงบนพื้นผิว ระบบจะปรับขนาดการแสดงผลเสมือนจริงให้พอดีกับพื้นผิวโดยใช้กระบวนการที่คล้ายกับตัวเลือก centerInside
ของ ImageView
วิธีการปรับขนาดใหม่จะช่วยปรับปรุงการแคสต์หน้าจอไปยังทีวีและจอแสดงผลขนาดใหญ่อื่นๆ โดยปรับขนาดรูปภาพบนพื้นผิวให้ใหญ่ที่สุด ขณะเดียวกันก็คงสัดส่วนภาพที่เหมาะสมไว้
ดูรายละเอียดเพิ่มเติมได้ที่การฉายสื่อบนหน้าจอขนาดใหญ่
การทํางานหลายอย่างพร้อมกันที่มีประสิทธิภาพและใช้งานง่าย
ผู้ใช้มักทำงานหลายอย่างพร้อมกันเมื่อใช้แท็บเล็ต, Chromebook และอุปกรณ์แบบพับได้ที่มีหน้าจอขนาดใหญ่ขึ้น ฟีเจอร์ใหม่ๆ สำหรับการทำงานช่วยให้การทำงานหลายอย่างพร้อมกันมีประสิทธิภาพและใช้งานง่ายยิ่งขึ้น
แถบงานใหม่ช่วยให้เปิดและสลับแอปได้ทันที ท่าทางสัมผัส ช่วยให้ใช้แถบงานได้เร็วขึ้น ด้วยการลากและวางเพื่อเข้าสู่โหมดแยกหน้าจอ และปัดขึ้นเพื่อไปที่หน้าแรก ในการไปยังส่วนต่างๆ ด้วยท่าทางสัมผัส ท่าทางสัมผัสสลับด่วนจะช่วยให้ผู้ใช้พลิกดูแอปล่าสุดได้ ผู้ใช้สามารถแสดงหรือซ่อนแถบงานได้ทุกเมื่อโดยกดค้างไว้
การเรียกใช้แอปในโหมดแยกหน้าจอเป็นวิธียอดนิยมในการทํางานหลายอย่างพร้อมกัน และโหมดแยกหน้าจอก็ค้นพบและใช้งานได้ง่ายกว่าที่เคย ตอนนี้ผู้ใช้สามารถลากและวางแอปโปรดลงในโหมดแยกหน้าจอได้โดยตรงจากแถบงาน หรือจะใช้การดำเนินการ "แยก" ใหม่ในภาพรวมเพื่อเริ่มโหมดแยกหน้าจอด้วยการแตะก็ได้
เพื่อให้การแยกหน้าจอมอบประสบการณ์การใช้งานที่สอดคล้องกันมากขึ้นสำหรับผู้ใช้ Android 12 ขึ้นไปอนุญาตให้แอปทั้งหมดเข้าสู่โหมดหลายหน้าต่าง ไม่ว่าจะปรับขนาดได้หรือไม่ก็ตาม
สำหรับนักพัฒนาซอฟต์แวร์: ทดสอบแอปในโหมดแยกหน้าจอ
เนื่องจากโหมดแยกหน้าจอเข้าถึงได้ง่ายขึ้น และการเปลี่ยนแปลงใน Android 12 ที่อนุญาตให้ผู้ใช้เปิดแอปทั้งหมดในโหมดแยกหน้าจอ เราขอแนะนําอย่างยิ่งให้คุณทดสอบแอปในโหมดแยกหน้าจอ
สำหรับนักพัฒนาซอฟต์แวร์: จัดการการเปลี่ยนแปลงขนาดต่างๆ แบบไดนามิก
ระบบจะรายงานแถบงานใหม่ไปยังแอปพลิเคชันเป็น Inset แม้ว่าจะยังไม่ได้เปิดตัว Inset API ใหม่ก็ตาม
เมื่อใช้ร่วมกับการนำทางด้วยท่าทาง แถบงานจะซ่อนและแสดงแบบไดนามิกได้ หากแอปใช้ข้อมูลส่วนตัดเพื่อวาด UI อยู่แล้ว แอปจะต้องคำนึงถึงกรณีที่ขนาดของส่วนตัดอาจเปลี่ยนแปลงขณะที่แอปอยู่ในสถานะ "กลับมาทำงานอีกครั้ง" ในกรณีเหล่านี้ แอปของคุณต้องเรียกใช้ setOnApplyWindowInsetsListener
และจัดการการเปลี่ยนแปลงในขนาดของส่วนแทรกตามที่อธิบายไว้ในส่วนแถบระบบ
ประสบการณ์ความเข้ากันได้ที่ดียิ่งขึ้น
แอปจำนวนมากได้รับการเพิ่มประสิทธิภาพสำหรับอุปกรณ์ที่มีหน้าจอขนาดใหญ่อยู่แล้ว และมอบประสบการณ์ที่ยอดเยี่ยมผ่านเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์ การรองรับโหมดหลายหน้าต่าง ความต่อเนื่องในขนาดหน้าจอและการเปลี่ยนท่าทางของอุปกรณ์ และอื่นๆ
สําหรับแอปที่ยังไม่ได้เพิ่มประสิทธิภาพ ระบบจะปรับปรุงรูปลักษณ์และความเสถียรในโหมดความเข้ากันได้เพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ดีขึ้นและทำให้แอปเหล่านั้นดูดีขึ้นโดยค่าเริ่มต้น
ผู้ผลิตอุปกรณ์สามารถปรับแต่ง UI จำนวนมากได้ผ่านการกำหนดค่าแบบวางซ้อน เพื่อปรับปรุง UI สำหรับแถบดำด้านบน-ล่างของภาพ ตัวอย่างเช่น ตอนนี้ผู้ผลิตอุปกรณ์สามารถกำหนดค่าสัดส่วนการแสดงผลของแอป ใช้มุมมนกับหน้าต่างแอป และตั้งค่าความโปร่งใสของแถบสถานะได้แล้ว
สําหรับนักพัฒนาแอป: ตรวจสอบแอปในโหมดความเข้ากันได้
หากแอปยังไม่ได้รับการเพิ่มประสิทธิภาพเพื่อปรับให้เข้ากับขนาดหน้าจอและการเปลี่ยนแปลงลักษณะการทำงานของอุปกรณ์ แอปของคุณอาจเปิดตัวในโหมดความเข้ากันได้ เราขอแนะนําให้ทดสอบแอปด้วยโหมดความเข้ากันได้เพื่อให้แน่ใจว่าแอปมีลักษณะและทํางานอย่างถูกต้อง
โปรดดูรายละเอียดเพิ่มเติมที่การใส่แถบดำด้านบนและด้านล่างแบบปรับปรุง
การปฏิเสธฝ่ามือที่ดีขึ้น
หน้าจอขนาดใหญ่เป็นพื้นผิวที่เหมาะกับการป้อนข้อมูลด้วยสไตลัส แต่เมื่อผู้ใช้วาด เขียน หรือโต้ตอบกับแอปโดยใช้สไตลัส บางครั้งผู้ใช้อาจแตะหน้าจอด้วยฝ่ามือ ระบบจะรายงานเหตุการณ์การสัมผัสไปยังแอปของคุณได้ก่อนที่ระบบจะจดจำและละเว้นเหตุการณ์ดังกล่าวว่าเป็นเหตุการณ์ที่เกิดจากการสัมผัสด้วยฝ่ามือโดยไม่ตั้งใจ
ก่อน Android 13 (API ระดับ 33) ระบบจะยกเลิกเหตุการณ์การสัมผัสด้วยฝ่ามือโดยส่ง MotionEvent
พร้อม ACTION_CANCEL
Android 13 ช่วยปรับปรุงการระบุการปฏิเสธฝ่ามือด้วยการเพิ่ม FLAG_CANCELED
ลงในออบเจ็กต์เหตุการณ์การเคลื่อนไหว
หากการสัมผัสด้วยฝ่ามือเป็นเคอร์เซอร์เหตุการณ์การสัมผัสเพียงรายการเดียว ระบบจะยกเลิกเหตุการณ์โดยการตั้งค่า ACTION_CANCEL
และ FLAG_CANCELED
ในออบเจ็กต์เหตุการณ์การเคลื่อนไหว หากเคอร์เซอร์อื่นๆ ปิดอยู่ Android 13 จะตั้งค่าเป็น ACTION_POINTER_UP
และ FLAG_CANCELED
สําหรับนักพัฒนาแอป: อัปเดต Listener และเครื่องจัดการเหตุการณ์การโต้ตอบแบบสัมผัส
ใน Android 12 (API ระดับ 32) และต่ำกว่า การตรวจจับการปฏิเสธฝ่ามือจะทำได้เฉพาะเมื่อเกิดเหตุการณ์การแตะแบบใช้จุดเดียว หากการสัมผัสด้วยฝ่ามือเป็นเคอร์เซอร์เดียว ระบบจะยกเลิกเหตุการณ์โดยการตั้งค่า ACTION_CANCEL
ในออบเจ็กต์เหตุการณ์การเคลื่อนไหว
หากเคอร์เซอร์อื่นๆ อยู่ต่ำ ระบบจะตั้งค่าเป็น ACTION_POINTER_UP
ซึ่งไม่เพียงพอที่จะตรวจจับการปฏิเสธฝ่ามือ ไม่ว่าในกรณีใด FLAG_CANCELED
จะไม่มีการตั้งค่า
สำหรับ Android 13 ให้อัปเดต Listener และตัวแฮนเดิลเหตุการณ์การสัมผัสเพื่อตรวจหา FLAG_CANCELED
เมื่อได้รับ ACTION_POINTER_UP
เพื่อให้ระบบตรวจจับและจัดการการปฏิเสธฝ่ามือและเหตุการณ์อื่นๆ ที่ยกเลิก
ข้อมูลอัปเดตและแหล่งข้อมูลเพิ่มเติมสำหรับหน้าจอขนาดใหญ่
การเปลี่ยนแปลงใน Google Play บนหน้าจอขนาดใหญ่
Google Play ได้ทำการเปลี่ยนแปลงเพื่อไฮไลต์แอปที่ได้รับการเพิ่มประสิทธิภาพสำหรับอุปกรณ์ของผู้ใช้ เพื่อให้ผู้ใช้ค้นหาประสบการณ์การใช้งานแอปที่ดีที่สุดในแท็บเล็ต อุปกรณ์แบบพับได้ และ ChromeOS ได้ง่ายขึ้น
มีการเพิ่มการตรวจสอบใหม่ๆ เพื่อประเมินคุณภาพของแต่ละแอปตามหลักเกณฑ์ด้านคุณภาพสำหรับแอปที่มีหน้าจอขนาดใหญ่เพื่อให้ Google Play แสดงแอปที่ดีที่สุดบนอุปกรณ์เหล่านั้น เมื่อแอปไม่ได้เพิ่มประสิทธิภาพสำหรับหน้าจอขนาดใหญ่ ผู้ใช้หน้าจอขนาดใหญ่จะเห็นการแจ้งเตือนในหน้าข้อมูลผลิตภัณฑ์ใน Play Store ของแอป ซึ่งจะช่วยให้ผู้ใช้ค้นหาแอปที่ทำงานได้ดีที่สุดบนอุปกรณ์ของตน
นอกจากนี้ Play จะเปิดตัวการจัดประเภทแอปสำหรับหน้าจอขนาดใหญ่โดยเฉพาะด้วย ตามที่ประกาศไปครั้งแรกเมื่อเดือนสิงหาคม 2021 เพื่อให้ผู้ใช้สามารถให้คะแนนประสิทธิภาพของแอปในอุปกรณ์หน้าจอขนาดใหญ่
การฝังกิจกรรมด้วย Jetpack WindowManager
การฝังกิจกรรมช่วยให้คุณใช้ประโยชน์จากพื้นที่แสดงผลเพิ่มเติมของหน้าจอขนาดใหญ่ได้ด้วยการแสดงกิจกรรมหลายรายการพร้อมกัน เช่น สำหรับรูปแบบรายการแบบละเอียด และคุณไม่จำเป็นต้องปรับโครงสร้างแอปมากนักหรือแทบไม่ต้องปรับโครงสร้างเลย คุณกำหนดวิธีที่แอปจะแสดงกิจกรรมได้ ไม่ว่าจะเป็นแสดงควบคู่กันหรือซ้อนกัน โดยการสร้างไฟล์กำหนดค่า XML หรือเรียกใช้ Jetpack WindowManager API ระบบจะจัดการส่วนที่เหลือ โดยกำหนดงานนำเสนอตามการกำหนดค่าที่คุณสร้างขึ้น หากแอปใช้กิจกรรมหลายรายการ เราขอแนะนำให้ลองฝังกิจกรรม ดูข้อมูลเพิ่มเติมได้ที่การฝังกิจกรรม
คำขอการวางแนวของอุปกรณ์
อุปกรณ์แบบพับได้และแท็บเล็ตมักจะใช้ทั้งในแนวตั้งและแนวนอน ซึ่งต่างจากโทรศัพท์มาตรฐาน แท็บเล็ตมักจะวางในแนวนอน ส่วนอุปกรณ์แบบพับได้จะปรับการวางแนวได้ตามลักษณะการพับ
แอปบางแอปจะขอการวางแนวแบบคงที่ในแนวตั้งหรือแนวนอน และคาดหวังว่าจะคงอยู่ในการวางแนวที่ต้องการ ไม่ว่าอุปกรณ์จะวางในแนวใดก็ตาม (ดูแอตทริบิวต์ screenOrientation
ของไฟล์ Manifest) แม้ว่าระบบจะยังคงรองรับการดำเนินการนี้ แต่ผู้ผลิตอุปกรณ์ก็มีตัวเลือกในการลบล้างคำขอของแอปสำหรับการวางแนวที่ต้องการ
ใน Android 12 (API ระดับ 31) ขึ้นไป ผู้ผลิตอุปกรณ์สามารถกำหนดค่าหน้าจออุปกรณ์แต่ละหน้าจอ (เช่น หน้าจอขนาดแท็บเล็ตของอุปกรณ์แบบพับได้) เพื่อละเว้นข้อกำหนดการวางแนวและบังคับให้แอปในโหมดแนวตั้งตั้งตรง แต่เป็นแถบดำด้านบน-ล่างของภาพบนหน้าจอแนวนอน การละเว้นข้อกำหนดนี้จะช่วยให้ Android ตอบสนองความตั้งใจของนักพัฒนาแอปที่ต้องการแสดงแอปในสัดส่วนการแสดงผลคงที่เสมอ ขณะเดียวกันก็คงการวางแนวแอปไว้เพื่อให้ใช้งานได้ง่ายสูงสุด
อย่างไรก็ตาม เพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ดีที่สุด ให้ออกแบบแอปด้วยเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์ซึ่งใช้ประโยชน์จากพื้นที่หน้าจอทั้งแนวตั้งและแนวนอนในหน้าจอที่ใหญ่กว่า 600 DP
รับ Android 13 ในอุปกรณ์ของพาร์ทเนอร์ที่มีหน้าจอขนาดใหญ่
เราร่วมมือกับพาร์ทเนอร์ผู้ผลิตอุปกรณ์เพื่อให้ Android 13 พร้อมให้ทดลองใช้บนอุปกรณ์หน้าจอขนาดใหญ่ โปรดไปที่เว็บไซต์ต่อไปนี้เพื่อดูรายการอุปกรณ์หน้าจอขนาดใหญ่ที่มีสิทธิ์และดูรายละเอียดเกี่ยวกับบิลด์เบต้าที่ใช้ได้
ดูข้อมูลอัปเดตและการสนับสนุนได้ที่แหล่งข้อมูลที่ผู้ผลิตอุปกรณ์แต่ละรายลิงก์ไว้ในเว็บไซต์ Android 13 รุ่นเบต้า โปรดทราบว่าพาร์ทเนอร์แต่ละรายจะเป็นผู้อัปเดตเวอร์ชันเบต้าให้คุณโดยตรง รวมถึงจัดการการลงทะเบียนและการสนับสนุนของตนเอง
สิ่งที่ต้องทดสอบ
ก่อนเริ่มการทดสอบ ให้ตั้งค่าอุปกรณ์เสมือนสำหรับ Android Emulator ใน Android Studio หรือรับ Android 13 ในอุปกรณ์หน้าจอขนาดใหญ่จากพาร์ทเนอร์ผู้ผลิตอุปกรณ์ หลังจากตั้งค่าอุปกรณ์เสร็จแล้ว คุณต้องทดสอบแอปกับกรณีการใช้งานสำหรับหน้าจอขนาดใหญ่ที่พบบ่อยเพื่อให้มั่นใจว่าแอปจะตอบสนองตามที่คุณต้องการ ต่อไปนี้คือตัวอย่างบางส่วนของสิ่งที่แนะนําพร้อมลิงก์ไปยังรายละเอียดเพิ่มเติมเกี่ยวกับแหล่งข้อมูลที่เกี่ยวข้องซึ่งจะช่วยคุณเพิ่มประสิทธิภาพแอปสําหรับหน้าจอขนาดใหญ่
สิ่งที่จะทดสอบ | แหล่งข้อมูล |
---|---|
ขนาดหน้าจอ การวางอุปกรณ์ และการหมุน ตรวจสอบวิธีที่แอปตอบสนองเมื่อขนาดของหน้าจอเปลี่ยนแปลงเนื่องจากลักษณะการวางอุปกรณ์เปลี่ยนไป (เช่น การกางอุปกรณ์แบบพับได้หรือการวางอุปกรณ์แบบพับได้ในโหมดตั้งโต๊ะ) นอกจากนี้ ให้ลองหมุนอุปกรณ์ในแต่ละสถานะเหล่านี้เพื่อให้แน่ใจว่าแอปจะตอบสนองอย่างเหมาะสมที่สุด |
เอกสารประกอบ ตัวอย่าง Codelabs การพูดคุยทางเทคนิค |
การโต้ตอบกับแถบงานและโหมดแยกหน้าจอ ตรวจสอบว่าแอปของคุณตอบสนองอย่างไรเมื่อดูด้วยแถบงานบนหน้าจอขนาดใหญ่ ตรวจสอบว่า UI ของแอปไม่ถูกตัดออกหรือถูกบล็อกโดยแถบงาน ลองเข้าและออกจากโหมดแยกหน้าจอและโหมดหลายหน้าต่างโดยใช้แถบงาน และทดสอบการสลับไปมาอย่างรวดเร็วระหว่างแอปของคุณกับแอปอื่นๆ โดยใช้แถบงาน หากแอปมีการวางแนวแบบคงที่และปรับขนาดไม่ได้ ให้ตรวจสอบว่าแอปตอบสนองต่อการปรับโหมดความเข้ากันได้ เช่น แถบดำด้านบนและด้านล่างอย่างไร |
เอกสารประกอบ ตัวอย่าง การพูดคุยทางเทคนิค |
โหมดหลายหน้าต่าง
ตรวจสอบว่าแอปของคุณตอบสนองอย่างไรเมื่อทำงานในโหมดหลายหน้าต่างบนหน้าจอขนาดใหญ่ (sw >= 600dp) โดยเฉพาะในกรณีที่แอปตั้งค่า
หากแอปตั้งค่าเป็น
หากแอปใช้ Display API เช่น |
เอกสารประกอบ ตัวอย่าง การพูดคุยทางเทคนิค |
การฉายสื่อ หากแอปใช้การฉายสื่อ ให้ตรวจสอบว่าแอปตอบสนองอย่างไรขณะเล่น สตรีม หรือแคสต์สื่อบนอุปกรณ์หน้าจอขนาดใหญ่ อย่าลืมคำนึงถึงการเปลี่ยนแปลงของลักษณะของอุปกรณ์ในอุปกรณ์แบบพับได้ด้วย |
เอกสารประกอบ ตัวอย่าง การพูดคุยทางเทคนิค |
ตัวอย่างจากกล้อง สำหรับแอปกล้อง ให้ตรวจสอบว่า UI ของตัวอย่างกล้องตอบสนองอย่างไรบนหน้าจอขนาดใหญ่เมื่อแอปถูกจำกัดให้แสดงในบางส่วนของหน้าจอในโหมดหลายหน้าต่างหรือโหมดแยกหน้าจอ นอกจากนี้ ให้ตรวจสอบว่าแอปของคุณตอบสนองอย่างไรเมื่อลักษณะของอุปกรณ์แบบพับได้เปลี่ยนแปลง |
เอกสารประกอบ |