Outils pour utilisateurs

Outils du site


lang:android:packaging

Embarquer un exécutable pour l'exécuter manuellement

  • app/src/main/AndroidManifest.xml

Ajouter android:extractNativeLibs pour extraire les librairies incluses dans l'apk dans le dossier de l'application :

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
  <application android:extractNativeLibs="true" ....>
  • app/build.gradle

Ajouter useLegacyPackaging true qui est nécessaire si extractNativeLibs est actif.

android {
  defaultConfig {
    packagingOptions {
      jniLibs {
        useLegacyPackaging true
...
  • Dossier app/src/main/resources

Le contenu de ce dossier est inclut dans la racine de l'apk.

Il est ainsi possible d'ajouter un exécutable dans le dossier des librairies partagées en passant par le dossier project\app\src\main\resources\lib\{ABI}\executable.

  • Exécution

Il est nécessaire d'avoir le context de l'activity.

libraryPath = getApplicationContext().getApplicationInfo().nativeLibraryDir;
Process acqProcess = Runtime.getRuntime().exec(
  new String[]{
    libraryPath + "/executable",
  }
);
lang/android/packaging.txt · Dernière modification : 2022/11/16 14:37 de root