Как запустить встроенный код DEX прямо из APK
Выпущена первая альфа Android Q Он поддерживает запуск встроенного кода DEX непосредственно из APK. Как включить это в файле Gradle?
1 ответ
Согласно документации разработчиков Android:
Теперь вы можете указать платформе запускать встроенный код DEX непосредственно из файла APK вашего приложения. Эта опция может помочь предотвратить атаку, если злоумышленнику когда-либо удалось вмешаться в локально скомпилированный код на устройстве.
Чтобы включить эту функцию, установите для атрибута android: useEmbeddedDex значение true в элементе файла манифеста вашего приложения. Вы также должны создать APK, содержащий несжатый код DEX, к которому ART может получить прямой доступ. Добавьте следующие параметры в файл конфигурации Gradle или Bazel, чтобы создать APK с несжатым кодом DEX:
Gradle
aaptOptions {
noCompress 'dex'
}
В файле манифеста:
<application
...
android:useEmbeddedDex="true">
...
</application>
Имейте в виду, что атрибут this используется только в API уровня 28 и выше.