<แอปพลิเคชัน>

ไวยากรณ์:
<application android:allowTaskReparenting=["true" | "false"]
             android:allowBackup=["true" | "false"]
             android:allowClearUserData=["true" | "false"]
             android:allowCrossUidActivitySwitchFromBelow=["true" | "false"]
             android:allowNativeHeapPointerTagging=["true" | "false"]
             android:appCategory=["accessibility" | "audio" | "game" |
             "image" | "maps" | "news" | "productivity" | "social" | "video"]
             android:backupAgent="string"
             android:backupInForeground=["true" | "false"]
             android:banner="drawable resource"
             android:dataExtractionRules="string resource"
             android:debuggable=["true" | "false"]
             android:description="string resource"
             android:enabled=["true" | "false"]
             android:enabledOnBackInvokedCallback=["true" | "false"]
             android:extractNativeLibs=["true" | "false"]
             android:fullBackupContent="string"
             android:fullBackupOnly=["true" | "false"]
             android:gwpAsanMode=["always" | "never"]
             android:hasCode=["true" | "false"]
             android:hasFragileUserData=["true" | "false"]
             android:hardwareAccelerated=["true" | "false"]
             android:icon="drawable resource"
             android:isGame=["true" | "false"]
             android:isMonitoringTool=["parental_control" | "enterprise_management" |
             "other"]
             android:killAfterRestore=["true" | "false"]
             android:largeHeap=["true" | "false"]
             android:label="string resource"
             android:logo="drawable resource"
             android:manageSpaceActivity="string"
             android:name="string"
             android:networkSecurityConfig="xml resource"
             android:permission="string"
             android:persistent=["true" | "false"]
             android:process="string"
             android:restoreAnyVersion=["true" | "false"]
             android:requestLegacyExternalStorage=["true" | "false"]
             android:requiredAccountType="string"
             android:resizeableActivity=["true" | "false"]
             android:restrictedAccountType="string"
             android:supportsRtl=["true" | "false"]
             android:taskAffinity="string"
             android:testOnly=["true" | "false"]
             android:theme="resource or theme"
             android:uiOptions=["none" | "splitActionBarWhenNarrow"]
             android:usesCleartextTraffic=["true" | "false"]
             android:vmSafeMode=["true" | "false"] >
    . . .
</application>
อยู่ใน
<manifest>
อาจมีข้อมูลต่อไปนี้
<activity>
<activity-alias>
<meta-data>
<service>
<receiver>
<profileable>
<provider>
<uses-library>
<uses-native-library>
description:

การประกาศของแอปพลิเคชัน องค์ประกอบนี้มีองค์ประกอบย่อยที่ประกาศคอมโพเนนต์ของแอปพลิเคชันแต่ละรายการ และมีแอตทริบิวต์ที่ส่งผลต่อคอมโพเนนต์ทั้งหมด

แอตทริบิวต์เหล่านี้จำนวนมาก เช่น icon, label, permission, process, taskAffinity และ allowTaskReparenting จะตั้งค่าเริ่มต้นสำหรับแอตทริบิวต์ที่เกี่ยวข้องขององค์ประกอบคอมโพเนนต์ ส่วนค่าอื่นๆ เช่น debuggable, enabled, description และ allowClearUserData จะกำหนดค่าสำหรับแอปพลิเคชันโดยรวม และคอมโพเนนต์จะลบล้างไม่ได้

แอตทริบิวต์
android:allowTaskReparenting
กิจกรรมที่แอปพลิเคชันกำหนดสามารถย้ายจากงานเริ่มต้นไปยังงานที่แอปพลิเคชันมีความเกี่ยวข้องได้หรือไม่เมื่อระบบแสดงงานนั้นขึ้นมา โดยจะเป็น "true" หากนักเรียนย้ายได้ และ "false" หากต้องทำงานในตำแหน่งที่เริ่ม ค่าเริ่มต้นคือ "false"

องค์ประกอบ <activity> มีแอตทริบิวต์ allowTaskReparenting ของตัวเองซึ่งสามารถลบล้างค่าที่ตั้งไว้ที่นี่

android:allowBackup

อนุญาตให้แอปพลิเคชันเข้าร่วมการสำรองข้อมูลและกู้คืนโครงสร้างพื้นฐานหรือไม่ หากตั้งค่าแอตทริบิวต์นี้เป็น "false" ระบบจะไม่ทำการสํารองหรือกู้คืนแอปพลิเคชัน แม้แต่การสำรองข้อมูลทั้งระบบที่ทําให้ระบบบันทึกข้อมูลแอปพลิเคชันทั้งหมดโดยใช้ adb ค่าเริ่มต้นของแอตทริบิวต์นี้คือ "true"

หมายเหตุ: สำหรับแอปที่กำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป ลักษณะการทํางานนี้จะแตกต่างกันไป ในอุปกรณ์จากผู้ผลิตบางราย คุณจะปิดใช้การย้ายข้อมูลไฟล์ของแอปจากอุปกรณ์หนึ่งไปยังอีกอุปกรณ์หนึ่งไม่ได้

อย่างไรก็ตาม คุณสามารถปิดใช้การสำรองและคืนค่าไฟล์ของแอปในระบบคลาวด์ได้โดยการตั้งค่าแอตทริบิวต์นี้เป็น "false" แม้ว่าแอปจะกำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไปก็ตาม

ดูข้อมูลเพิ่มเติมได้ที่ส่วนการสํารองและคืนค่าของหน้าเว็บที่อธิบายการเปลี่ยนแปลงลักษณะการทํางานสําหรับแอปที่กําหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป

