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