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

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" ....>

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

android {
  defaultConfig {
    packagingOptions {
      jniLibs {
        useLegacyPackaging true
...

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.

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

libraryPath = getApplicationContext().getApplicationInfo().nativeLibraryDir;
Process acqProcess = Runtime.getRuntime().exec(
  new String[]{
    libraryPath + "/executable",
  }
);