android:allowClearUserData

อนุญาตให้แอปพลิเคชันรีเซ็ตข้อมูลผู้ใช้หรือไม่ ข้อมูลนี้รวมถึงธงต่างๆ เช่น ผู้ใช้เคยเห็นเคล็ดลับเริ่มต้นหรือไม่ รวมถึงการตั้งค่าและค่ากําหนดที่กำหนดเองได้ ค่าเริ่มต้นของแอตทริบิวต์นี้คือ "true"

หมายเหตุ: เฉพาะแอปที่เป็นส่วนหนึ่งของอิมเมจระบบเท่านั้นที่จะประกาศแอตทริบิวต์นี้ได้อย่างชัดเจน แอปของบุคคลที่สามจะใส่แอตทริบิวต์นี้ในไฟล์ Manifest ไม่ได้

โปรดดูข้อมูลเพิ่มเติมที่หัวข้อภาพรวมการสำรองข้อมูล

android:allowCrossUidActivitySwitchFromBelow

ระบุว่ากิจกรรมที่อยู่ด้านล่างกิจกรรมนี้ในภารกิจสามารถเริ่มกิจกรรมอื่นๆ หรือทํางานให้เสร็จสิ้นได้หรือไม่

ตั้งแต่วันที่ Build.VERSION_CODES.VANILLA_ICE_CREAM เป็นต้นไป แอปอาจถูกบล็อกไม่ให้เริ่มกิจกรรมใหม่หรือทำงานให้เสร็จสิ้น เว้นแต่กิจกรรมหลักของงานดังกล่าวจะเป็นของ UID เดียวกันเพื่อเหตุผลด้านความปลอดภัย

การตั้งค่า Flag นี้เป็น true จะช่วยให้แอปที่เปิดใช้งานละเว้นข้อจำกัดได้หากกิจกรรมนี้อยู่ด้านบน แอปที่ตรงกับ UID ของกิจกรรมนี้จะได้รับการยกเว้นเสมอ

ดูข้อมูลเพิ่มเติมได้ที่การเปิดกิจกรรมเบื้องหลังที่ปลอดภัย

android:allowNativeHeapPointerTagging

แอปเปิดใช้ฟีเจอร์การติดแท็กเคอร์เซอร์กองขยะหรือไม่ ค่าเริ่มต้นของแอตทริบิวต์นี้คือ "true"

หมายเหตุ: การปิดใช้ฟีเจอร์นี้ไม่ได้แก้ไขปัญหาเกี่ยวกับคุณภาพโค้ดพื้นฐาน อุปกรณ์ฮาร์ดแวร์ในอนาคตอาจไม่รองรับแท็กไฟล์ Manifest นี้

ดูข้อมูลเพิ่มเติมได้ที่เคอร์เซอร์ที่ติดแท็ก

android:appCategory

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

ต้องเป็นค่าคงที่ค่าใดค่าหนึ่งต่อไปนี้

ค่าคำอธิบาย
accessibilityแอปที่เป็นแอปการช่วยเหลือพิเศษเป็นหลัก เช่น โปรแกรมอ่านหน้าจอ
audioแอปที่ทำงานกับเสียงหรือเพลงเป็นหลัก เช่น เครื่องเล่นเพลง
gameแอปที่เป็นเกมเป็นหลัก
imageแอปที่ทำงานกับรูปภาพเป็นหลัก เช่น แอปกล้องหรือแกลเลอรี
mapsแอปที่เป็นแอปแผนที่เป็นหลัก เช่น แอปการนำทาง
newsแอปที่เป็นแอปข่าวเป็นหลัก เช่น หนังสือพิมพ์ นิตยสาร หรือแอปกีฬา
productivityแอปที่เน้นเป็นแอปเพื่อการทำงาน เช่น พื้นที่เก็บข้อมูลระบบคลาวด์หรือแอปสำหรับที่ทำงาน
socialแอปที่เป็นแอปโซเชียลเป็นหลัก เช่น แอปรับส่งข้อความ การสื่อสาร อีเมล หรือแอปเครือข่ายสังคม
videoแอปที่ทำงานกับวิดีโอหรือภาพยนตร์เป็นหลัก เช่น แอปสตรีมมิงวิดีโอ

android:backupAgent
ชื่อคลาสที่ใช้ตัวแทนการสำรองข้อมูลของแอปพลิเคชัน ซึ่งเป็นคลาสย่อยของ BackupAgent ค่าแอตทริบิวต์คือชื่อคลาสที่มีคุณสมบัติครบถ้วน เช่น "com.example.project.MyBackupAgent" อย่างไรก็ตาม หากอักขระแรกของชื่อคือจุด เช่น ".MyBackupAgent" ระบบจะต่อท้ายชื่อแพ็กเกจที่ระบุไว้ในองค์ประกอบ <manifest>

ไม่มีค่าเริ่มต้น ชื่อต้องเฉพาะเจาะจง

android:backupInForeground
บ่งบอกว่าการดำเนินการการสํารองข้อมูลอัตโนมัติสามารถดําเนินการในแอปนี้ได้แม้ว่าแอปจะอยู่ในสถานะที่เทียบเท่าเบื้องหน้า ระบบจะปิดแอประหว่างการดำเนินการสำรองข้อมูลอัตโนมัติ ดังนั้นโปรดใช้แอตทริบิวต์นี้ด้วยความระมัดระวัง การตั้งค่า Flag นี้เป็น "true" อาจส่งผลต่อลักษณะการทํางานของแอปขณะที่แอปทำงานอยู่

