การเริ่มต้นใช้งาน Cloud Anchor อย่างรวดเร็วใน iOS

ARCore Cloud Anchor API หรือบริการ ARCore Cloud Anchor มอบความสามารถของ Cloud Anchor ให้กับแอป iOS ซึ่งช่วยให้ผู้ใช้ในอุปกรณ์ทั้ง iOS และ Android แชร์ประสบการณ์ AR ได้

คู่มือนี้จะแสดงวิธีต่อไปนี้

  • ตั้งค่าสภาพแวดล้อมการพัฒนาซอฟต์แวร์ให้ทำงานร่วมกับ Cloud Anchor
  • ลองใช้โฮสติ้งและการแก้ไขแอตทริบิวต์แองเคอร์ในแอปตัวอย่าง

ข้อกำหนดเบื้องต้น

  • Xcode เวอร์ชัน 13.0 ขึ้นไป
  • Cocoapods 1.4.0 ขึ้นไปหากใช้ Cocoapods
  • อุปกรณ์ Apple ที่ใช้ ARKit ได้ซึ่งใช้ iOS 12.0 ขึ้นไป (ต้องใช้เป้าหมายการติดตั้งใช้งาน iOS 12.0 ขึ้นไป)

การใช้ Cloud Anchor

ขั้นตอนต่อไปนี้ใช้แอปตัวอย่างหมุดบนระบบคลาวด์เพื่อแสดงงานที่สำคัญสำหรับการกำหนดค่าและสร้างแอปที่รองรับหมุดบนระบบคลาวด์ของ ARCore

ดาวน์โหลดแอปตัวอย่าง Cloud Anchor

  1. โคลนหรือดาวน์โหลด ARCore SDK สําหรับ iOS จาก GitHub เพื่อดูตัวอย่างโค้ดแอป

  2. เปิดหน้าต่างเทอร์มินัลหรือ Finder แล้วไปที่โฟลเดอร์ที่คุณโคลนหรือดาวน์โหลด SDK

  3. คุณดูโค้ดแอปตัวอย่างได้ใน
    /arcore-ios-sdk-master/Examples/CloudAnchorExample

    โค้ดตัวอย่างแอปหมุดบนระบบคลาวด์แบบถาวรอยู่ใน
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample

การตั้งค่าเซสชัน

แอปตัวอย่างจะทํางานสําคัญต่อไปนี้เป็นส่วนหนึ่งของการตั้งค่าเซสชัน

  • การสร้าง GARSession
  • การสร้าง ARSession และการเรียกใช้
  • การตั้งค่า ARSessionDelegate
  • ส่ง ARFrame ให้กับ GARSession ในเมธอด session:didUpdateFrame:

ตั้งค่าการแชร์รหัสหมุดบนระบบคลาวด์

แอปตัวอย่าง Cloud Anchors ใช้ Firebase เพื่อแชร์รหัส Cloud Anchor ระหว่างอุปกรณ์ คุณใช้โซลูชันอื่นในแอปของคุณเองได้

วิธีตั้งค่าฐานข้อมูล Firebase ในแอปตัวอย่าง

  1. ทําตามวิธีการของ Firebase สําหรับการเพิ่ม Firebase ลงในแอป
  2. ดาวน์โหลดไฟล์ GoogleService-Info.plist ที่สร้างขึ้นเมื่อเพิ่ม Firebase ลงในแอป
  3. เปิดใช้พื้นที่เก็บข้อมูล Firebase สําหรับตัวอย่าง ดังนี้
    • ไปที่คอนโซล Firebase แล้วเลือกโปรเจ็กต์ที่คุณตั้งค่าไว้สําหรับแอปตัวอย่าง
    • เลือกแผง Database
    • คลิก Get Started ในตัวเลือก Realtime Database
    • เมนู Security rules for Realtime Database จะเปิดขึ้น
      • เลือก Start in test mode เพื่อเรียกใช้ตัวอย่าง
      • โปรดทราบว่าหากคุณใช้ Firebase สําหรับแอปที่วางแผนจะเผยแพร่ คุณควรใช้กฎความปลอดภัยที่เข้มงวดมากขึ้น
  4. ใน Xcode ให้เพิ่มไฟล์ GoogleService-Info.plist ลงในแอปข้าง Info.plist

ตั้งค่า ARCore API

หากต้องการใช้ Cloud Anchors คุณต้องตั้งค่า ARCore API สําหรับแอปพลิเคชันก่อน

เรียกใช้การอัปเดตพ็อด

แอป CloudAnchorExample มาพร้อมกับ Podfile ที่กําหนดค่าไว้ล่วงหน้าด้วย ARCore SDK และ iOS เวอร์ชันที่คุณต้องการ วิธีติดตั้งการอ้างอิงเหล่านี้

  1. เปิดหน้าต่างเทอร์มินัลและเรียกใช้ pod update จากโฟลเดอร์ที่มีโปรเจ็กต์ Xcode
    การดำเนินการนี้จะสร้างไฟล์ .xcworkspace ที่คุณจะใช้ในภายหลังเพื่อสร้างและเรียกใช้แอป

