請按照下列操作說明,使用 MediaPipe 架構建構 Android 範例應用程式。 如要進一步瞭解這些範例應用程式,請參閱「Android 上的 Hello World!」。
使用 Bazel 建構 Android 範例應用程式
修課條件
- 按照這些操作說明安裝 MediaPipe 架構。
- 設定 Java 執行階段。
- 設定 Android SDK 35.0.0 以上版本。
- 設定 Android NDK 28 以上版本。
MediaPipe 建議透過 Android Studio 設定 Android SDK 和 NDK (請參閱下文瞭解 Android Studio 設定)。不過,如果您偏好在沒有 Android Studio 的情況下使用 MediaPipe,請先執行 setup_android_sdk_and_ndk.sh
下載並設定 Android SDK 和 NDK,再建構任何 Android 範例應用程式。
如果已安裝 Android SDK 和 NDK (例如透過 Android Studio 安裝),請將 $ANDROID_HOME
和 $ANDROID_NDK_HOME
設為指向已安裝的 SDK 和 NDK。
export ANDROID_HOME=<path to the Android SDK>
export ANDROID_NDK_HOME=<path to the Android NDK>
,並將 android_ndk_repository()
、android_sdk_repository()
和 bind()
規則新增至 WORKSPACE
檔案,如下所示:
$ 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
如要在舊版 Android 上使用 Framework,MediaPipe 必須切換至較低的 Android API 級別。如要達成這個目標,請在 WORKSPACE
檔案的 android_ndk_repository() 和/或 android_sdk_repository() 中指定 api_level =
$YOUR_INTENDED_API_LEVEL
。
如要建構 Android 範例應用程式,請針對對應的
android_binary
建構目標進行建構。舉例來說,如果是 MediaPipe Hands,目標是 BUILD 檔案中的handtrackinggpu
:bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu:handtrackinggpu
在符合下列條件的裝置上安裝:
adb install bazel-bin/mediapipe/examples/android/src/java/com/google/mediapipe/apps/handtrackinggpu/handtrackinggpu.apk