ค่าเริ่มต้นคือ "false" ซึ่งหมายความว่าระบบปฏิบัติการจะหลีกเลี่ยงการสำรองข้อมูลแอปขณะที่ทำงานอยู่เบื้องหน้า เช่น แอปเพลงที่เล่นเพลงอยู่โดยใช้บริการในสถานะ startForeground()

android:banner
ทรัพยากร Drawable ที่แสดงแบนเนอร์กราฟิกแบบขยายสำหรับรายการที่เกี่ยวข้อง ใช้กับแท็ก <application> เพื่อแสดงแบนเนอร์เริ่มต้นสําหรับกิจกรรมทั้งหมดของแอปพลิเคชัน หรือใช้กับแท็ก <activity>เพื่อแสดงแบนเนอร์สําหรับกิจกรรมที่เฉพาะเจาะจง

ระบบจะใช้แบนเนอร์เพื่อแสดงแอปในหน้าจอหลักของ Android TV ดังนั้น ให้ระบุแอปพลิเคชันที่มีกิจกรรมที่จัดการกับ Intent CATEGORY_LEANBACK_LAUNCHER เท่านั้น

แอตทริบิวต์นี้ตั้งค่าเป็นการอ้างอิงไปยังทรัพยากรที่วาดได้ซึ่งมีรูปภาพ เช่น "@drawable/banner" ไม่มีแบนเนอร์เริ่มต้น

ดูข้อมูลเพิ่มเติมได้ที่ ระบุแบนเนอร์หน้าจอหลัก

android:dataExtractionRules

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

ดูข้อมูลเกี่ยวกับรูปแบบของไฟล์ XML ได้ที่การสํารองและกู้คืนข้อมูล

android:debuggable
แอปพลิเคชันแก้ไขข้อบกพร่องได้หรือไม่ แม้ว่าจะทำงานในอุปกรณ์ในโหมดผู้ใช้ก็ตาม จะเป็น "true" หากดำเนินการได้ และ "false" หากดำเนินการไม่ได้ ค่าเริ่มต้นคือ "false"
android:description
ข้อความที่ผู้ใช้อ่านได้เกี่ยวกับแอปพลิเคชัน ซึ่งยาวกว่าและสื่อความหมายมากกว่าป้ายกำกับแอปพลิเคชัน ค่าจะตั้งเป็นข้อมูลอ้างอิงไปยังทรัพยากรสตริง ซึ่งต่างจากป้ายกำกับตรงที่ชื่อต้องไม่ใช่สตริงดิบ ไม่มีค่าเริ่มต้น
android:enabled
ระบบ Android สามารถสร้างอินสแตนซ์ของคอมโพเนนต์ของแอปพลิเคชันได้หรือไม่ จะเป็น "true" หากทำได้ และ "false"หากไม่ หากค่าคือ "true" แอตทริบิวต์ enabled ของคอมโพเนนต์แต่ละรายการจะกำหนดว่าเปิดใช้คอมโพเนนต์นั้นหรือไม่ หากค่าคือ "false" ระบบจะลบล้างค่าเฉพาะคอมโพเนนต์และปิดใช้คอมโพเนนต์ทั้งหมด

ค่าเริ่มต้นคือ "true"

android:enableOnBackInvokedCallback
Flag นี้ช่วยให้คุณเลือกไม่ใช้ภาพเคลื่อนไหวของระบบแบบคาดเดาที่ระดับแอปได้

การตั้งค่า android:enableOnBackInvokedCallback=false จะปิดภาพเคลื่อนไหวย้อนกลับแบบคาดการณ์ที่ระดับกิจกรรมหรือระดับแอป ทั้งนี้ขึ้นอยู่กับตำแหน่งที่คุณตั้งค่าแท็ก และสั่งให้ระบบไม่สนใจการเรียก API ของแพลตฟอร์ม OnBackInvokedCallback

android:extractNativeLibs

ตั้งแต่ AGP 4.2.0 เป็นต้นไป ตัวเลือก DSL useLegacyPackaging จะแทนที่แอตทริบิวต์ไฟล์ Manifest extractNativeLibs ใช้ useLegacyPackaging ในไฟล์ build.gradle ของแอปแทน extractNativeLibs ในไฟล์ Manifest เพื่อกำหนดค่าลักษณะการบีบอัดไลบรารีแบบเนทีฟ ดูข้อมูลเพิ่มเติมได้ที่บันทึกประจำรุ่น ใช้ DSL เพื่อแพ็กเกจไลบรารีเนทีฟที่บีบอัด

แอตทริบิวต์นี้จะระบุว่าโปรแกรมติดตั้งแพ็กเกจจะดึงข้อมูลไลบรารีแบบเนทีฟจาก APK ไปยังระบบไฟล์หรือไม่ หากตั้งค่าเป็น "false" ระบบจะจัดเก็บไลบรารีแบบเนทีฟโดยไม่บีบอัดไว้ใน APK แม้ว่า APK อาจใหญ่ขึ้น แต่แอปพลิเคชันจะโหลดเร็วขึ้นเนื่องจากไลบรารีจะโหลดจาก APK โดยตรงเมื่อรันไทม์

ค่าเริ่มต้นของ extractNativeLibs ขึ้นอยู่กับ minSdkVersion และเวอร์ชัน AGP ที่คุณใช้ ในกรณีส่วนใหญ่ ลักษณะการทํางานเริ่มต้นอาจเป็นลักษณะที่คุณต้องการ และคุณไม่จําเป็นต้องตั้งค่าแอตทริบิวต์นี้อย่างชัดเจน

