MediaPipe Framework di iOS

Ikuti petunjuk di bawah untuk membuat aplikasi contoh iOS dengan MediaPipe Google Workspace. Untuk mempelajari aplikasi contoh ini lebih lanjut, mulai dari, Hello Dunia! di iOS.

Membuat aplikasi contoh iOS

Prasyarat

  1. Instal Mediapipe Framework dengan mengikuti petunjuk ini.

  2. Instal Xcode, lalu instal Alat Command Line menggunakan:

    xcode-select --install
    
  3. Instal Bazelisk.

    Sebaiknya gunakan Homebrew untuk mendapatkan versi terbaru.

    brew install bazelisk
    
  4. Atur Python 3.7 sebagai versi Python default dan instal "enam" Python library. Ini diperlukan untuk TensorFlow.

    pip3 install --user six
    
  5. Buat clone repositori MediaPipe.

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

Menyiapkan awalan ID paket

Semua aplikasi iOS harus memiliki ID paket, dan Anda harus memiliki profil penyediaan yang memungkinkan Anda menginstal aplikasi dengan ID tersebut ke ponsel. Untuk menghindari bentrok di antara pengguna MediaPipe yang berbeda, Anda perlu mengonfigurasi awalan yang unik untuk ID paket aplikasi demo iOS kami.

Jika Anda memiliki profil penyediaan kustom, lihat Penyediaan kustom di bawah.

Jika tidak, jalankan perintah ini untuk membuat awalan yang unik:

python3 mediapipe/examples/ios/link_local_profiles.py

Membuat project Xcode

Ini memungkinkan Anda untuk mengedit dan men-debug salah satu aplikasi contoh di Xcode. Ini juga memungkinkan Anda menggunakan penyediaan otomatis (lihat bagian berikutnya).

  1. Kita akan menggunakan alat yang disebut Tulsi untuk membuat Project Xcode dari konfigurasi 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
    

    Ini akan menginstal Tulsi.app di dalam direktori Applications di {i>home<i} Anda.

  2. Buka mediapipe/Mediapipe.tulsiproj menggunakan aplikasi Tulsi.

  3. Pilih konfigurasi MediaPipe di tab Configs, lalu tekan tombol Generate di bawah ini. Anda akan diminta memberikan lokasi untuk menyimpan project Xcode. Setelah project dibuat, project akan dibuka di Xcode.

    Jika Anda menerima pesan error terkait ID paket, lihat bagian sebelumnya.

Menyiapkan penyediaan

Untuk menginstal aplikasi di perangkat iOS, Anda memerlukan profil penyediaan. Ada adalah dua opsi:

  1. Penyediaan otomatis. Hal ini memungkinkan Anda membuat dan menginstal aplikasi ke perangkat pribadi. Profil penyediaan dikelola oleh Xcode, dan harus sering diperbarui (berlaku selama sekitar satu minggu).

  2. Penyediaan kustom. Tindakan ini menggunakan profil penyediaan yang terkait dengan Akun Developer Apple. Profil-profil ini memiliki masa berlaku yang lebih lama dan dapat menargetkan beberapa perangkat, tetapi Anda memerlukan akun developer berbayar Apple untuk mendapatkannya.

Penyediaan otomatis

  1. Membuat project Xcode untuk MediaPipe, seperti yang telah dibahas sebelumnya

  2. Pada navigator project di sidebar kiri, pilih "Mediapipe" proyek.

  3. Pilih salah satu target aplikasi, misalnya, HandTrackingGpuApp.

  4. Pilih tombol "Penandatanganan & Kapabilitas" .

  5. Centang "Kelola penandatanganan secara otomatis", dan konfirmasi dialog.

  6. Pilih "Nama Anda (Tim Pribadi)" dalam menu dialog Tim.

  7. Penyiapan ini perlu dilakukan sekali untuk setiap aplikasi yang ingin Anda instal. Ulangi langkah 3-6 sesuai kebutuhan.

Tindakan ini akan membuat profil penyediaan untuk setiap aplikasi yang telah Anda pilih. Sekarang Anda perlu memberi tahu Bazel untuk menggunakannya. Kami telah menyediakan skrip untuk mempermudah hal ini.

  1. Di terminal, ke direktori mediapipe tempat Anda meng-clone repositori resource.

  2. Jalankan perintah ini:

    python3 mediapipe/examples/ios/link_local_profiles.py
    

Tindakan ini akan menemukan dan menautkan profil penyediaan untuk semua aplikasi yang Anda telah mengaktifkan penyediaan otomatis di Xcode.

Penyediaan kustom

  1. Dapatkan profil penyediaan dari Apple.
  1. Symlink atau salin profil penyediaan ke mediapipe/mediapipe/provisioning_profile.mobileprovision.

    cd mediapipe
    ln -s ~/Downloads/MyProvisioningProfile.mobileprovision mediapipe/provisioning_profile.mobileprovision
    
  1. Buka mediapipe/examples/ios/bundle_id.bzl, dan ubah BUNDLE_ID_PREFIX ke awalan yang terkait dengan profil penyediaan Anda.

Membangun dan menjalankan aplikasi menggunakan Xcode

  1. Buat project Xcode, dan pastikan Anda telah menyiapkan konfigurasi dan deployment kustom.

  2. Anda sekarang dapat memilih salah satu demo Mediapipe Framework di menu target, serta membangun dan menjalankannya seperti biasa.

Membangun aplikasi menggunakan command line

  1. Pastikan Anda telah menyiapkan penyediaan otomatis atau kustom.

  2. Misalnya dengan menggunakan MediaPipe Hands, jalankan:

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

    Anda mungkin melihat permintaan izin dari codesign untuk menandatangani aplikasi.

  3. Di Xcode, buka jendela Devices and Simulators (command-shift-2).

  4. Pastikan perangkat Anda terhubung. Anda akan melihat daftar aplikasi terinstal. Tekan "+" di bawah daftar, lalu pilih file .ipa yang dibuat oleh Bazel.

  5. Sekarang Anda dapat menjalankan aplikasi di perangkat.