כדי ליצור אפליקציות לדוגמה ל-iOS באמצעות MediaPipe Framework, פועלים לפי ההוראות הבאות. למידע נוסף על האפליקציות לדוגמה האלה, כדאי להתחיל מהמאמר Hello World! ב-iOS.
פיתוח אפליקציות לדוגמה ל-iOS
דרישות מוקדמות
מתקינים את Mediapipe Framework לפי ההוראות האלה.
מתקינים את Xcode ואז מתקינים את כלי שורת הפקודה באמצעות:
xcode-select --install
מתקינים את Bazelisk.
מומלץ להשתמש ב-Homebrew כדי לקבל את הגרסאות העדכניות.
brew install bazelisk
מתקינים את ספריית Python 'six'. הדבר נדרש ל-TensorFlow.
pip3 install --user six
משכפלים את המאגר של MediaPipe.
git clone https://github.com/google/mediapipe.git
הגדרת קידומת למזהה החבילה
לכל אפליקציה ל-iOS צריך להיות מזהה חבילה, וצריך להיות לכם פרופיל הקצאה שמאפשר לכם להתקין בטלפון אפליקציה עם המזהה הזה. כדי למנוע התנגשויות בין משתמשים שונים ב-MediaPipe, צריך להגדיר קידומת ייחודית למזהי החבילות של אפליקציות הדגמה ל-iOS.
אם יש לכם פרופיל הקצאה בהתאמה אישית, תוכלו לעיין בקטע הקצאה בהתאמה אישית בהמשך.
אחרת, מריצים את הפקודה הבאה כדי ליצור קידומת ייחודית:
python3 mediapipe/examples/ios/link_local_profiles.py
יצירת פרויקט ב-Xcode
כך תוכלו לערוך ולפתור באגים באחת מהאפליקציות לדוגמה ב-Xcode. הוא גם מאפשר לכם להשתמש בהקצאה אוטומטית (מידע נוסף מופיע בקטע הבא).
נשתמש בכלי שנקרא Tulsi כדי ליצור פרויקטים של Xcode מהגדרות build של Bazel.
# cd out of the mediapipe directory, then: git clone https://github.com/bazelbuild/tulsi.git cd tulsi # remove Xcode version from Tulsi's .bazelrc (see http://github.com/bazelbuild/tulsi#building-and-installing): sed -i .orig '/xcode_version/d' .bazelrc # build and run Tulsi: sh build_and_run.sh
הפקודה הזו תתקין את
Tulsi.app
בספרייהApplications
בספריית הבית.פותחים את
mediapipe/Mediapipe.tulsiproj
באמצעות אפליקציית Tulsi.בוחרים את הגדרת MediaPipe בכרטיסייה Configs ולוחצים על הלחצן Generate שבהמשך. תתבקשו לבחור מיקום לשמירת פרויקט Xcode. לאחר יצירת הפרויקט, הוא ייפתח ב-Xcode.
אם מופיעה הודעת שגיאה לגבי מזהי חבילות, אפשר לעיין בקטע הקודם.
הגדרת ניהול תצורה
כדי להתקין אפליקציות במכשיר iOS, צריך פרופיל הקצאה. יש שתי אפשרויות:
הקצאה אוטומטית. כך תוכלו לפתח אפליקציה ולהתקין אותה במכשיר האישי שלכם. פרופיל הקצאת המשאבים מנוהל על ידי Xcode, וצריך לעדכן אותו לעיתים קרובות (הוא תקף למשך שבוע בערך).
הקצאה בהתאמה אישית. לשם כך נעשה שימוש בפרופיל הקצאה שמשויך לחשבון פיתוח של Apple. לפרופילים האלה יש תקופת תוקף ארוכה יותר, והם יכולים לטרגט כמה מכשירים, אבל כדי לקבל אותם צריך חשבון פיתוח בתשלום ב-Apple.
הקצאה אוטומטית
יוצרים פרויקט Xcode ל-MediaPipe, כפי שמתואר למעלה.
בחלונית הניווט של הפרויקטים בסרגל הצד הימני, בוחרים בפרויקט Mediapipe.
בוחרים אחד מיעדי האפליקציה, לדוגמה, HandTrackingGpuApp.
בוחרים בכרטיסייה Signing & Capabilities (חתימה ויכולות).
מסמנים את האפשרות 'ניהול אוטומטי של החתימה' ומאשרים את תיבת הדו-שיח.
בתפריט של תיבת הדו-שיח 'צוות', בוחרים באפשרות השם שלך (צוות אישי).
צריך לבצע את ההגדרה הזו פעם אחת לכל אפליקציה שרוצים להתקין. חוזרים על שלבים 3 עד 6 לפי הצורך.
הפעולה הזו תיצור פרופילים להקצאת הרשאות לכל אפליקציה שבחרתם. עכשיו צריך להורות ל-Bazel להשתמש בהם. כדי להקל על התהליך, סיפקנו סקריפט.
במסוף, נכנסים לספרייה
mediapipe
שבה ביצעתם את היצירה של המאגר.מריצים את הפקודה הבאה:
python3 mediapipe/examples/ios/link_local_profiles.py
הפעולה הזו תאתר ותקשר את פרופיל הקצאת המשאבים לכל האפליקציות שבהן הפעלתם את הקצאת המשאבים האוטומטית ב-Xcode.
הקצאה בהתאמה אישית
- מקבלים פרופיל הקצאה מ-Apple.
יוצרים קישור סימלי או מעתיקים את פרופיל הקצאת המשאבים אל
mediapipe/mediapipe/provisioning_profile.mobileprovision
.cd mediapipe ln -s ~/Downloads/MyProvisioningProfile.mobileprovision mediapipe/provisioning_profile.mobileprovision
- פותחים את
mediapipe/examples/ios/bundle_id.bzl
ומשנים את הערך שלBUNDLE_ID_PREFIX
לתחילית שמשויכת לפרופיל הקצאת המשאבים.
פיתוח והרצה של אפליקציה באמצעות Xcode
יוצרים את הפרויקט ב-Xcode ומוודאים שהגדרתם הקצאה אוטומטית או בהתאמה אישית.
עכשיו אפשר לבחור כל אחת מהדמו של Mediapipe Framework בתפריט היעד, ולבנות ולהריץ אותן כרגיל.
פיתוח אפליקציה באמצעות שורת הפקודה
מוודאים שהגדרתם הקצאה אוטומטית או בהתאמה אישית.
לדוגמה, כדי להשתמש ב-MediaPipe Hands, מריצים את הפקודה:
bazel build -c opt --config=ios_arm64 mediapipe/examples/ios/handtrackinggpu:HandTrackingGpuApp
יכול להיות שתוצג לכם בקשת הרשאה מ-
codesign
כדי לחתום על האפליקציה.ב-Xcode, פותחים את החלון
Devices and Simulators
(Command-Shift-2).מוודאים שהמכשיר מחובר. תוצג רשימה של האפליקציות המותקנות. לוחצים על הלחצן '+' מתחת לרשימה ובוחרים את הקובץ
.ipa
שנוצר על ידי Bazel.עכשיו אפשר להפעיל את האפליקציה במכשיר.