android:fullBackupContent
แอตทริบิวต์นี้จะชี้ไปยังไฟล์ XML ที่มีกฎการสำรองข้อมูลแบบเต็มสําหรับการสำรองข้อมูลอัตโนมัติ กฎเหล่านี้เป็นตัวกำหนดว่าระบบจะสำรองข้อมูลไฟล์ใด ดูข้อมูลเพิ่มเติมได้ที่ไวยากรณ์การกําหนดค่า XML สำหรับการสำรองข้อมูลอัตโนมัติ

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

android:fullBackupOnly
แอตทริบิวต์นี้จะระบุว่าจะใช้การสำรองข้อมูลอัตโนมัติในอุปกรณ์ที่พร้อมให้บริการหรือไม่ หากตั้งค่าเป็น "true" แอปจะทำการสำรองข้อมูลอัตโนมัติเมื่อติดตั้งในอุปกรณ์ที่ใช้ Android 6.0 (API ระดับ 23) ขึ้นไป ในอุปกรณ์รุ่นเก่า แอปจะไม่สนใจแอตทริบิวต์นี้และจะดำเนินการการสํารองข้อมูลคีย์/ค่า

ค่าเริ่มต้นคือ "false"

android:gwpAsanMode
แอตทริบิวต์นี้จะระบุว่าจะใช้ GWP-ASan ซึ่งเป็นฟีเจอร์ตัวจัดสรรหน่วยความจําของระบบที่จะช่วยค้นหาข้อบกพร่องการใช้งานหลังช่วงใช้ฟรี (Use After Free) และบัฟเฟอร์ล้นฮีป (Heap Buffer Overflow) หรือไม่

ค่าเริ่มต้นคือ "never"

android:hasCode
แอปพลิเคชันมีโค้ด DEX หรือไม่ ซึ่งก็คือโค้ดที่ใช้ภาษาโปรแกรม Kotlin หรือ Java โดยค่าเริ่มต้นจะเป็น "true" หากมีและ "false" หากไม่มี เมื่อค่าเป็น "false" ระบบจะไม่พยายามโหลดโค้ดแอปพลิเคชันใดๆ เมื่อเปิดใช้งานคอมโพเนนต์ ค่าเริ่มต้นคือ "true"

หากแอปพลิเคชันมีโค้ดแบบเนทีฟ (C/C++) แต่ไม่มีโค้ด DEX ก็ควรตั้งค่าเป็น "false" หากตั้งค่าเป็น "true" เมื่อ APK ไม่มีโค้ด DEX แอปอาจโหลดไม่สำเร็จ

พร็อพเพอร์ตี้นี้ต้องพิจารณาโค้ดที่รวมอยู่ในแอปพลิเคชันโดยพิจารณาจากข้อกําหนดของโค้ด หากแอปพลิเคชันใช้ AAR ที่ใช้โค้ด Java/Kotlin หรือใช้ JAR โดยตรง app:hasCode ต้องเป็น "true" หรือจะละเว้นก็ได้เนื่องจากเป็นค่าเริ่มต้น

ตัวอย่างเช่น แอปของคุณอาจรองรับการนำส่งฟีเจอร์ Play และรวมโมดูลฟีเจอร์ที่ไม่สร้างไฟล์ DEX ซึ่งเป็นไบต์โค้ดที่เพิ่มประสิทธิภาพสำหรับแพลตฟอร์ม Android ในกรณีนี้ คุณต้องตั้งค่าพร็อพเพอร์ตี้นี้เป็น "false" ในไฟล์ Manifest ของโมดูลเพื่อหลีกเลี่ยงข้อผิดพลาดรันไทม์

android:hasFragileUserData
แสดงข้อความแจ้งให้ผู้ใช้เก็บข้อมูลของแอปไว้เมื่อผู้ใช้ถอนการติดตั้งแอปหรือไม่ ค่าเริ่มต้นคือ "false"
android:hardwareAccelerated
เปิดใช้การแสดงผลที่มีการเร่งด้วยฮาร์ดแวร์สำหรับกิจกรรมและมุมมองทั้งหมดในแอปพลิเคชันนี้หรือไม่ ค่าจะเป็น "true" หากเปิดใช้ และ "false" หากไม่ได้เปิดใช้ ค่าเริ่มต้นคือ "true" หากคุณตั้งค่า minSdkVersion หรือ targetSdkVersion เป็น "14" ขึ้นไป มิเช่นนั้นจะเป็น "false"

ตั้งแต่ Android 3.0 (API ระดับ 11) เป็นต้นไป โปรแกรมแสดงผล OpenGL ที่เร่งด้วยฮาร์ดแวร์จะพร้อมใช้งานสำหรับแอปพลิเคชันเพื่อปรับปรุงประสิทธิภาพของการดำเนินการกราฟิก 2 มิติทั่วไปหลายรายการ เมื่อเปิดใช้โปรแกรมแสดงผลที่เร่งด้วยฮาร์ดแวร์ ระบบจะเร่งการดำเนินการส่วนใหญ่ใน Canvas, Paint, Xfermode, ColorFilter, Shader และ Camera

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

การดำเนินการ OpenGL 2D บางรายการอาจไม่ได้รับการเร่ง หากคุณเปิดใช้โปรแกรมแสดงผลที่เร่งด้วยฮาร์ดแวร์ ให้ทดสอบแอปพลิเคชันเพื่อให้ใช้โปรแกรมแสดงผลได้โดยไม่มีข้อผิดพลาด

