MediaPipe Framework ב-iOS

כדי ליצור אפליקציות לדוגמה ל-iOS באמצעות MediaPipe: מסגרת. למידע נוסף על האפליקציות לדוגמה, מתחילים ב-Hello עולם! ב-iOS.

פיתוח אפליקציות לדוגמה ל-iOS

דרישות מוקדמות

  1. מתקינים את Mediapipe Framework לפי ההוראות האלה.

  2. מתקינים את Xcode ואז מתקינים את הקוד כלי שורת הפקודה באמצעות:

    xcode-select --install
    
  3. מתקינים את Bazelisk.

    מומלץ להשתמש ב-Homebrew כדי להוריד את הגרסאות העדכניות.

    brew install bazelisk
    
  4. מגדירים את Python 3.7 כגרסת ברירת המחדל של Python ומתקינים את 'six' של Python לספרייה. הפעולה הזו נדרשת ל-TensorFlow.

    pip3 install --user six
    
  5. משכפלים את המאגר של MediaPipe.

    git clone https://github.com/google/mediapipe.git
    

הגדרת קידומת למזהה חבילה

לכל אפליקציות ל-iOS חייב להיות מזהה חבילה, ובעל פרופיל להקצאת הרשאות ידנית שמאפשר להתקין בטלפון אפליקציה עם המזהה הזה. מניעת עימותים בקרב משתמשים שונים ב-MediaPipe, צריך להגדיר קידומת ייחודית מזהי חבילות של אפליקציות ההדגמה שלנו ל-iOS.

אם יש לך פרופיל להקצאת הרשאות ידנית בהתאמה אישית: למטה בקטע ניהול הקצאות מותאם אישית.

אחרת, מריצים את הפקודה הזו כדי ליצור קידומת ייחודית:

python3 mediapipe/examples/ios/link_local_profiles.py

יצירת פרויקט Xcode

כך תוכלו לערוך את אחת מהאפליקציות לדוגמה ב-Xcode ולנפות בה באגים. כמו כן מאפשרת להשתמש בהקצאת הרשאות ידנית (מידע נוסף מפורט בהמשך).

  1. אנחנו נשתמש בכלי בשם 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 ששמורה ב- ספריית הבית.

  2. יש לפתוח את mediapipe/Mediapipe.tulsiproj באמצעות האפליקציה של Tulsi.

  3. בוחרים את תצורת MediaPipe בכרטיסייה Configs (הגדרות אישיות) ולוחצים על Generate (יצירה) הלחצן שלמטה. תתבקשו להזין מיקום לשמירת פרויקט ה-Xcode. אחרי יצירת הפרויקט, הוא ייפתח ב-Xcode.

    אם מופיעה שגיאה לגבי מזהי חבילות, צריך לעיין ב הקטע הקודם.

הגדרה של ניהול הקצאות

כדי להתקין אפליקציות במכשיר iOS, צריך פרופיל להקצאת הרשאות ידנית. יש יש שתי אפשרויות:

  1. ניהול הקצאות אוטומטי. כך ניתן ליצור אפליקציה ולהתקין אותה במכשיר אישי. הפרופיל של ניהול התצורה מנוהל על ידי Xcode והוא חייב להיות מתעדכנת לעיתים קרובות (תקף למשך כשבוע).

  2. ניהול הקצאות מותאם אישית. ההגדרה הזו משתמשת בפרופיל של ניהול תצורה שמשויך אל חשבון פיתוח ב-Apple. לפרופילים האלה יש תוקף ארוך יותר יכול לטרגט למכשירים מרובים, אבל נדרש חשבון פיתוח בתשלום עם אפל כדי להשיג ספק.

הקצאת הרשאות אוטומטית

  1. יוצרים פרויקט Xcode ל-MediaPipe, כפי שמתואר בסרטון. מוקדם יותר

  2. בניווט הפרויקט בסרגל הצד השמאלי, בוחרים ב-Mediapipe פרויקט.

  3. בוחרים אחד מיעדי האפליקציה, לדוגמה HandTrackingGpuApp.

  4. בוחרים באפשרות "חתימה & יכולות" .

  5. מסמנים את האפשרות 'ניהול אוטומטי של החתימה' ומאשרים את תיבת הדו-שיח.

  6. בוחרים באפשרות השם שלך (צוות אישי) בתפריט הדו-שיח 'צוות'.

  7. יש לבצע את ההגדרה הזו פעם אחת עבור כל אפליקציה שרוצים להתקין. חוזרים על שלבים 3-6 לפי הצורך.

פעולה זו יוצרת פרופילים של הקצאת הרשאות ידנית לכל אפליקציה שבחרת. עכשיו את/ה צריכים לומר לבייזל להשתמש בהם. יצרנו סקריפט כדי להקל עליך.

  1. בטרמינל, לספרייה mediapipe שבה שכפולם את של מאגר הנתונים.

  2. מריצים את הפקודה הבאה:

    python3 mediapipe/examples/ios/link_local_profiles.py
    

הפעולה הזו תאתר ותקשר את הפרופיל של ניהול ההקצאות לכל האפליקציות שבשבילן הפעלת ניהול הקצאות אוטומטי ב-Xcode.

ניהול הקצאות מותאם אישית

  1. מקבלים פרופיל להקצאת הרשאות ידנית מ-Apple.
  1. קישור סמלי או העתקה של פרופיל ניהול ההקצאות אל mediapipe/mediapipe/provisioning_profile.mobileprovision

    cd mediapipe
    ln -s ~/Downloads/MyProvisioningProfile.mobileprovision mediapipe/provisioning_profile.mobileprovision
    
  1. פתיחת mediapipe/examples/ios/bundle_id.bzl ושינוי BUNDLE_ID_PREFIX לקידומת שמשויכת לפרופיל ניהול ההקצאות שלך.

בנייה והפעלה של אפליקציה באמצעות Xcode

  1. יוצרים את פרויקט ה-Xcode ומוודאים שהגדרתם אותו באופן אוטומטי או להקצאת הרשאות ידנית.

  2. עכשיו אפשר לבחור כל אחת מההדגמות של Mediapipe Framework בתפריט היעד, וליצור ולהריץ אותם כרגיל.

פיתוח אפליקציה באמצעות שורת הפקודה

  1. מוודאים שהגדרתם הקצאת הרשאות אוטומטית או מותאמת אישית.

  2. לדוגמה, באמצעות ידיים של MediaPipe, מריצים את:

    bazel build -c opt --config=ios_arm64 mediapipe/examples/ios/handtrackinggpu:HandTrackingGpuApp
    

    ייתכן שתוצג לך בקשת הרשאה מאת codesign כדי להיכנס לאפליקציה.

  3. ב-Xcode, פותחים את החלון Devices and Simulators (command-shift-2).

  4. צריך לוודא שהמכשיר מחובר. תופיע רשימה של האפליקציות המותקנות. לוחצים על הסמל '+'. מתחת לרשימה, ובוחרים את הקובץ .ipa שנוצר על ידי בז.

  5. עכשיו אפשר להפעיל את האפליקציה במכשיר.