ทำตามวิธีการด้านล่างเพื่อสร้างแอปตัวอย่าง iOS ด้วย MediaPipe Framework หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับแอปตัวอย่างเหล่านี้ ให้เริ่มจาก Hello World! บน iOS
การสร้างแอปตัวอย่างสำหรับ iOS
วิชาบังคับก่อน
ติดตั้ง Mediapipe Framework โดยทำตามinstructionsเหล่านี้
ติดตั้ง Xcode จากนั้นติดตั้ง เครื่องมือบรรทัดคำสั่งโดยใช้
xcode-select --install
ติดตั้ง Bazelisk
เราขอแนะนำให้ใช้ Homeพาร์ทเนอร์ของ เพื่อรับเวอร์ชันล่าสุด
brew install bazelisk
ตั้งค่า Python 3.7 เป็นเวอร์ชัน Python เริ่มต้นและติดตั้งไลบรารี Python "6" จำเป็นสำหรับ TensorFlow
pip3 install --user six
โคลนที่เก็บ MediaPipe
git clone https://github.com/google/mediapipe.git
ตั้งค่าคำนำหน้ารหัสชุด
แอป iOS ทั้งหมดต้องมีรหัสชุด และคุณต้องมีโปรไฟล์การจัดสรรที่ให้คุณติดตั้งแอปที่มีรหัสนั้นในโทรศัพท์ได้ คุณต้องกำหนดค่าคำนำหน้าที่ไม่ซ้ำกันสำหรับรหัสชุดของแอปเดโม iOS เพื่อหลีกเลี่ยงความขัดแย้งระหว่างผู้ใช้ MediaPipe รายอื่น
หากคุณมีโปรไฟล์การจัดสรรที่กำหนดเอง โปรดดูการจัดสรรที่กำหนดเองด้านล่าง
หรือเรียกใช้คำสั่งนี้เพื่อสร้างคำนำหน้าที่ไม่ซ้ำกัน
python3 mediapipe/examples/ios/link_local_profiles.py
สร้างโปรเจ็กต์ Xcode
วิธีนี้ช่วยให้คุณแก้ไขและแก้ไขข้อบกพร่องของแอปตัวอย่างหนึ่งใน Xcode ได้ นอกจากนี้ยังช่วยให้คุณใช้การจัดสรรอัตโนมัติได้ (ดูหัวข้อในภายหลัง)
เราจะใช้เครื่องมือที่เรียกว่า Tulsi ในการสร้างโปรเจ็กต์ Xcode จากการกำหนดค่าบิลด์ของ 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 ในแท็บการกำหนดค่า จากนั้นกดปุ่มสร้างด้านล่าง ระบบจะขอให้คุณระบุตำแหน่งเพื่อบันทึกโปรเจ็กต์ Xcode เมื่อสร้างโปรเจ็กต์แล้ว โปรเจ็กต์จะเปิดใน Xcode
หากได้รับข้อผิดพลาดเกี่ยวกับรหัสชุด โปรดดูส่วนก่อนหน้านี้
ตั้งค่าการจัดสรร
หากต้องการติดตั้งแอปพลิเคชันในอุปกรณ์ iOS คุณต้องมีโปรไฟล์การจัดสรร มี 2 ตัวเลือก ได้แก่
การจัดสรรอัตโนมัติ ซึ่งทำให้คุณสามารถสร้างและติดตั้งแอปลงในอุปกรณ์ส่วนตัว โปรไฟล์การจัดสรรจัดการโดย Xcode และต้องอัปเดต บ่อยๆ (ใช้งานได้ประมาณ 1 สัปดาห์)
การจัดสรรที่กำหนดเอง การดำเนินการนี้ใช้โปรไฟล์การจัดสรรที่เชื่อมโยงกับบัญชีนักพัฒนาแอป Apple โปรไฟล์เหล่านี้มีระยะเวลาที่ใช้ได้นานกว่าและกำหนดเป้าหมายอุปกรณ์ได้หลายเครื่อง แต่คุณต้องมีบัญชีนักพัฒนาแอปแบบชำระเงินกับ Apple จึงจะมีโปรไฟล์นี้ได้
การจัดสรรอัตโนมัติ
สร้างโปรเจ็กต์ Xcode สำหรับ MediaPipe ตามที่ได้กล่าวไปก่อนหน้านี้
ในตัวนำทางโปรเจ็กต์ในแถบด้านข้างทางซ้าย ให้เลือกโปรเจ็กต์ "Mediapipe"
เลือกเป้าหมายแอปพลิเคชันรายการใดรายการหนึ่ง เช่น HandTrackingGpuApp
เลือกแท็บ "การลงนามและความสามารถ"
เลือก "จัดการการลงชื่อโดยอัตโนมัติ" แล้วยืนยันกล่องโต้ตอบ
เลือก "ชื่อของคุณ (ทีมส่วนตัว)" ในเมนูกล่องโต้ตอบทีม
การตั้งค่านี้ต้องทำเพียงครั้งเดียวสำหรับแต่ละแอปพลิเคชันที่คุณต้องการติดตั้ง ทำขั้นตอนที่ 3-6 ซ้ำตามต้องการ
การดำเนินการนี้จะสร้างโปรไฟล์การจัดสรรให้กับแต่ละแอปที่คุณเลือกไว้ ตอนนี้คุณต้องบอกให้ Bazel ใช้งานทั้งคู่ เราได้เตรียมสคริปต์เพื่อทำให้ขั้นตอนนี้ง่ายขึ้น
ในเทอร์มินัล ไปยังไดเรกทอรี
mediapipe
ที่คุณโคลนที่เก็บใช้คําสั่งนี้
python3 mediapipe/examples/ios/link_local_profiles.py
การดำเนินการนี้จะค้นหาและลิงก์โปรไฟล์การจัดสรรสำหรับแอปพลิเคชันทั้งหมดที่คุณเปิดใช้การจัดสรรอัตโนมัติใน Xcode
การจัดสรรที่กำหนดเอง
- รับโปรไฟล์การจัดสรรจาก Apple
Symlink หรือคัดลอกโปรไฟล์การจัดสรรของคุณไปที่
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 ในเมนูเป้าหมาย แล้วสร้างและเรียกใช้ตามปกติได้
สร้างแอปโดยใช้บรรทัดคำสั่ง
ตรวจสอบว่าได้ตั้งค่าการจัดสรรอัตโนมัติหรือการจัดสรรแบบกำหนดเองแล้ว
ตัวอย่างเช่น เรียกใช้ MediaPipe Hands
bazel build -c opt --config=ios_arm64 mediapipe/examples/ios/handtrackinggpu:HandTrackingGpuApp
คุณอาจเห็นคำขอสิทธิ์จาก
codesign
เพื่อลงนามแอปใน Xcode ให้เปิดหน้าต่าง
Devices and Simulators
(command-shift-2)ตรวจสอบว่าอุปกรณ์เชื่อมต่ออยู่ คุณจะเห็นรายการแอปที่ติดตั้งไว้ กดปุ่ม "+" ใต้รายการ แล้วเลือกไฟล์
.ipa
ที่ Bazel สร้างขึ้นตอนนี้คุณสามารถเรียกใช้แอปบนอุปกรณ์ได้แล้ว