ดูข้อมูลเพิ่มเติมได้ที่คู่มือการเร่งด้วยฮาร์ดแวร์

android:icon
ไอคอนสำหรับแอปพลิเคชันโดยรวมและไอคอนเริ่มต้นสำหรับคอมโพเนนต์แต่ละรายการของแอปพลิเคชัน ดูแอตทริบิวต์ icon แต่ละรายการสำหรับองค์ประกอบ <activity>, <activity-alias>, <service>, <receiver> และ <provider>

แอตทริบิวต์นี้ตั้งค่าเป็นการอ้างอิงไปยังทรัพยากรที่วาดได้ซึ่งมีรูปภาพ เช่น "@drawable/icon" ไม่มีไอคอนเริ่มต้น

android:isGame
แอปพลิเคชันเป็นเกมหรือไม่ ระบบอาจจัดกลุ่มแอปพลิเคชันที่จัดประเภทเป็นเกมไว้ด้วยกัน หรือแสดงแอปพลิเคชันเหล่านั้นแยกจากแอปพลิเคชันอื่นๆ ค่าเริ่มต้นคือ "false"
android:isMonitoringTool

บ่งชี้ว่าแอปพลิเคชันนี้ออกแบบมาเพื่อตรวจสอบบุคคลอื่น

หมายเหตุ: หากแอปประกาศแอตทริบิวต์นี้ในไฟล์ Manifest นักพัฒนาแอปต้องปฏิบัติตามนโยบายสตอล์กเกอร์แวร์เพื่อเผยแพร่แอปใน Google Play

ไม่มีค่าเริ่มต้น นักพัฒนาแอปต้องระบุค่าใดค่าหนึ่งต่อไปนี้

ค่าคำอธิบาย
"parental_control"แอปที่รองรับการควบคุมโดยผู้ปกครองและกำหนดเป้าหมายไปยังผู้ปกครองที่ต้องการดูแลบุตรหลานให้ปลอดภัยโดยเฉพาะ
"enterprise_management"แอปที่รองรับองค์กรที่ต้องการจัดการและติดตามอุปกรณ์ที่มอบให้แก่พนักงาน
"other"แอปรองรับ Use Case ที่ไม่ได้ระบุไว้ในตารางนี้
android:killAfterRestore

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

ค่าเริ่มต้นคือ "true" ซึ่งหมายความว่าหลังจากแอปพลิเคชันประมวลผลข้อมูลเสร็จสิ้นในระหว่างการกู้คืนระบบทั้งหมดแล้ว แอปพลิเคชันจะสิ้นสุดการทำงาน

android:largeHeap

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

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

หากต้องการค้นหาขนาดหน่วยความจําที่พร้อมใช้งานขณะรันไทม์ ให้ใช้เมธอด getMemoryClass() หรือ getLargeMemoryClass()

android:label
ป้ายกำกับที่ผู้ใช้อ่านได้สำหรับทั้งแอปพลิเคชันและป้ายกำกับเริ่มต้นสำหรับคอมโพเนนต์แต่ละรายการของแอปพลิเคชัน ดูแอตทริบิวต์ label แต่ละรายการสำหรับองค์ประกอบ <activity>, <activity-alias>, <service>, <receiver> และ <provider>

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

android:logo
โลโก้สำหรับแอปพลิเคชันโดยรวมและโลโก้เริ่มต้นสำหรับกิจกรรม แอตทริบิวต์นี้ตั้งค่าเป็นการอ้างอิงไปยังทรัพยากรที่วาดได้ซึ่งมีรูปภาพ เช่น "@drawable/logo" ไม่มีโลโก้เริ่มต้น
android:manageSpaceActivity
ชื่อที่สมบูรณ์ของคลาสย่อย Activity ที่ระบบเปิดขึ้นเพื่อให้ผู้ใช้จัดการหน่วยความจําที่แอปพลิเคชันใช้อยู่ในอุปกรณ์ นอกจากนี้ ระบบยังประกาศกิจกรรมด้วยองค์ประกอบ <activity> ด้วย
android:name
ชื่อที่สมบูรณ์ของApplicationคลาสย่อยที่ใช้กับแอปพลิเคชัน เมื่อเริ่มกระบวนการสมัคร ระบบจะสร้างอินสแตนซ์ของคลาสนี้ก่อนคอมโพเนนต์ของแอปพลิเคชัน

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

android:networkSecurityConfig

ระบุชื่อไฟล์ XML ที่มีการกำหนดค่าความปลอดภัยของเครือข่ายของแอปพลิเคชัน ค่านี้เป็นข้อมูลอ้างอิงถึงไฟล์ทรัพยากร XML ที่มีการกำหนดค่า

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 24

android:permission
ชื่อสิทธิ์ที่ไคลเอ็นต์จําเป็นต้องใช้เพื่อโต้ตอบกับแอปพลิเคชัน แอตทริบิวต์นี้เป็นวิธีที่สะดวกในการกำหนดสิทธิ์ที่มีผลกับคอมโพเนนต์ทั้งหมดของแอปพลิเคชัน ระบบจะเขียนทับแอตทริบิวต์นี้โดยการตั้งค่าแอตทริบิวต์ permission ของคอมโพเนนต์แต่ละรายการ

ดูข้อมูลเพิ่มเติมเกี่ยวกับสิทธิ์ได้ที่ส่วนสิทธิ์ในภาพรวมของไฟล์ Manifest ของแอปและเคล็ดลับด้านความปลอดภัย

