ALWAYS_SANDBOX_DISPLAY_APIS
รหัสการเปลี่ยนแปลง: 185004937
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ จะใช้แซนด์บ็อกซ์ Display API กับแพ็กเกจไม่ว่าจะอยู่ในโหมดหน้าต่างใดก็ตาม Display API จะระบุขอบเขตของแอปเสมอ
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่ส่วนในหน้าการเปลี่ยนแปลงลักษณะการทำงานของ Android 12 เกี่ยวกับ
วิธีการแสดงผลที่เลิกใช้งานแล้ว
|
AUTOFILL_NON_TEXT_REQUIRES_ON_RECEIVE_CONTENT_LISTENER
รหัสการเปลี่ยนแปลง: 163400105
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป
ตั้งแต่ Android 12 เป็นต้นไป แพลตฟอร์มจะแสดงคำแนะนำที่ไม่ใช่ข้อความ (เช่น รูปภาพ) ได้โดยใช้เฟรมเวิร์กการป้อนข้อความอัตโนมัติที่เพิ่มประสิทธิภาพ (ดูบริการป้อนข้อความอัตโนมัติ) เพื่อให้แอปจัดการคำแนะนำเหล่านี้ได้ แอปจะต้องใช้ OnReceiveContentListener API ตามปกติ
เพื่อให้แอปที่เคยใช้ API InputConnection.commitContent(InputContentInfo, int, Bundle) นำ API นี้ไปใช้ได้ราบรื่นยิ่งขึ้น เราจะใช้ API นั้นซ้ำเป็นทางเลือกสำรองหากแอปยังไม่ได้ใช้ OnReceiveContentListener โดยจะเปิดใช้ทางเลือกสำรองนี้ใน Android 12 (ระดับ API 31) เท่านั้น รหัสการเปลี่ยนแปลงนี้จะปิดใช้การสำรอง เพื่อให้แอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไปต้องใช้ API OnReceiveContentListener เพื่อยอมรับคำแนะนำที่ไม่ใช่ข้อความ
|
BLOCK_FLAG_SLIPPERY
รหัสการเปลี่ยนแปลง: 157929241
สถานะเริ่มต้น: เปิดใช้สำหรับแอปทั้งหมด
สำหรับแอปที่ทำงานบน Android 12 (ระดับ API 31) ให้ตรวจสอบว่ามีการใช้ FLAG_SLIPPERY กับหน้าต่างใดๆ ในแอปหรือไม่ เราคาดว่าแฟล็กนี้มีแนวโน้มที่จะใช้โดยคอมโพเนนต์ของระบบเท่านั้น เนื่องจากเป็นช่องที่ไม่รองรับ หากเป็นเช่นนั้น ระบบจะจำกัดการแสดงโฆษณา
|
BLOCK_GPS_STATUS_USAGE
รหัสการเปลี่ยนแปลง: 144027538
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป การใช้งาน API GpsStatus ทั้งหมดต้องแทนที่ด้วย API GnssStatus
|
BLOCK_IMMUTABLE_PENDING_INTENTS
รหัสการเปลี่ยนแปลง: 171317480
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ออบเจ็กต์ PendingIntent ที่เปลี่ยนแปลงไม่ได้ซึ่งส่งไปยัง API สถานที่จะสร้าง IllegalArgumentException.
|
BLOCK_PENDING_INTENT_SYSTEM_API_USAGE
รหัสการเปลี่ยนแปลง: 169887240
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป จะไม่สามารถใช้ API ของระบบ LocationRequest กับคำขอตำแหน่ง PendingIntent ได้
|
BLOCK_UNTRUSTED_TOUCHES
รหัสการเปลี่ยนแปลง: 158002302
สถานะเริ่มต้น: เปิดใช้สำหรับแอปทั้งหมด
Android 12 จะป้องกันไม่ให้แอปใช้การโต้ตอบแบบสัมผัสในกรณีที่การวางซ้อนบล็อกแอปในลักษณะที่ไม่ปลอดภัย เพื่อรักษาความปลอดภัยของระบบและประสบการณ์ที่ดีของผู้ใช้
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่การโต้ตอบแบบสัมผัสที่ไม่น่าเชื่อถือถูกบล็อก
|
CALL_ACTIVITY_RESULT_BEFORE_RESUME
รหัสการเปลี่ยนแปลง: 78294732
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป ให้แก้ไขวงจรของผลลัพธ์กิจกรรมเพื่อรับประกันว่ากิจกรรมจะได้รับผลลัพธ์กิจกรรมก่อนที่จะกลับมาทำงานอีกครั้ง
|
CAMERA_MIC_INDICATORS_NOT_PRESENT
รหัสการเปลี่ยนแปลง: 162547999
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
ระบุว่าอุปกรณ์นี้รองรับสัญญาณบอกสถานะกล้องและไมโครโฟน จะเป็น false หากมี เนื่องจากเมธอด CompatChanges#isChangeEnabled จะแสดงผลเป็น true หากไม่มีรหัสการเปลี่ยนแปลง
|
CANNOT_INSTALL_WITH_BAD_PERMISSION_GROUPS
รหัสการเปลี่ยนแปลง: 146211400
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป เครื่องมือจัดการแพ็กเกจจะไม่ติดตั้งแพ็กเกจหากมีกลุ่มสิทธิ์ที่ผิดรูปแบบ
ควรแชร์กลุ่มสิทธิ์ระหว่างแอปที่แชร์ใบรับรองเท่านั้น หากสิทธิ์เป็นของกลุ่ม คุณต้องกำหนดกลุ่มนั้นด้วย
|
CHANGE_ID_AUTH_STATE_DENIED
รหัสการเปลี่ยนแปลง: 181350407
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปไคลเอ็นต์ที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ระบบจะแสดง SecurityException เมื่อแอปอยู่ในสถานะการให้สิทธิ์ที่ถูกปฏิเสธและพยายามส่งข้อความไปยัง Nanoapp
|
CHANGE_ID_SAMPLING_RATE_SENSORS_PERMISSION
รหัสการเปลี่ยนแปลง: 136069189
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ระบบจะแสดง SecurityException เมื่อแอปไม่มีสิทธิ์ HIGH_SAMPLING_RATE_SENSORS, ทำงานในโหมดแก้ไขข้อบกพร่อง และขออัตราการสุ่มตัวอย่างที่เร็วกว่า 200 Hz
|
DELIVER_HISTORICAL_LOCATIONS
รหัสการเปลี่ยนแปลง: 73144566
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ไคลเอ็นต์ตำแหน่งอาจได้รับตำแหน่งที่ผ่านมา (จากก่อนเวลาปัจจุบัน) ในบางสถานการณ์
|
DISPLAY_INFO_NR_ADVANCED_SUPPORTED
รหัสการเปลี่ยนแปลง: 181658987
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป จะให้ความเข้ากันได้แบบย้อนหลังสำหรับการเปลี่ยนแปลงใน TelephonyDisplayInfo
|
DISPLAY_MODE_RETURNS_PHYSICAL_REFRESH_RATE
รหัสการเปลี่ยนแปลง: 170503758
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป แพลตฟอร์มอาจควบคุมอัตราเฟรมของแอปลงเป็นตัวหารของอัตราการรีเฟรชหากเหมาะสมกว่า (เช่น หากแอปเรียกใช้ Surface.setFrameRate(float, int)) แอปจะได้รับ Callback Choreographer.postFrameCallback(Choreographer.FrameCallback) และแรงดันย้อนกลับที่อัตราเฟรมที่ควบคุม แอปใช้ Display.getRefreshRate() และ Display.Mode.getRefreshRate() เพื่อดูอัตราการรีเฟรชจอแสดงผล Display.getRefreshRate() จะแสดงอัตราเฟรมของแอปพลิเคชันเสมอ ไม่ใช่อัตราการรีเฟรชจอแสดงผลจริง เพื่อให้แอปกำหนดอัตราเฟรมได้อย่างถูกต้อง Display.Mode.getRefreshRate() จะแสดงผลอัตราเฟรมของแอปหากคอมไพล์เป็นรุ่นก่อนหน้า และตั้งแต่ Android 12 (ระดับ API 31) เป็นต้นไป จะแสดงผลอัตราการรีเฟรชการแสดงผลจริง
|
DOWNSCALED
รหัสการเปลี่ยนแปลง: 168419799
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
การเปลี่ยนแปลงนี้เป็นตัวควบคุมการเปลี่ยนแปลงการลดขนาดบัฟเฟอร์ต่อแอปทั้งหมด การเปิดใช้การเปลี่ยนแปลงนี้จะช่วยให้ใช้ค่าตัวคูณมาตราส่วนต่อไปนี้ได้
เมื่อเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจแอป ระบบจะบังคับปรับขนาดแอปเป็นค่าตัวคูณมาตราส่วนสูงสุดที่เปิดใช้ เช่น ระบบจะใช้ 80% หากเปิดใช้ทั้ง 80% และ 70% (DOWNSCALE_80 และ DOWNSCALE_70)
|
DOWNSCALE_30
รหัสการเปลี่ยนแปลง: 189970040
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 30% ของจอแสดงผลจริง
|
DOWNSCALE_35
รหัสการเปลี่ยนแปลง: 189969749
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 35% ของจอแสดงผลจริง
|
DOWNSCALE_40
รหัสการเปลี่ยนแปลง: 189970038
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 40% ของจอแสดงผลจริง
|
DOWNSCALE_45
รหัสการเปลี่ยนแปลง: 189969782
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 45% ของจอแสดงผลจริง
|
DOWNSCALE_50
รหัสการเปลี่ยนแปลง: 176926741
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 50% ของจอแสดงผลจริง
|
DOWNSCALE_55
รหัสการเปลี่ยนแปลง: 189970036
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 55% ของจอแสดงผลจริง
|
DOWNSCALE_60
รหัสการเปลี่ยนแปลง: 176926771
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 60% ของจอแสดงผลจริง
|
DOWNSCALE_65
รหัสการเปลี่ยนแปลง: 189969744
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 65% ของจอแสดงผลจริง
|
DOWNSCALE_70
รหัสการเปลี่ยนแปลง: 176926829
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 70% ของจอแสดงผลจริง
|
DOWNSCALE_75
รหัสการเปลี่ยนแปลง: 189969779
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 75% ของจอแสดงผลจริง
|
DOWNSCALE_80
รหัสการเปลี่ยนแปลง: 176926753
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 80% ของจอแสดงผลจริง
|
DOWNSCALE_85
รหัสการเปลี่ยนแปลง: 189969734
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 85% ของจอแสดงผลจริง
|
DOWNSCALE_90
รหัสการเปลี่ยนแปลง: 182811243
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ DOWNSCALED ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะบังคับให้แอปถือว่ากำลังทำงานบนจอแสดงผลที่มีความละเอียดแนวตั้งและแนวนอน 90% ของจอแสดงผลจริง
|
DO_NOT_DOWNSCALE_TO_1080P_ON_TV
รหัสการเปลี่ยนแปลง: 157629738
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
แอป Android TV ที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไปควรจัดการขนาดหน้าต่างใดก็ได้ รวมถึงขนาดหน้าต่างที่มากกว่า 1080p
แอปที่กำหนดเป้าหมายเป็น Android เวอร์ชันก่อนหน้าจะไม่คาดหวังว่าจะได้รับหน้าต่างที่มีขนาดใหญ่กว่า 1080p ดังนั้นหน้าต่างจึงถูกลดขนาดลงเหลือ 1080p เมื่อจำเป็น
|
DROP_CLOSE_SYSTEM_DIALOGS
รหัสการเปลี่ยนแปลง: 174664120
สถานะเริ่มต้น: เปิดใช้สำหรับแอปทั้งหมด
เพื่อปรับปรุงการควบคุมของผู้ใช้เมื่อโต้ตอบกับแอปและระบบ การดำเนินการตาม Intent ACTION_CLOSE_SYSTEM_DIALOGS จะเลิกใช้งานตั้งแต่ Android 12 เป็นต้นไป
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่แอปปิดกล่องโต้ตอบของระบบไม่ได้
|
ENABLE_CHECKS_FOR_PRIVATE_FILES
รหัสการเปลี่ยนแปลง: 172100307
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
แอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไปจะแทรกหรืออัปเดตไฟล์ส่วนตัวโดยใช้ผู้ให้บริการสื่อไม่ได้
|
ENABLE_DEFERRED_SCAN
รหัสการเปลี่ยนแปลง: 180326732
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
เปิดใช้ตัวเลือกนี้เพื่อเลื่อนการสแกนที่ทริกเกอร์โดยเป็นส่วนหนึ่งของ MediaProvider#update()
|
ENABLE_GET_CALL_STATE_PERMISSION_PROTECTION
รหัสการเปลี่ยนแปลง: 157233955
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ให้เปิดใช้การปกป้อง READ_PHONE_STATE ใน API ที่ค้นหาและแจ้งเตือนสถานะการโทร เช่น TelecomManager#getCallState, TelephonyManager.getCallStateForSubscription() และ TelephonyCallback.CallStateListener
|
ENABLE_GET_PHONE_ACCOUNT_PERMISSION_PROTECTION
รหัสการเปลี่ยนแปลง: 183407956
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ให้เปิดใช้การป้องกัน READ_PHONE_NUMBERS หรือ READ_PRIVILEGED_PHONE_STATE ใน getPhoneAccount(PhoneAccountHandle)
|
ENABLE_INCLUDE_ALL_VOLUMES
รหัสการเปลี่ยนแปลง: 182734110
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
เปิดใช้ตัวเลือกนี้เพื่อรวมแถวฐานข้อมูลของไฟล์จากวอลุ่มที่เพิ่งยกเลิกการต่อเชื่อมใน MediaProvider#query
|
ENABLE_RAW_MANAGE_EXTERNAL_STORAGE_ACCESS
รหัสการเปลี่ยนแปลง: 178209446
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
เปิดใช้ตัวเลือกนี้เพื่ออนุญาตให้แอปที่มีสิทธิ์ Manifest.permission.MANAGE_EXTERNAL_STORAGE ขอสิทธิ์เข้าถึงที่จัดเก็บข้อมูลภายนอกแบบข้อมูลดิบ
|
ENFORCE_MINIMUM_WINDOW_ON_INEXACT_ALARMS
รหัสการเปลี่ยนแปลง: 185199076
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป การปลุกแบบไม่แน่นอนทั้งหมดต้องมีขนาดกรอบเวลาขั้นต่ำ ซึ่งคาดว่าจะเป็นลำดับไม่กี่นาที ในทางปฏิบัติ สัญญาณปลุกที่ต้องใช้กรอบเวลาที่สั้นลงจะเหมือนกับสัญญาณปลุกเจาะจง และควรใช้ API ที่เกี่ยวข้องซึ่งมีให้ เช่น setExact(int, long, PendingIntent) การปลุกแบบไม่แน่นอนที่มีกรอบเวลาสั้นกว่าที่ระบุไว้จะมีกรอบเวลาที่ระบบขยายออก
|
ENFORCE_NATIVE_SHARED_LIBRARY_DEPENDENCIES
รหัสการเปลี่ยนแปลง: 142191088
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
แอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไปต้องประกาศทรัพยากร Dependency ไปยังไลบรารีที่ใช้ร่วมกันแบบเนทีฟสาธารณะซึ่งผู้ผลิตอุปกรณ์กำหนดไว้โดยใช้แท็ก uses-native-library ใน AndroidManifest.xml หากไม่สามารถดำเนินการตามทรัพยากร Dependency ใดๆ ได้ เช่น ไม่มีทรัพยากร Dependency ตัวใดตัวหนึ่ง เครื่องมือจัดการแพ็กเกจจะไม่ติดตั้งแอป คุณสามารถระบุทรัพยากร Dependency เป็นตัวเลือกได้โดยใช้แอตทริบิวต์ android:required ในแท็ก ซึ่งในกรณีนี้ การไม่ดำเนินการตามทรัพยากร Dependency จะไม่หยุดการติดตั้ง
เมื่อติดตั้งแล้ว แอปจะได้รับเฉพาะไลบรารีที่ใช้ร่วมกันแบบเนทีฟที่ระบุไว้ในไฟล์ Manifest ของแอป การเรียกใช้ dlopen ในไลบรารีที่ใช้ร่วมกันแบบเนทีฟซึ่งไม่ปรากฏในไฟล์ Manifest ของแอปจะดำเนินการไม่สำเร็จ แม้ว่าไลบรารีดังกล่าวจะมีอยู่ในอุปกรณ์ก็ตาม
|
ENFORCE_STRICT_QUERY_BUILDER
รหัสการเปลี่ยนแปลง: 143231523
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ SQLiteQueryBuilder จะยืนยันการเลือกการค้นหา CalendarProvider2 ทั้งหมดกับอาร์กิวเมนต์ที่เป็นอันตราย
|
FGS_BG_START_RESTRICTION_CHANGE_ID
รหัสการเปลี่ยนแปลง: 170668199
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป จะจำกัดเวลาที่แอปสามารถเริ่มบริการที่ทำงานอยู่เบื้องหน้าขณะทำงานอยู่เบื้องหลัง
|
FGS_START_EXCEPTION_CHANGE_ID
รหัสการเปลี่ยนแปลง: 174041399
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป จะช่วยให้ระบบแสดง IllegalStateException หากแอปพยายามเริ่มบริการที่ทำงานอยู่เบื้องหน้าขณะทำงานอยู่เบื้องหลัง
|
รหัสการเปลี่ยนแปลง: 156215187
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ให้ดำเนินการ InputConnection ให้เสร็จสิ้นเมื่ออุปกรณ์กลายเป็น non-interactive
หากเปิดใช้โดย input method ปัจจุบัน การเชื่อมต่ออินพุตปัจจุบันจะfinishedเมื่ออุปกรณ์ไม่โต้ตอบ
หากไม่ได้เปิดใช้ ระบบจะปิดใช้งานการเชื่อมต่ออินพุตปัจจุบันโดยไม่มีการแจ้งเตือนเมื่ออุปกรณ์ไม่มีการโต้ตอบ และจะส่งคู่ onFinishInput() และ onStartInput() เมื่ออุปกรณ์กลับมามีการโต้ตอบอีกครั้ง
|
FORCE_DISABLE_HEVC_SUPPORT
รหัสการเปลี่ยนแปลง: 174227820
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
บังคับปิดใช้แอปไม่ให้รองรับความสามารถด้านสื่อ HEVC
แอปควรประกาศความสามารถด้านสื่อที่รองรับในไฟล์ Manifest แต่สามารถใช้ Flag นี้เพื่อบังคับให้แอปไม่รองรับ HEVC ได้ ซึ่งจะบังคับให้มีการแปลงขณะเข้าถึงสื่อที่เข้ารหัสใน HEVC การตั้งค่าแฟล็กนี้จะลบล้างค่าเริ่มต้นระดับระบบปฏิบัติการสำหรับแอป ระบบจะปิดใช้โดยค่าเริ่มต้น ซึ่งหมายความว่าค่าเริ่มต้นของระบบปฏิบัติการจะมีความสำคัญเหนือกว่า หากเปิดใช้ทั้งแฟล็กนี้และ FORCE_ENABLE_HEVC_SUPPORT ระบบปฏิบัติการจะไม่สนใจทั้ง 2 แฟล็ก
|
FORCE_ENABLE_HEVC_SUPPORT
รหัสการเปลี่ยนแปลง: 174228127
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
บังคับให้เปิดใช้แอปเพื่อรองรับความสามารถด้านสื่อ HEVC แอปควรประกาศความสามารถด้านสื่อที่รองรับในไฟล์ Manifest แต่สามารถใช้ Flag นี้เพื่อบังคับให้แอปที่รองรับ HEVC หลีกเลี่ยงการแปลงขณะเข้าถึงสื่อที่เข้ารหัสใน HEVC การตั้งค่าแฟล็กนี้จะลบล้างค่าเริ่มต้นระดับระบบปฏิบัติการสำหรับแอป ระบบจะปิดใช้โดยค่าเริ่มต้น ซึ่งหมายความว่าค่าเริ่มต้นของระบบปฏิบัติการจะมีความสำคัญเหนือกว่า หากเปิดใช้ทั้งแฟล็กนี้และ FORCE_DISABLE_HEVC_SUPPORT ระบบปฏิบัติการจะไม่สนใจแฟล็กทั้ง 2 รายการ
|
FORCE_NON_RESIZE_APP
รหัสการเปลี่ยนแปลง: 181136395
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
บังคับให้แพ็กเกจที่ใช้เป็นแบบปรับขนาดไม่ได้
|
FORCE_RESIZE_APP
รหัสการเปลี่ยนแปลง: 174042936
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
บังคับให้แพ็กเกจที่ใช้ปรับขนาดได้ เราอนุญาตให้ปรับขนาดในโหมดหน้าต่างแบบเต็มหน้าจอเท่านั้น แต่จะไม่บังคับให้แอปเข้าสู่โหมดหลายหน้าต่างที่ปรับขนาดได้
|
HIDE_PROP_ICUBINARY_DATA_PATH
รหัสการเปลี่ยนแปลง: 171979766
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ระบบจะนำสิทธิ์เข้าถึงพร็อพเพอร์ตี้ android.icu.impl.ICUBinary.dataPath ออก
|
IGNORE_ALLOW_BACKUP_IN_D2D
รหัสการเปลี่ยนแปลง: 183147249
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ระบบจะไม่สนใจ android:allowBackup สำหรับแอประหว่างการย้ายข้อมูลจากอุปกรณ์หนึ่งไปยังอีกอุปกรณ์หนึ่ง (D2D)
|
IGNORE_FULL_BACKUP_CONTENT_IN_D2D
รหัสการเปลี่ยนแปลง: 180523564
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ระบบจะไม่สนใจกฎการรวมและการยกเว้นที่ระบุโดยใช้ android:fullBackupContent ในระหว่างการโอนจากอุปกรณ์หนึ่งไปยังอีกอุปกรณ์หนึ่ง (D2D)
|
IME_AUTOFILL_DEFAULT_SUPPORTED_LOCALES_IS_EMPTY
รหัสการเปลี่ยนแปลง: 169273070
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ตอนนี้ getSupportedLocales() จะแสดงผลรายการภาษาว่างเมื่อไม่ได้ตั้งค่าไว้ แทนที่จะเป็นภาษาเริ่มต้นของระบบ
|
IS_BACKUP_SERVICE_ACTIVE_ENFORCE_PERMISSION_IN_SERVICE
รหัสการเปลี่ยนแปลง: 158482162
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป สิทธิ์ BACKUP ที่จำเป็นสำหรับ isBackupServiceActive() จะบังคับใช้ในฝั่งบริการแทนฝั่งไคลเอ็นต์ใน BackupManager
|
KEYSTORE_OPERATION_CREATION_MAY_FAIL
รหัสการเปลี่ยนแปลง: 169897160
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ การสร้างการดำเนินการ Keystore อาจไม่สำเร็จตามกลยุทธ์การตัดแต่งใหม่ Keystore เคยทำงานภายใต้สมมติฐานว่าการสร้างการดำเนินการเข้ารหัสจะสำเร็จเสมอ
อย่างไรก็ตาม แบ็กเอนด์ KeyMint มีช่องการดำเนินการที่จำกัดเท่านั้น
เพื่อให้คงลักษณะของช่องการดำเนินการ "ไม่จำกัด" ไว้ Daemon ของ Keystore จะตัดการดำเนินการที่ใช้ล่าสุดออกหากไม่มีช่องการดำเนินการที่พร้อมใช้งาน ซึ่งอาจทำให้การดำเนินการที่ดีสิ้นสุดก่อนเวลาอันควร ซึ่งทำให้ AndroidKeystore เสี่ยงต่อการถูกโจมตีแบบปฏิเสธการให้บริการ (DoS) และเกิด Livelock โดยไม่ตั้งใจ ตัวอย่างเช่น หากแอปหลายแอปเริ่มทำงานพร้อมกันเนื่องจากการเพิ่มประสิทธิภาพการจัดการพลังงานและพยายามดำเนินการเข้ารหัส แอปเหล่านั้นจะเริ่มสิ้นสุดการดำเนินการของกันและกันโดยไม่มีความคืบหน้าใดๆ
เพื่อหลุดออกจาก Livelock และเพื่อกีดกันความพยายามในการทำ DoS เราได้เปลี่ยนกลยุทธ์การตัดแต่งเพื่อให้เลือกไคลเอ็นต์ที่ใช้ช่องการดำเนินการเพียงไม่กี่ช่องเป็นเวลาสั้นๆ ด้วยเหตุนี้ การดำเนินการเดียวที่ไม่ได้หยุดนิ่งนานกว่า 5 วินาทีจึงมักจะสรุปได้โดยไม่ถูกขัดขวางโดยกลยุทธ์การตัดแต่ง ทั้งนี้ยังมีการดำเนินการบางอย่างที่เกี่ยวข้องกับการเข้ารหัสระบบไฟล์ที่สามารถตัดการดำเนินการเหล่านี้ได้ แต่กรณีดังกล่าวเกิดขึ้นได้น้อยมาก ผลข้างเคียงของการดำเนินการกลยุทธ์การตัดแต่งใหม่นี้คือการสร้างอาจล้มเหลวหากไคลเอ็นต์มีประสิทธิภาพการตัดแต่งต่ำกว่าการดำเนินการที่มีอยู่ทั้งหมด
กลยุทธ์การตัดแต่งกิ่ง: หากต้องการค้นหาผู้สมัครที่เหมาะสม
เราจะคำนวณค่า Malus สำหรับผู้โทรและการดำเนินการที่มีอยู่แต่ละรายการ ค่าปรับคือค่าผกผันของความสามารถในการตัดแต่ง (ผู้เรียก) หรือความต้านทานการตัดแต่ง (การดำเนินการที่มีอยู่) เพื่อให้ผู้เรียกสามารถตัดแต่งการดำเนินการได้ ผู้เรียกต้องค้นหาการดำเนินการที่มีค่า Malus สูงกว่าของตนเอง ดูรายละเอียดเพิ่มเติมเกี่ยวกับกลยุทธ์การตัดแต่งได้ที่การใช้งาน operation.rs
ใน Android 11 (ระดับ API 30) และต่ำกว่า KeyStore2 จะทำการโพล Keystore Daemon เพื่อหาช่องการดำเนินการที่ว่างอยู่ สำหรับแอปที่กำหนดเป้าหมายเป็น Android 11 (ระดับ API 30) และต่ำกว่า จะยังคงดูเหมือนว่าการเริ่มต้นออบเจ็กต์การเข้ารหัสและลายเซ็นจะสำเร็จเสมอ แต่อาจใช้เวลานานกว่าในการดำเนินการ Android ทุกเวอร์ชันจะได้รับประโยชน์จากการจัดกำหนดการช่วงเวลาการดำเนินการที่ยุติธรรมยิ่งขึ้นและมีโอกาสมากขึ้นที่จะดำเนินการให้เสร็จสมบูรณ์
|
LOCK_DOWN_CLOSE_SYSTEM_DIALOGS
รหัสการเปลี่ยนแปลง: 174664365
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป จะส่ง Intent.ACTION_CLOSE_SYSTEM_DIALOGS ไม่ได้ เว้นแต่แอปจะมีสิทธิ์ android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS ด้วย โปรดทราบว่านี่เป็นเวอร์ชันที่เข้มงวดกว่าของ #DROP_CLOSE_SYSTEM_DIALOGS ซึ่งคาดหวังให้แอปหยุดส่ง Intent Intent.ACTION_CLOSE_SYSTEM_DIALOGS เมื่อแอปเริ่มกำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
|
LOCK_DOWN_COLLAPSE_STATUS_BAR
รหัสการเปลี่ยนแปลง: 173031413
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป จำเป็นต้องมีสิทธิ์ Manifest.permission.STATUS_BAR เพื่อยุบแผงแถบสถานะเนื่องจากเหตุผลด้านความปลอดภัย ซึ่งมัลแวร์ใช้ประโยชน์จากช่องโหว่นี้เพื่อป้องกันไม่ให้ผู้ใช้เข้าถึงการแจ้งเตือนที่สำคัญมาก
|
LOW_POWER_EXCEPTIONS
รหัสการเปลี่ยนแปลง: 168936375
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ออบเจ็กต์ LocationRequest ทั้งหมดที่ทำเครื่องหมายเป็นพลังงานต่ำจะแสดงข้อยกเว้นหากผู้เรียกไม่มีสิทธิ์ LOCATION_HARDWARE แทนที่จะทิ้งส่วนพลังงานต่ำของคำขอไปโดยไม่แจ้งให้ทราบ
|
MISSING_EXPORTED_FLAG
รหัสการเปลี่ยนแปลง: 150232615
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป คุณต้องระบุค่าที่ชัดเจนสำหรับแอตทริบิวต์ android:exported เมื่อใดก็ตามที่มีการกำหนดตัวกรอง Intent
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่การส่งออกคอมโพเนนต์ที่ปลอดภัยยิ่งขึ้น
|
NATIVE_HEAP_POINTER_TAGGING_APP_ZYGOTE
รหัสการเปลี่ยนแปลง: 207557677
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 32) ขึ้นไป การจัดสรรฮีปแบบเนทีฟในกระบวนการ AppZygote และกระบวนการสืบทอดจะใช้แท็กที่ไม่ใช่ 0 ในไบต์ที่มีนัยสำคัญที่สุด
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่พอยน์เตอร์ที่ติดแท็ก
|
NATIVE_HEAP_ZERO_INIT
รหัสการเปลี่ยนแปลง: 178038272
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เปิดใช้การเริ่มต้นเป็นศูนย์โดยอัตโนมัติสำหรับการจัดสรรหน่วยความจำฮีปแบบเนทีฟ
|
NATIVE_MEMTAG_ASYNC
รหัสการเปลี่ยนแปลง: 135772972
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เปิดใช้การตรวจสอบแท็กหน่วยความจำแบบอะซิงโครนัส (ASYNC) ในกระบวนการนี้ แฟล็กนี้มีผลกับฮาร์ดแวร์ที่รองรับ Memory Tagging Extension (MTE) ของ ARM เท่านั้น
|
NATIVE_MEMTAG_SYNC
รหัสการเปลี่ยนแปลง: 177438394
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เปิดใช้การตรวจสอบแท็กหน่วยความจำแบบซิงโครนัส (SYNC) ในกระบวนการนี้ แฟล็กนี้มีผลกับฮาร์ดแวร์ที่รองรับ Memory Tagging Extension (MTE) ของ ARM เท่านั้น หากเปิดใช้ทั้ง NATIVE_MEMTAG_ASYNC และตัวเลือกนี้ ตัวเลือกนี้จะมีผลเหนือกว่าและเปิดใช้ MTE ในโหมด SYNC
|
NEVER_SANDBOX_DISPLAY_APIS
รหัสการเปลี่ยนแปลง: 184838306
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ จะป้องกันไม่ให้ใช้แซนด์บ็อกซ์ Display API กับกิจกรรม Letterbox หรือ SCM Display API จะยังคงแสดงขอบเขต DisplayArea ต่อไป
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่ส่วนในหน้าการเปลี่ยนแปลงลักษณะการทำงานของ Android 12 เกี่ยวกับ
วิธีการแสดงผลที่เลิกใช้งานแล้ว
|
NOTIFICATION_CANCELLATION_REASONS
รหัสการเปลี่ยนแปลง: 175319604
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
ช่วยให้ Listener การแจ้งเตือนเข้าใจเหตุผลการยกเลิกใหม่ที่เฉพาะเจาะจงมากขึ้น
|
NOTIFICATION_TRAMPOLINE_BLOCK
รหัสการเปลี่ยนแปลง: 167676448
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
แอปที่กำหนดเป้าหมายเป็น Android 12 จะใช้บริการหรือ Broadcast Receiver เป็นแทรมโปลีนการแจ้งเตือนไม่ได้ เพื่อปรับปรุงประสิทธิภาพของแอปและ UX
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่ไม่สามารถสร้างแทรมโพลีนการแจ้งเตือนจากบริการหรือ Broadcast Receiver
|
NULL_TELEPHONY_THROW_NO_CB
รหัสการเปลี่ยนแปลง: 182185642
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
ใช้เพื่อตรวจสอบว่าเวอร์ชัน SDK เป้าหมายสำหรับกระบวนการปัจจุบันคือ Android 12 (ระดับ API 31) ขึ้นไปหรือไม่
มีผลกับวิธีการต่อไปนี้
|
OVERRIDE_MIN_ASPECT_RATIO
รหัสการเปลี่ยนแปลง: 174042980
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
การเปลี่ยนแปลงนี้เป็นตัวควบคุมการเปลี่ยนแปลงทั้งหมดที่บังคับใช้สัดส่วนภาพขั้นต่ำที่กำหนด การเปิดใช้การเปลี่ยนแปลงนี้จะช่วยให้ใช้สัดส่วนภาพขั้นต่ำต่อไปนี้ได้
เมื่อเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจแอป ระบบจะลบล้างสัดส่วนภาพขั้นต่ำที่ระบุไว้ในไฟล์ Manifest ของแอปเป็นสัดส่วนภาพที่เปิดใช้มากที่สุด เว้นแต่ค่าไฟล์ Manifest ของแอปจะสูงกว่า
|
OVERRIDE_MIN_ASPECT_RATIO_LARGE
รหัสการเปลี่ยนแปลง: 180326787
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ OVERRIDE_MIN_ASPECT_RATIO ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะตั้งค่าสัดส่วนภาพขั้นต่ำของกิจกรรมเป็นค่าสูงตามที่ OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE กำหนดไว้
|
OVERRIDE_MIN_ASPECT_RATIO_MEDIUM
รหัสการเปลี่ยนแปลง: 180326845
สถานะเริ่มต้น: ปิดใช้สำหรับแอปทั้งหมด
เมื่อเปิดใช้ OVERRIDE_MIN_ASPECT_RATIO ด้วย การเปิดใช้การเปลี่ยนแปลงนี้สำหรับแพ็กเกจจะตั้งค่าสัดส่วนภาพขั้นต่ำของกิจกรรมเป็นค่าปานกลางตามที่ OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE กำหนด
|
PENDING_INTENT_EXPLICIT_MUTABILITY_REQUIRED
รหัสการเปลี่ยนแปลง: 160794467
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป คุณต้องระบุความสามารถในการเปลี่ยนแปลงได้ของออบเจ็กต์ PendingIntent แต่ละรายการที่แอปสร้างขึ้น ข้อกำหนดเพิ่มเติมนี้จะช่วยปรับปรุงความปลอดภัยของแอป
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่Intent รอดำเนินการต้องประกาศความสามารถในการเปลี่ยนแปลงได้
|
PREVENT_SETTING_PASSWORD_QUALITY_ON_PARENT
รหัสการเปลี่ยนแปลง: 165573442
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
แอปผู้ดูแลระบบที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไปจะใช้ DevicePolicyManager.setPasswordQuality(ComponentName, int) เพื่อตั้งค่าคุณภาพของรหัสผ่านในอินสแตนซ์ DevicePolicyManager ที่ได้จากการเรียกใช้ DevicePolicyManager.getParentProfileInstance(ComponentName) ไม่ได้
แต่ควรใช้ DevicePolicyManager.setRequiredPasswordComplexity(int) เพื่อตั้งค่าข้อกำหนดรหัสผ่านแบบคร่าวๆ ทั่วทั้งอุปกรณ์แทน
|
RATE_LIMIT_TOASTS
รหัสการเปลี่ยนแปลง: 174840628
สถานะเริ่มต้น: การเปลี่ยนแปลงนี้เปิด/ปิดไม่ได้ ระบบจะบันทึกไว้โดยเฟรมเวิร์กความเข้ากันได้เท่านั้น
เปิดใช้การจำกัดอัตราคำขอสำหรับจำนวนการเรียกใช้ Toast.show() เพื่อป้องกันไม่ให้ผู้ใช้ได้รับข้อความโทสต์มากเกินไปในเวลาที่จำกัด ความพยายามใดๆ ในการแสดงข้อความป๊อปอัปมากกว่าที่อนุญาตในกรอบเวลาหนึ่งๆ จะส่งผลให้ระบบทิ้งข้อความป๊อปอัปนั้น
|
REQUIRE_EXACT_ALARM_PERMISSION
รหัสการเปลี่ยนแปลง: 171306433
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป แอปต้องมีสิทธิ์ Manifest.permission.SCHEDULE_EXACT_ALARM เพื่อใช้ API สำหรับการตั้งค่าการปลุกในเวลาที่แน่นอน เช่น setExactAndAllowWhileIdle(int, long, PendingIntent) และ setAlarmClock(AlarmClockInfo, PendingIntent)
|
REQUIRE_READ_PHONE_STATE_PERMISSION_FOR_ACTIVE_DATA_SUB_ID
รหัสการเปลี่ยนแปลง: 182478738
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป แอปต้องมีสิทธิ์ Manifest.permission.READ_PHONE_STATE เพื่อเรียกใช้ TelephonyCallback.ActiveDataSubscriptionIdListener
|
REQUIRE_READ_PHONE_STATE_PERMISSION_FOR_CELL_INFO
รหัสการเปลี่ยนแปลง: 184323934
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป แอปต้องมีสิทธิ์ Manifest.permission.READ_PHONE_STATE เพื่อเรียกใช้ TelephonyCallback.CellInfoListener
|
REQUIRE_READ_PHONE_STATE_PERMISSION_FOR_DISPLAY_INFO
รหัสการเปลี่ยนแปลง: 183164979
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป แอปต้องมีสิทธิ์ Manifest.permission.READ_PHONE_STATE เพื่อเรียกใช้ TelephonyCallback.DisplayInfoListener
|
RESTRICT_ADB_BACKUP
รหัสการเปลี่ยนแปลง: 171032338
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ระบบจะเปิด adb backup โดยอัตโนมัติสำหรับแอปที่ทำงานแบบแก้ไขข้อบกพร่องได้ (android:debuggable ตั้งค่าเป็น true) และไม่พร้อมใช้งานสำหรับแอปอื่นๆ
|
RESTRICT_DOMAINS
รหัสการเปลี่ยนแปลง: 175408749
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป คุณต้องใช้ API การยืนยัน App Link รูปแบบที่อัปเดตแล้ว ข้อกำหนดนี้หมายความว่าแอปต้องประกาศโดเมนภายในตัวกรอง Intent ที่มีข้อมูลต่อไปนี้ทั้งหมด
android:autoVerify="true"
Intent.ACTION_VIEW
Intent.CATEGORY_BROWSABLE
Intet.CATEGORY_DEFAULT
- เฉพาะ
IntentFilter.SCHEME_HTTP และ/หรือ IntentFilter.SCHEME_HTTPS โดยไม่มีรูปแบบอื่นๆ
ใน Android เวอร์ชันก่อนหน้า Intent.CATEGORY_BROWSABLE ไม่ใช่ข้อกำหนด ระบบอนุญาตรูปแบบอื่นๆ และการตั้งค่า autoVerify เป็น true ในตัวกรอง Intent ใดๆ จะถือว่าตัวกรอง Intent ทั้งหมดตั้งค่าเป็น autoVerify="true" โดยปริยาย
|
SECURITY_EXCEPTION_ON_INVALID_ATTRIBUTION_TAG_CHANGE
รหัสการเปลี่ยนแปลง: 151105954
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ระบบจะบังคับใช้ว่า attributionTags ทั้งหมดที่ส่งไปยัง noteOp(String, int, String), noteProxyOp(String, String) และ startOp(String, int, String) จะได้รับการกำหนดไว้ในไฟล์ Manifest ของแพ็กเกจที่ระบุเป็นพารามิเตอร์ของเมธอด
หากต้องการเปิดใช้การเปลี่ยนแปลงนี้ ทั้งแพ็กเกจที่เรียกใช้ noteOp(String, int, String) และแพ็กเกจที่ระบุเป็นพารามิเตอร์ของเมธอดต้องเปิดใช้การเปลี่ยนแปลงนี้
|
SELINUX_LATEST_CHANGES
รหัสการเปลี่ยนแปลง: 143539591
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป ให้เลือกใช้การเปลี่ยนแปลง SELinux ล่าสุด การปิดการเปลี่ยนแปลงนี้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไปจะไม่มีผลใดๆ และไม่มีผลกับแอปที่ใช้รหัสผู้ใช้ที่แชร์
|
SETTINGS_API_V2
รหัสการเปลี่ยนแปลง: 178111421
สถานะเริ่มต้น: เปิดใช้สำหรับแอปทั้งหมด
API ค่ากำหนดของผู้ใช้ใหม่สำหรับการยืนยันโดเมนที่ทำเครื่องหมาย autoVerify=true ในตัวกรอง Intent ของ AndroidManifest.xml ยังไม่ได้นำไปใช้ในตัวอย่างแพลตฟอร์มปัจจุบัน ในตอนนี้ คุณสามารถดูตัวอย่างการเปลี่ยนแปลงค่ากำหนดของผู้ใช้ใหม่ได้โดยเปิดใช้ ChangeId นี้และใช้คำสั่ง adb shell pm set-app-links-user-selection และคำสั่งที่คล้ายกัน
|
USE_SHORT_FGS_USAGE_INTERACTION_TIME
รหัสการเปลี่ยนแปลง: 183972877
สถานะเริ่มต้น: เปิดใช้สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป
สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (ระดับ API 31) ขึ้นไป จะกำหนดว่าจะใช้ระยะหมดเวลาที่สั้นลงก่อนที่จะยกระดับที่เก็บสแตนด์บายเป็น ACTIVE เมื่อแอปเริ่มบริการที่ทำงานอยู่เบื้องหน้าหรือไม่
|