Eingebetteten DEX-Code direkt vom APK ausführen

Auf Geräten mit Android 10 (API-Level 29) und höher können Sie die Plattform anweisen, eingebetteten DEX-Code direkt aus der APK-Datei Ihrer App auszuführen. Diese Option kann helfen, einen Angriff zu verhindern, falls ein Angreifer den lokal kompilierten Code auf dem Gerät manipuliert.

Wenn Sie das Gradle-Build-System verwenden, gehen Sie so vor, um diese Funktion zu aktivieren:

  • Setzen Sie das Attribut android::useEmbeddedDex im Element <application> der Manifestdatei Ihrer App auf true.

  • Legen Sie useLegacyPackaging in der Datei build.gradle.kts auf Modulebene auf false fest (build.gradle-Datei, wenn Sie Groovy verwenden).

    Kotlin

      packagingOptions {
        dex {
          useLegacyPackaging = false
        }
      }
      

    Groovy

      packagingOptions {
        dex {
          useLegacyPackaging false
        }
      }
      

Wenn Sie das Bazel-Buildsystem verwenden, müssen Sie das Attribut android:useEmbeddedDex im Element <application> der Manifestdatei Ihrer App auf true festlegen und DEX-Dateien unkomprimiert lassen, um diese Funktion zu aktivieren:

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