การกำหนดค่าและความต่อเนื่อง

ไอคอนพร้อมสำหรับไอคอนแบบปรับอัตโนมัติระดับ 3

ระดับที่ 3 - พร้อมปรับเปลี่ยน

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

การเปลี่ยนแปลงการกำหนดค่าคือการเปลี่ยนแปลงสถานะของอุปกรณ์หรือระบบ เช่น อุปกรณ์หมุน หน้าต่างแอปที่ปรับขนาดแล้ว อุปกรณ์ที่กางออก อุปกรณ์ต่อพ่วงที่เชื่อมต่อ หรือการตั้งค่าผู้ใช้ที่อัปเดตแล้ว

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

  • การพับและกางอุปกรณ์
  • การปรับขนาดหน้าต่างแบบอิสระประเภทเดสก์ท็อปในโหมดหลายหน้าต่าง

การสร้างกิจกรรมใหม่

Android จัดการการเปลี่ยนแปลงการกำหนดค่าสำหรับแอปโดยการทำลายและสร้าง กิจกรรมที่กำลังทำงานใหม่เมื่อเกิดการเปลี่ยนแปลงการกำหนดค่า Android จะสร้างกิจกรรมขึ้นมาใหม่ พร้อมการตั้งค่าและทรัพยากรที่รองรับการกำหนดค่าใหม่

ออกแบบแอปด้วยเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์/เลย์เอาต์ที่ปรับเปลี่ยนได้ซึ่งรองรับขนาดหน้าจอและหน้าต่างแอป รวมถึงสัดส่วนภาพที่หลากหลาย และการจัดการการกำหนดค่าของเฟรมเวิร์ก Android จะช่วยให้แอปแสดงผลได้ดีที่สุดในหน้าจอขนาดใหญ่และเล็ก

การจัดการการกำหนดค่าด้วยตนเอง

ในกรณีพิเศษ เช่น การเพิ่มประสิทธิภาพเฉพาะแอป ให้เปิดใช้แอปเพื่อจัดการการเปลี่ยนแปลงการกำหนดค่าแทนที่จะปล่อยให้ Android ทำลายและสร้างกิจกรรมของแอปขึ้นมาใหม่

ระบุการเปลี่ยนแปลงการกำหนดค่าที่แอปจัดการโดยการตั้งค่าแอตทริบิวต์ android:configChanges ขององค์ประกอบ <activity> ในไฟล์ Manifest ของแอป

เช่น เปิดใช้แอปเพื่อจัดการการเปลี่ยนแปลงการกำหนดค่าหลายหน้าต่าง

<activity
  android:name=".MyActivity"
  android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout" />

การจัดการสถานะ

ไม่ว่า Android จะจัดการการเปลี่ยนแปลงการกำหนดค่าให้คุณหรือคุณจะจัดการด้วยตนเอง แอปของคุณต้องรักษาบริบทและสถานะไว้ หลังจากเปลี่ยนการกำหนดค่าแล้ว ผู้ใช้ ควรโต้ตอบกับแอปต่อได้โดยไม่หยุดชะงัก และไม่สูญเสียข้อมูล เช่น เมื่อมีการเปลี่ยนการกำหนดค่า ในระหว่างการเล่นสื่อหรือการป้อนข้อมูล

ขั้นตอนถัดไป

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีจัดการการเปลี่ยนแปลงการกำหนดค่าและรักษาความต่อเนื่องของแอป ได้ในคู่มือนักพัฒนาซอฟต์แวร์ต่อไปนี้