Android 10(API レベル 29)以上を実行しているデバイスでは、アプリの APK ファイルから埋め込み DEX コードを直接実行するようにプラットフォームに指示できます。この機能は、攻撃者がデバイス上のローカル コンパイル コードを改ざんした場合に、攻撃を防ぐのに役立ちます。
この機能を有効にするには、アプリのマニフェスト ファイルで <application>
要素の android:useEmbeddedDex
属性の値を true
に設定します。また、ART が直接アクセスできる非圧縮 DEX コードを含むように APK をビルドする必要があります。Gradle または Bazel の設定ファイルに次の設定を追加して、非圧縮 DEX コードを含む APK をビルドしてください。
Gradle
aaptOptions {
noCompress 'dex'
}
Bazel
android_binary( ... nocompress_extensions = [“.dex”], )