כדי ליצור אפליקציות לדוגמה ל-Android באמצעות MediaPipe Framework, יש לפעול לפי ההוראות שבהמשך. מידע נוסף על האפליקציות לדוגמה מופיע במאמר Hello World! ב-Android.
פיתוח אפליקציות לדוגמה ל-Android באמצעות Bazel
דרישות מוקדמות
- מתקינים את MediaPipe Framework לפי ההוראות האלה.
- מגדירים את Java Runtime.
- מגדירים את Android SDK בגרסה 30.0.0 ואילך.
- מגדירים את Android NDK בגרסה 26 ואילך.
מומלץ להגדיר את Android SDK ו-NDK דרך Android Studio (מידע נוסף על הגדרת Android Studio מופיע בהמשך). עם זאת, אם אתם מעדיפים להשתמש ב-MediaPipe בלי Android Studio, תוכלו להריץ את הפקודה 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
כדי להשתמש ב-Framework בגרסאות קודמות של Android, צריך להעביר את MediaPipe לרמה נמוכה יותר של Android API. כדי לעשות זאת, מציינים את api_level =
$YOUR_INTENDED_API_LEVEL
ב-android_ndk_repository() ו/או ב-android_sdk_repository() בקובץ WORKSPACE
.
כדי ליצור אפליקציית דוגמה ל-Android, צריך לבצע build לפי יעד ה-build התואם של
android_binary
. לדוגמה, ב-MediaPipe Hands היעד הואhandtrackinggpu
בקובץ BUILD: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