Esegui il codice DEX incorporato direttamente dall'APK

Sui dispositivi con Android 10 (livello API 29) e versioni successive, puoi chiedere alla piattaforma di eseguire il codice DEX incorporato direttamente dal file APK dell'app. Questa opzione può contribuire a difendersi da un attacco se un malintenzionato dovesse riuscire a manomettere il codice compilato localmente sul dispositivo.

Se utilizzi il sistema di compilazione Gradle, per attivare questa funzionalità:

  • Imposta l'attributo android::useEmbeddedDex su true nell'elemento <application> del file manifest dell'app.

  • Imposta useLegacyPackaging su false nel file build.gradle.kts a livello di modulo (file build.gradle se utilizzi Groovy).

    Kotlin

      packagingOptions {
        dex {
          useLegacyPackaging = false
        }
      }
      

    Groovy

      packagingOptions {
        dex {
          useLegacyPackaging false
        }
      }
      

Se utilizzi il sistema di compilazione Bazel, per attivare questa funzionalità imposta l'attributo android:useEmbeddedDex su true nell'elemento <application> del file manifest dell'app e lascia i file DEX non compressi:

android_binary(
   ...
   nocompress_extensions = [".dex"],
)