ในอุปกรณ์ที่ใช้ Android 10 (API ระดับ 29) ขึ้นไป คุณสามารถบอกแพลตฟอร์มให้เรียกใช้ โค้ด DEX แบบฝังจากไฟล์ APK ของแอปได้โดยตรง ตัวเลือกนี้ช่วย ป้องกันการโจมตีได้หากผู้โจมตีสามารถดัดแปลงโค้ดที่คอมไพล์ในเครื่อง บนอุปกรณ์ได้
หากคุณใช้ระบบบิลด์ Gradle และต้องการเปิดใช้ฟีเจอร์นี้ ให้ทำดังนี้
ตั้งค่าแอตทริบิวต์
android::useEmbeddedDexเป็นtrueในองค์ประกอบ<application>ของไฟล์ Manifest ของแอปตั้งค่า
useLegacyPackagingเป็นfalseใน ไฟล์build.gradle.ktsระดับโมดูล (ไฟล์build.gradleหากใช้ Groovy)Kotlin
packagingOptions { dex { useLegacyPackaging = false } }
Groovy
packagingOptions { dex { useLegacyPackaging false } }
หากคุณใช้ระบบบิลด์ Bazel และต้องการเปิดใช้ฟีเจอร์นี้ ให้ตั้งค่าแอตทริบิวต์ android:useEmbeddedDex เป็น true ในองค์ประกอบ <application> ของไฟล์ Manifest ของแอป และปล่อยให้ไฟล์ DEX ไม่มีการบีบอัด
android_binary( ... nocompress_extensions = [".dex"], )
แนะนำสำหรับคุณ
- หมายเหตุ: ข้อความลิงก์จะแสดงเมื่อ JavaScript ปิดอยู่
- การหลอกให้แตะ
- android:exported
- # การจัดการคีย์ {:#key-management}