ดูรายละเอียดเกี่ยวกับการกำหนดค่า Podfile ในแอปของคุณเองได้ที่เพิ่ม ARCore SDK ลงในแอป

  1. เปิดไฟล์ .xcworkspace ของโปรเจ็กต์ใน Xcode

    โปรดตรวจสอบว่าคุณสร้างจากไฟล์ .xcworkspace ไม่ใช่ไฟล์ .xcodeproj เพื่อหลีกเลี่ยงข้อผิดพลาดในการสร้าง

เปลี่ยนรหัส App Bundle

ใน Xcode ให้เปลี่ยนรหัสแพ็กเกจของแอปเพื่อให้คุณลงนามแอปกับทีมได้

สร้างและเรียกใช้แอป

  1. เชื่อมต่ออุปกรณ์และเปิดแอปใน Xcode

  2. (ไม่บังคับ) หากคุณกำลังสร้างและเรียกใช้แอปตัวอย่าง โปรดดูรายละเอียดเกี่ยวกับการใช้แอปเพื่อโฮสต์และแก้ไข Cloud Anchor ในส่วนต่อไปนี้

ลองใช้แอปตัวอย่าง

  1. สร้างและเรียกใช้แอปตัวอย่างจากไฟล์ .xcworkspace เพื่อเปิดแอปในอุปกรณ์

  2. หากได้รับข้อความแจ้ง ให้มอบสิทธิ์เข้าถึงกล้องแก่แอป จากนั้น ARKit จะเริ่มตรวจหาเครื่องบินที่อยู่หน้ากล้อง

  3. แตะ HOST เพื่อเข้าสู่โหมดโฮสติ้ง ระบบจะสร้างรหัสห้องสำหรับการแชร์หมุดที่โฮสต์และแสดงบนหน้าจอ

  4. แตะเครื่องบินเพื่อเริ่มโฮสต์อุปกรณ์ยึดของคลาวด์ที่นั่น

    • แอปจะวางวัตถุ Andy Android บนระนาบแล้วแนบจุดยึดไว้
    • ระบบจะส่งคำขอโฮสต์ไปยังปลายทางระบบคลาวด์ของ ARCore API คำขอของโฮสต์มีข้อมูลที่แสดงตำแหน่งของจุดยึดสัมพันธ์กับลักษณะที่มองเห็นได้ซึ่งอยู่ใกล้ๆ
    • เมื่อโฮสต์หมุดแล้ว หมุดจะได้รับรหัสที่ใช้สำหรับการแก้ไขหมุดบนระบบคลาวด์ในพื้นที่นี้
  5. แตะ RESOLVE และป้อนรหัสห้องเพื่อเข้าถึง Cloud Anchor ที่โฮสต์ไว้ก่อนหน้านี้สำหรับห้องนี้โดยใช้อุปกรณ์เครื่องเดียวกันหรือเครื่องอื่น

    • ระบบจะส่งคำขอแก้ไขไปยังปลายทางระบบคลาวด์ของ ARCore API
    • คำขอแก้ไขมีรหัสหมุดของข้อมูลในระบบคลาวด์ หากรหัสตรงกับจุดยึดที่โฮสต์อยู่และแปลภาษาสำเร็จ เซิร์ฟเวอร์จะแสดงการเปลี่ยนรูปแบบของจุดยึดในพิกัดท้องถิ่น
    • แอปตัวอย่างใช้การเปลี่ยนรูปแบบเพื่อเพิ่มจุดยึดลงในฉากและแสดงผลวัตถุเสมือนที่แนบอยู่

เพิ่ม ARCore SDK ลงในแอป

ในแอปของคุณเอง คุณจะต้องอัปเดต Podfile ให้รวม ARCore SDK และเวอร์ชัน iOS ที่รองรับ หากต้องการทำสิ่งต่อไปนี้

  1. เพิ่ม platform และ pod ต่อไปนี้ลงใน Podfile ของโปรเจ็กต์

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.48.0'
    
  1. เปิดหน้าต่างเทอร์มินัลและเรียกใช้ pod update จากโฟลเดอร์ที่มีโปรเจ็กต์ Xcode
    การดำเนินการนี้จะสร้างไฟล์ .xcworkspace ที่คุณใช้สร้างและเรียกใช้แอป

หมุดเมฆแบบถาวร

ตามที่อธิบายไว้ในโฮสต์ Cloud Anchor แบบถาวร คุณสามารถกำหนดเวลาหมดอายุของ Cloud Anchor ได้สูงสุด 365 วัน โค้ดตัวอย่างสำหรับการใช้หมุดยึดบนระบบคลาวด์แบบถาวรอยู่ใน/arcore-ios-sdk-master/Examples/PersistentCloudAnchorExampleไดเรกทอรีใน ARCore SDK สําหรับ iOS จาก GitHub

ขั้นตอนถัดไป