Framework MediaPipe su Android

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

Creazione di app di esempio per Android con Bazel

Prerequisito

  • Installa MediaPipe Framework seguendo queste istruzioni.
  • Configura il runtime Java.
  • Configura la versione 30.0.0 o successive dell'SDK per Android.
  • Configura Android NDK versione 26 o successive.

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

Se Android SDK e NDK sono già installati (ad es. da Android Studio), imposta $ANDROID_HOME e $ANDROID_NDK_HOME in modo che rimandino all'SDK e all'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(), android_sdk_repository() e bind() al file WORKSPACE come segue:

$ echo "android_sdk_repository(name = \"androidsdk\")" >> WORKSPACE
$ echo "android_ndk_repository(name = \"androidndk\", api_level=26)" >> WORKSPACE
$ echo "bind(name = \"android/crosstool\", actual = \"@androidndk//:toolchain\")" >> WORKSPACE

Per utilizzare il Framework su 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 di esempio per Android, esegui la compilazione in base al corrispondente android_binary target di compilazione. Ad esempio, per le mani di MediaPipe il target è handtrackinggpu nel file BUILD:

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

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