android:persistent
แอปพลิเคชันทำงานอยู่ตลอดเวลาหรือไม่ โดยค่าเริ่มต้นจะเป็น "true" หากมีและ "false" หากไม่มี ค่าเริ่มต้นคือ "false" โดยปกติแล้วแอปพลิเคชันจะไม่ตั้งค่า Flag นี้ โหมดถาวรมีไว้สําหรับแอปพลิเคชันระบบบางรายการเท่านั้น
android:process
ชื่อกระบวนการที่คอมโพเนนต์ทั้งหมดของแอปพลิเคชันทำงาน คอมโพเนนต์แต่ละรายการจะลบล้างค่าเริ่มต้นนี้ได้โดยการกําหนดprocess แอตทริบิวต์ของตัวเอง

โดยค่าเริ่มต้น Android จะสร้างกระบวนการสําหรับแอปพลิเคชันเมื่อคอมโพเนนต์แรกต้องทํางาน จากนั้นคอมโพเนนต์ทั้งหมดจะทํางานในกระบวนการนั้น ชื่อของกระบวนการเริ่มต้นจะตรงกับชื่อแพ็กเกจที่องค์ประกอบ <manifest> กำหนด

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

หากชื่อที่กำหนดให้กับแอตทริบิวต์นี้ขึ้นต้นด้วยโคลอน (:) ระบบจะสร้างกระบวนการใหม่ที่เป็นส่วนตัวสำหรับแอปพลิเคชันเมื่อจำเป็น หากชื่อกระบวนการขึ้นต้นด้วยอักขระตัวพิมพ์เล็ก ระบบจะสร้างกระบวนการส่วนกลางที่มีชื่อนั้น กระบวนการส่วนกลางสามารถแชร์กับแอปพลิเคชันอื่นๆ ซึ่งจะช่วยลดการใช้ทรัพยากร

android:restoreAnyVersion
บ่งบอกว่าแอปพลิเคชันพร้อมที่จะพยายามกู้คืนชุดข้อมูลที่สำรองข้อมูลไว้ แม้ว่าการสำรองข้อมูลจะจัดเก็บโดยแอปพลิเคชันเวอร์ชันที่ใหม่กว่าเวอร์ชันที่ติดตั้งอยู่ในอุปกรณ์ก็ตาม การตั้งค่าแอตทริบิวต์นี้เป็น "true" จะช่วยให้เครื่องมือจัดการข้อมูลสำรองพยายามกู้คืนแม้ว่าเวอร์ชันจะไม่ตรงกันซึ่งบ่งชี้ว่าข้อมูลใช้ร่วมกันไม่ได้ โปรดใช้ด้วยความระมัดระวัง

ค่าเริ่มต้นของแอตทริบิวต์นี้คือ "false"

android:requestLegacyExternalStorage

แอปพลิเคชันต้องการเลือกไม่ใช้พื้นที่เก็บข้อมูลที่กำหนดขอบเขตหรือไม่

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

android:requiredAccountType
ระบุประเภทบัญชีที่จําเป็นสําหรับให้แอปพลิเคชันทํางานได้ หากแอปต้องใช้ Account ค่าของแอตทริบิวต์นี้ต้องตรงกับประเภทโปรแกรมตรวจสอบสิทธิ์ของบัญชีที่แอปใช้ตามที่ระบุโดย AuthenticatorDescription เช่น "com.google"

ค่าเริ่มต้นคือ Null และบ่งบอกว่าแอปพลิเคชันทำงานได้โดยไม่ต้องมีบัญชีใดๆ

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

ข้อควรระวัง: หากข้อมูลบัญชีอาจเปิดเผยข้อมูลที่ระบุตัวบุคคลได้ คุณควรประกาศแอตทริบิวต์นี้และปล่อย android:restrictedAccountType เป็นค่าว่าง เพื่อให้โปรไฟล์ที่ถูกจํากัดใช้แอปของคุณเพื่อเข้าถึงข้อมูลส่วนบุคคลที่เป็นของผู้ใช้ที่เป็นเจ้าของไม่ได้

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 18

android:resizeableActivity

ระบุว่าแอปรองรับโหมดหลายหน้าต่างหรือไม่ คุณตั้งค่าแอตทริบิวต์นี้ได้ในองค์ประกอบ <activity> หรือ <application>

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

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

สำหรับแอปที่กำหนดเป้าหมายเป็น API ระดับ 24 ขึ้นไป ค่าเริ่มต้นคือ "true"

หากแอปกำหนดเป้าหมายเป็น API ระดับ 31 ขึ้นไป แอตทริบิวต์นี้จะทำงานแตกต่างกันในหน้าจอขนาดเล็กและขนาดใหญ่ ดังนี้

  • หน้าจอขนาดใหญ่ (sw >= 600dp): แอปทั้งหมดรองรับโหมดหลายหน้าต่าง แอตทริบิวต์นี้ระบุว่าแอปปรับขนาดได้หรือไม่ ไม่ใช่ว่าแอปรองรับโหมดหลายหน้าต่างหรือไม่ หากเป็น resizeableActivity="false" ระบบจะใส่แอปไว้ในโหมดความเข้ากันได้เมื่อจำเป็นเพื่อให้สอดคล้องกับขนาดการแสดงผล
  • หน้าจอขนาดเล็ก (sw < 600dp): หาก resizeableActivity="true" และความกว้างและความสูงขั้นต่ำของกิจกรรมหลักอยู่ภายในข้อกำหนดของหลายหน้าต่าง แอปจะรองรับโหมดหลายหน้าต่าง หากเป็น resizeableActivity="false" แสดงว่าแอปไม่รองรับโหมดหลายหน้าต่าง ไม่ว่าจะมีความกว้างและความสูงขั้นต่ำของกิจกรรมเท่าใดก็ตาม

