در دستگاههای دارای Android 10 (سطح API 29) و بالاتر، میتوانید به پلتفرم بگویید که کد DEX تعبیهشده را مستقیماً از فایل APK برنامه شما اجرا کند. این گزینه می تواند به جلوگیری از حمله کمک کند اگر مهاجمی بتواند کدهای کامپایل شده محلی روی دستگاه را دستکاری کند.
اگر از سیستم ساخت Gradle استفاده می کنید، برای فعال کردن این ویژگی موارد زیر را انجام دهید:
ویژگی
android::useEmbeddedDex
را در عنصر<application>
فایل مانیفست برنامه خود رویtrue
تنظیم کنید.useLegacyPackaging
در فایلbuild.gradle.kts
در سطح ماژول رویfalse
قرار دهید (اگر از Groovy استفاده می کنید فایلbuild.gradle
).کاتلین
packagingOptions { dex { useLegacyPackaging = false } }
شیار
packagingOptions { dex { useLegacyPackaging false } }
اگر از سیستم ساخت Bazel استفاده میکنید، برای فعال کردن این ویژگی، ویژگی android:useEmbeddedDex
را در عنصر <application>
فایل مانیفست برنامه خود روی true
تنظیم کنید و فایلهای DEX را فشردهنشده رها کنید:
android_binary( ... nocompress_extensions = [".dex"], ){% کلمه به کلمه %}
برای شما توصیه می شود
- توجه: وقتی جاوا اسکریپت خاموش است، متن پیوند نمایش داده می شود
- تپجک زدن
- android:exported
- # مدیریت کلید {:#key-management}