ระดับ 3 - พร้อมใช้งานบนหน้าจอขนาดใหญ่
การกําหนดค่าคือชุดค่าผสมของสถานะอุปกรณ์และสถานะระบบ สถานะอุปกรณ์ ซึ่งรวมถึงการวางแนวหน้าจอ ขนาดการแสดงผล สถานะพับหรือกางออกของอุปกรณ์แบบพับได้ ความพร้อมใช้งานของแป้นพิมพ์ภายนอก จอแสดงผลที่แนบมา สถานะของระบบจะรวมโหมดการแสดงผล เช่น หลายหน้าต่างและหลายจอแสดงผล รวมถึงการตั้งค่าที่ผู้ใช้กำหนด เช่น ขนาดแบบอักษรและภาษา
การเปลี่ยนแปลงการกำหนดค่าคือการเปลี่ยนแปลงสถานะของอุปกรณ์หรือระบบ เช่น อุปกรณ์ที่พลิก หน้าต่างแอปที่ปรับขนาด อุปกรณ์ที่กางออก อุปกรณ์ต่อพ่วงที่เชื่อมต่อ หรือการตั้งค่าของผู้ใช้ที่อัปเดต
อุปกรณ์หน้าจอขนาดใหญ่จะมีการเปลี่ยนแปลงการกำหนดค่าทั้งหมดเหมือนกับโทรศัพท์หน้าจอขนาดเล็ก แต่หน้าจอขนาดใหญ่ยังมีการเปลี่ยนแปลงการกำหนดค่าที่ไม่ซ้ำกันด้วย เช่น
- การพับและการกางอุปกรณ์
- การปรับขนาดหน้าต่างแบบอิสระในโหมดหลายหน้าต่าง
การสร้างกิจกรรมขึ้นมาใหม่
Android จะจัดการการเปลี่ยนแปลงการกำหนดค่าสำหรับแอปโดยการทำลายและสร้างกิจกรรมที่กำลังทำงานอยู่ใหม่เมื่อเกิดการเปลี่ยนแปลงการกำหนดค่า Android จะสร้างกิจกรรมขึ้นมาใหม่โดยตั้งค่าและทรัพยากรที่รองรับการกำหนดค่าใหม่
ออกแบบแอปด้วยเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์/ปรับเปลี่ยนได้ ซึ่งรองรับขนาดและอัตราส่วนการแสดงผลของหน้าจอและหน้าต่างแอปที่หลากหลาย รวมถึงการจัดการการกําหนดค่าของเฟรมเวิร์ก Android จะช่วยให้แอปแสดงผลได้ดีที่สุดบนหน้าจอขนาดใหญ่และขนาดเล็ก
การจัดการการกําหนดค่าด้วยตนเอง
สำหรับกรณีพิเศษ เช่น การเพิ่มประสิทธิภาพเฉพาะแอป ให้แอปจัดการการเปลี่ยนแปลงการกำหนดค่าแทนที่จะปล่อยให้ Android ทำลายและสร้างกิจกรรมของแอปขึ้นมาใหม่
ระบุการเปลี่ยนแปลงการกำหนดค่าที่แอปจัดการโดยตั้งค่าแอตทริบิวต์ android:configChanges
ขององค์ประกอบ <activity>
ในไฟล์ Manifest ของแอป
ตัวอย่างเช่น เปิดใช้แอปให้จัดการการเปลี่ยนแปลงการกำหนดค่าหลายหน้าต่าง
<activity
android:name=".MyActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout" />
การจัดการสถานะ
ไม่ว่า Android จะจัดการการเปลี่ยนแปลงการกําหนดค่าให้คุณหรือคุณเป็นผู้ดำเนินการเอง แอปของคุณต้องรักษาบริบทและสถานะไว้ หลังจากการเปลี่ยนแปลงการกําหนดค่า ผู้ใช้ควรโต้ตอบกับแอปต่อได้โดยไม่ขาดตอนและไม่มีการสูญเสียข้อมูล เช่น เมื่อการเปลี่ยนแปลงการกําหนดค่าเกิดขึ้นระหว่างการเล่นสื่อหรือการป้อนข้อมูลตามลําดับ
ขั้นตอนถัดไป
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีจัดการการเปลี่ยนแปลงการกําหนดค่าและรักษาความต่อเนื่องของแอปได้ในคู่มือนักพัฒนาแอปต่อไปนี้