Platforma MediaPipe na Androidzie

Aby utworzyć przykładowe aplikacje na Androida z wykorzystaniem frameworku MediaPipe, wykonaj podane niżej instrukcje. Aby dowiedzieć się więcej o tych przykładowych aplikacjach, zacznij od Witaj, świecie! na Androidzie.

Kompilowanie przykładowych aplikacji na Androida za pomocą Bazel

Warunek wstępny

  • Zainstaluj framework MediaPipe, postępując zgodnie z tymi instrukcjami.
  • Konfiguracja środowiska wykonawczego Java.
  • Skonfiguruj pakiet SDK Androida w wersji 30.0.0 lub nowszej.
  • Skonfiguruj Android NDK w wersji 26 lub nowszej.

MediaPipe zaleca skonfigurowanie pakietu Android SDK i NDK za pomocą Android Studio (poniżej znajdziesz instrukcje konfiguracji Android Studio). Jeśli jednak wolisz korzystać z MediaPipe bez Android Studio, przed utworzeniem przykładowych aplikacji na Androida uruchom setup_android_sdk_and_ndk.sh, aby pobrać i skonfigurować pakiet SDK i NDK Androida.

Jeśli pakiet Android SDK i NDK są już zainstalowane (np. przez Android Studio), ustaw zmienne $ANDROID_HOME$ANDROID_NDK_HOME tak, aby wskazywały na zainstalowany pakiet SDK i NDK.

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

i dodaj reguły android_ndk_repository(), android_sdk_repository()bind() do pliku WORKSPACE w ten sposób:

$ 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

Aby korzystać z Framework w starszych wersjach Androida, MediaPipe musi przełączyć się na niższy poziom interfejsu API Androida. Aby to zrobić, w pliku WORKSPACE określ parametr api_level = $YOUR_INTENDED_API_LEVEL w funkcji android_ndk_repository() lub parametr android_sdk_repository().

  1. Aby skompilować przykładową aplikację na Androida, skompiluj ją z odpowiednim celem kompilacji android_binary. Na przykład w przypadku MediaPipe Hands docel to handtrackinggpu w pliku BUILD:

    bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu:handtrackinggpu
    
  2. Zainstaluj na urządzeniu z:

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