หมายเหตุ: ผู้ผลิตอุปกรณ์สามารถลบล้างลักษณะการทํางานของ API ระดับ 31 ได้

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 24

หมายเหตุ: ค่ากิจกรรมรูทของงานจะมีผลกับกิจกรรมเพิ่มเติมทั้งหมดที่เปิดใช้งานในนั้น กล่าวคือ หากกิจกรรมรูทของงานปรับขนาดได้ ระบบจะถือว่ากิจกรรมอื่นๆ ทั้งหมดในงานนี้ปรับขนาดได้ หากกิจกรรมรูทปรับขนาดไม่ได้ กิจกรรมอื่นๆ ในงานก็จะปรับขนาดไม่ได้

android:restrictedAccountType
ระบุประเภทบัญชีที่จําเป็นสําหรับแอปพลิเคชันนี้ และระบุว่าโปรไฟล์ที่จํากัดสามารถเข้าถึงบัญชีดังกล่าวซึ่งเป็นของผู้ใช้ที่เป็นเจ้าของ หากแอปกำหนดให้ต้องมี Account และโปรไฟล์ที่จํากัดสามารถเข้าถึงบัญชีของผู้ใช้หลัก ค่าของแอตทริบิวต์นี้ต้องตรงกับประเภทโปรแกรมตรวจสอบสิทธิ์บัญชีที่แอปของคุณใช้ตามที่ระบุโดย AuthenticatorDescription เช่น "com.google"

ค่าเริ่มต้นคือ null และบ่งบอกว่าแอปพลิเคชันจะทํางานได้โดยไม่ต้องมีบัญชีใดๆ

ข้อควรระวัง: การระบุแอตทริบิวต์นี้จะช่วยให้โปรไฟล์ที่ถูกจํากัดใช้แอปของคุณกับบัญชีที่เป็นของผู้ใช้ที่เป็นเจ้าของได้ ซึ่งอาจเปิดเผยข้อมูลส่วนบุคคลที่ระบุตัวบุคคลนั้นได้ หากบัญชีอาจเปิดเผยรายละเอียดส่วนบุคคล อย่าใช้แอตทริบิวต์นี้ แต่ให้ประกาศแอตทริบิวต์ android:requiredAccountType แทนเพื่อทำให้แอปไม่พร้อมให้บริการสำหรับโปรไฟล์ที่ถูกจำกัด

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 18

android:supportsRtl

ประกาศว่าแอปพลิเคชันของคุณพร้อมที่จะรองรับเลย์เอาต์แบบอ่านจากขวาไปซ้าย (RTL) หรือไม่

หากตั้งค่าเป็น "true" และtargetSdkVersionเป็น 17 ขึ้นไป ระบบจะเปิดใช้งานและใช้ RTL API ต่างๆ เพื่อให้แอปแสดงเลย์เอาต์ RTL ได้ หากตั้งค่าเป็น "false" หรือตั้งค่า targetSdkVersion เป็น 16 หรือต่ำกว่า ระบบจะไม่สนใจหรือ API แบบ RTL จะไม่มีผล และแอปจะทำงานเหมือนเดิมไม่ว่าจะกำหนดทิศทางเลย์เอาต์อย่างไรซึ่งเชื่อมโยงกับตัวเลือกภาษาของผู้ใช้ กล่าวคือ เลย์เอาต์ของคุณจะเป็นแบบจากซ้ายไปขวาเสมอ

ค่าเริ่มต้นของแอตทริบิวต์นี้คือ "false"

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 17

android:taskAffinity
ชื่อความสัมพันธ์ที่ใช้กับกิจกรรมทั้งหมดภายในแอปพลิเคชัน ยกเว้นกิจกรรมที่ตั้งค่าความสัมพันธ์อื่นกับแอตทริบิวต์ของตัวเองtaskAffinity ดูข้อมูลเพิ่มเติมในแอตทริบิวต์นั้น

โดยค่าเริ่มต้น กิจกรรมทั้งหมดภายในแอปพลิเคชันจะมีความสัมพันธ์เดียวกัน ชื่อของกลุ่มเป้าหมายนั้นเหมือนกับชื่อแพ็กเกจที่กําหนดโดยองค์ประกอบ <manifest>

android:testOnly
ระบุว่าแอปพลิเคชันนี้มีไว้เพื่อการทดสอบเท่านั้นหรือไม่ เช่น อาจเปิดเผยฟังก์ชันการทำงานหรือข้อมูลภายนอกซึ่งอาจทำให้เกิดช่องโหว่ด้านความปลอดภัย แต่มีประโยชน์สำหรับการทดสอบ APK ประเภทนี้จะติดตั้งได้ผ่าน adb เท่านั้น คุณเผยแพร่แอปไปยัง Google Play ไม่ได้

Android Studio จะเพิ่มแอตทริบิวต์นี้โดยอัตโนมัติเมื่อคุณคลิกเรียกใช้

