Framework MediaPipe su Android

Segui le istruzioni riportate di seguito per creare app di esempio per Android con MediaPipe Framework. Per scoprire di più su queste app di esempio, inizia da Hello World! su Android.

Creazione di app Android di esempio con Bazel

Prerequisito

  • Installa MediaPipe Framework seguendo queste instructions.
  • Configura il runtime Java.
  • Configura la versione dell'SDK Android 30.0.0 e successive.
  • Configura la versione Android NDK tra la 18 e la 21.

MediaPipe consiglia di configurare l'SDK Android e NDK tramite Android Studio (vedi di seguito la procedura di configurazione di Android Studio). Tuttavia, se preferisci utilizzare MediaPipe senza Android Studio, esegui setup_android_sdk_and_ndk.sh per scaricare e configurare l'SDK Android e NDK prima di creare app di esempio per Android.

Se l'SDK Android e NDK sono già installati (ad esempio tramite Android Studio), imposta $ANDROID_HOME e $ANDROID_NDK_HOME in modo che rimandino all'SDK e a NDK installati.

export ANDROID_HOME=<path to the Android SDK>
export ANDROID_NDK_HOME=<path to the Android NDK>

e aggiungi le regole android_ndk_repository() e android_sdk_repository() nel file WORKSPACE come segue:

$ echo "android_sdk_repository(name = \"androidsdk\")" >> WORKSPACE
$ echo "android_ndk_repository(name = \"androidndk\", api_level=21)" >> WORKSPACE

Per utilizzare il framework sulle versioni precedenti di Android, MediaPipe deve passare a un livello API Android inferiore. Puoi farlo specificando api_level = $YOUR_INTENDED_API_LEVEL in android_ndk_repository() e/o android_sdk_repository() nel file WORKSPACE.

  1. Per creare un'app per Android di esempio, esegui la build in base al target di build android_binary corrispondente. Ad esempio, per MediaPipe Hands la destinazione è handtrackinggpu nel file Build:

    bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu:handtrackinggpu
    
  2. Installala su un dispositivo con:

    adb install bazel-bin/mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu/handtrackinggpu.apk