android:theme
การอ้างอิงทรัพยากรสไตล์ที่กําหนดธีมเริ่มต้นสําหรับกิจกรรมทั้งหมดในแอปพลิเคชัน กิจกรรมแต่ละรายการสามารถลบล้างค่าเริ่มต้นได้โดยการตั้งค่าthemeแอตทริบิวต์ของตนเอง ดูข้อมูลเพิ่มเติมได้ที่สไตล์และธีม
android:uiOptions
ตัวเลือกเพิ่มเติมสําหรับ UI ของกิจกรรม ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้
ค่าคำอธิบาย
"none"ไม่มีตัวเลือก UI เพิ่มเติม ซึ่งเป็นค่าเริ่มต้น
"splitActionBarWhenNarrow"เพิ่มแถบที่ด้านล่างของหน้าจอเพื่อแสดงรายการการดำเนินการในแถบแอป หรือที่เรียกว่าแถบการทำงาน เมื่อมีพื้นที่แนวนอนจำกัด เช่น เมื่ออยู่ในโหมดแนวตั้งบนโทรศัพท์มือถือ แถบแอปจะแบ่งออกเป็นส่วนการนําทางด้านบนและแถบด้านล่างสําหรับรายการการดำเนินการแทนที่จะมีรายการการดำเนินการจํานวนน้อยปรากฏในแถบแอปที่ด้านบนของหน้าจอ ซึ่งหมายความว่าจะมีพื้นที่เพียงพอสำหรับรายการการดำเนินการ รวมถึงองค์ประกอบการนำทางและชื่อที่ด้านบน รายการในเมนูจะไม่แยกกันอยู่ใน 2 แถบ โดยจะปรากฏร่วมกันเสมอ

ดูข้อมูลเพิ่มเติมเกี่ยวกับแถบแอปได้ที่เพิ่มแถบแอป

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 14

android:usesCleartextTraffic
ระบุว่าแอปตั้งใจจะใช้การรับส่งข้อมูลในเครือข่ายแบบข้อความที่ไม่มีการเข้ารหัส เช่น HTTP แบบข้อความที่ไม่มีการเข้ารหัส หรือไม่ ค่าเริ่มต้นสำหรับแอปที่กำหนดเป้าหมายเป็น API ระดับ 27 หรือต่ำกว่าคือ "true" แอปที่กำหนดเป้าหมายเป็น API ระดับ 28 ขึ้นไปจะมีค่าเริ่มต้นเป็น "false"

เมื่อตั้งค่าแอตทริบิวต์เป็น "false" คอมโพเนนต์ของแพลตฟอร์ม เช่น สแต็ก HTTP และ FTP, DownloadManager และ MediaPlayer จะปฏิเสธคำขอของแอปในการใช้การรับส่งข้อมูลแบบข้อความธรรมดา

เราขอแนะนำอย่างยิ่งให้ไลบรารีของบุคคลที่สามปฏิบัติตามการตั้งค่านี้ด้วย เหตุผลหลักที่ควรหลีกเลี่ยงการรับส่งข้อมูลแบบข้อความธรรมดาคือไม่มีการรักษาข้อมูลเป็นความลับ ความถูกต้อง และการปกป้องจากการแทรกแซง ผู้โจมตีเครือข่ายสามารถดักฟังข้อมูลที่ส่งและแก้ไขข้อมูลดังกล่าวได้โดยที่ไม่มีใครตรวจพบ

ระบบจะดำเนินการตามการแจ้งนี้อย่างดีที่สุด เนื่องจากการป้องกันการรับส่งข้อมูลแบบข้อความธรรมดาทั้งหมดจากแอปพลิเคชัน Android นั้นเป็นไปไม่ได้เมื่อพิจารณาจากระดับการเข้าถึงที่มอบให้ ตัวอย่างเช่น ไม่มีใครคาดหวังว่า Socket API จะดำเนินการตาม Flag นี้ เนื่องจากไม่สามารถระบุได้ว่าการเข้าชมอยู่ในรูปแบบข้อความธรรมดาหรือไม่

อย่างไรก็ตาม การเข้าชมเครือข่ายส่วนใหญ่จากแอปพลิเคชันจะจัดการโดยสแต็กและคอมโพเนนต์เครือข่ายระดับที่สูงขึ้น ซึ่งสามารถดำเนินการตาม Flag นี้ได้โดยอ่านจาก ApplicationInfo.flags หรือ NetworkSecurityPolicy.isCleartextTrafficPermitted()

หมายเหตุ: WebView จะใช้แอตทริบิวต์นี้กับแอปพลิเคชันที่กําหนดเป้าหมายเป็น API ระดับ 26 ขึ้นไป

ในระหว่างการพัฒนาแอป คุณสามารถใช้ StrictMode เพื่อระบุการเข้าชมแบบข้อความธรรมดา (Cleartext) จากแอปได้ ดูข้อมูลเพิ่มเติมที่ StrictMode.VmPolicy.Builder.detectCleartextNetwork()

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 23

ระบบจะไม่สนใจ Flag นี้ใน Android 7.0 (API ระดับ 24) ขึ้นไปหากมี Android Network Security Config อยู่

android:vmSafeMode
ระบุว่าแอปต้องการให้เครื่องเสมือน (VM) ทํางานในโหมดปลอดภัยหรือไม่ ค่าเริ่มต้นคือ "false"

แอตทริบิวต์นี้เพิ่มเข้ามาใน API ระดับ 8 โดยค่า "true" จะปิดใช้คอมไพเลอร์แบบทันท่วงที (JIT) ของ Dalvik

แอตทริบิวต์นี้ได้รับการปรับใช้ใน API ระดับ 22 โดยค่า "true" จะปิดใช้คอมไพเลอร์ ART แบบล่วงหน้า (AOT)

เปิดตัวใน
API ระดับ 1
ดูข้อมูลเพิ่มเติมได้ที่
<activity>
<service>
<receiver>
<provider>