iOS में क्लाउड ऐंकर के लिए क्विकस्टार्ट

ARCore Cloud anchor API या ARCore Cloud anchor सेवा, आपके iOS ऐप्लिकेशन के लिए क्लाउड ऐंकर की सुविधा देती है. इससे iOS और Android डिवाइस के उपयोगकर्ताओं के लिए एआर अनुभव शेयर करना संभव हो जाता है.

इस गाइड में, इन कामों को करने का तरीका बताया गया है:

  • क्लाउड ऐंकर के साथ काम करने के लिए, अपना डेवलपमेंट एनवायरमेंट सेट अप करें
  • सैंपल ऐप्लिकेशन में ऐंकर होस्ट करने और समस्या हल करने की कोशिश करें

ज़रूरी शर्तें

  • Xcode 13.0 या इसके बाद का वर्शन
  • अगर Cocoapods का इस्तेमाल किया जा रहा है, तो Cocoapods 1.4.0 या उसके बाद के वर्शन
  • iOS 12.0 या इसके बाद के वर्शन पर चलने वाला, ARKit के साथ काम करने वाला Apple डिवाइस (iOS 12.0 या इसके बाद के वर्शन वाला डिप्लॉयमेंट टारगेट ज़रूरी है)

क्लाउड ऐंकर इस्तेमाल करना

ARCore क्लाउड ऐंकर के साथ काम करने वाले ऐप्लिकेशन को कॉन्फ़िगर करने और बनाने से जुड़े ज़रूरी टास्क दिखाने के लिए, नीचे दिए गए तरीके में क्लाउड ऐंकर सैंपल ऐप्लिकेशन का इस्तेमाल किया जाएगा.

Cloud anchors नमूना ऐप्लिकेशन पाएं

  1. ऐप्लिकेशन कोड का नमूना पाने के लिए, GitHub से iOS के लिए ARCore SDK टूल को क्लोन करें या डाउनलोड करें.

  2. Terminal या Finder विंडो खोलें और उस फ़ोल्डर पर जाएं जहां आपने SDK टूल को क्लोन किया था या डाउनलोड किया था.

  3. ऐप्लिकेशन कोड का नमूना
    /arcore-ios-sdk-master/Examples/CloudAnchorExample में देखा जा सकता है.

    परसिस्टेंट क्लाउड ऐंकर सैंपल ऐप्लिकेशन कोड,
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample में है.

सेशन का सेटअप

ऐप्लिकेशन का नमूना, सेशन सेट अप करने के लिए ये ज़रूरी काम करता है:

  • GARSession बनाना
  • ARSession बनाना और उसे चलाना
  • ARSessionDelegate को सेट किया जा रहा है.
  • session:didUpdateFrame: तरीके में GARSession को ARFrame पास करना.

क्लाउड ऐंकर आईडी शेयर करने की सुविधा सेट अप करना

क्लाउड ऐंकर आईडी का सैंपल, Firebase का इस्तेमाल करके, डिवाइसों के बीच क्लाउड ऐंकर आईडी शेयर करता है. अपने ऐप्लिकेशन में कोई दूसरा तरीका इस्तेमाल किया जा सकता है.

सैंपल ऐप्लिकेशन में Firebase डेटाबेस सेट अप करने के लिए:

  1. Firebase को अपने ऐप्लिकेशन में जोड़ने के लिए, Firebase के निर्देशों का पालन करें.
  2. अपने ऐप्लिकेशन में Firebase जोड़ने के बाद जनरेट हुई GoogleService-Info.plist फ़ाइल डाउनलोड करें.
  3. इस सैंपल के लिए, Firebase स्टोरेज चालू करें:
    • Firebase कंसोल पर जाएं और वह प्रोजेक्ट चुनें जिसे आपने सैंपल ऐप्लिकेशन के लिए सेट अप किया है.
    • Database पैनल चुनें.
    • Realtime Database विकल्प पर जाकर, Get Started पर क्लिक करें.
    • Security rules for Realtime Database मेन्यू खुलेगा.
      • सैंपल चलाने के लिए, Start in test mode चुनें.
      • ध्यान रखें कि अगर Firebase का इस्तेमाल किसी ऐसे ऐप्लिकेशन के लिए किया जा रहा है जिसे पब्लिश करना है, तो आपको ज़्यादा पाबंदी वाले सुरक्षा नियमों का इस्तेमाल करना चाहिए.
  4. Xcode में, अपने ऐप्लिकेशन में Info.plist के बगल में मौजूद GoogleService-Info.plist फ़ाइल जोड़ें.

ARCore API सेट अप करना

क्लाउड ऐंकर का इस्तेमाल करने के लिए, आपको पहले अपने ऐप्लिकेशन के लिए ARCore API सेट अप करना होगा.

पॉड अपडेट करें

CloudAnchorExample ऐप्लिकेशन, Podfile के साथ भेजा जाता है. यह ARCore SDK और iOS के उन वर्शन के साथ पहले से कॉन्फ़िगर किया गया है जिनकी आपको ज़रूरत होगी. इन डिपेंडेंसी को इंस्टॉल करने के लिए:

  1. टर्मिनल विंडो खोलें और उस फ़ोल्डर से pod update चलाएं जहां Xcode प्रोजेक्ट मौजूद है.
    यह एक .xcworkspace फ़ाइल जनरेट करता है. इसका इस्तेमाल बाद में, ऐप्लिकेशन को बनाने और चलाने के लिए किया जाएगा.

अपने ऐप्लिकेशन में Podfile को कॉन्फ़िगर करने के बारे में जानने के लिए, अपने ऐप्लिकेशन में ARCore SDK टूल जोड़ना देखें.

  1. प्रोजेक्ट के लिए .xcworkspace फ़ाइल को Xcode में खोलें.

    बिल्ड की गड़बड़ियों से बचने के लिए, पक्का करें कि फ़ाइल को .xcworkspace फ़ाइल से बनाया जा रहा हो, न कि .xcodeproj फ़ाइल से.

ऐप्लिकेशन बंडल आईडी बदलना

Xcode में, ऐप्लिकेशन का बंडल आईडी बदलें, ताकि आप अपनी टीम के साथ ऐप्लिकेशन पर हस्ताक्षर कर सकें.

ऐप्लिकेशन बनाएं और चलाएं

  1. अपना डिवाइस कनेक्ट करें और Xcode में ऐप्लिकेशन लॉन्च करें.

  2. (ज़रूरी नहीं) अगर सैंपल ऐप्लिकेशन बनाया जा रहा है और उसे चलाया जा रहा है, तो क्लाउड ऐंकर को होस्ट करने और उसका समाधान करने के लिए, ऐप्लिकेशन का इस्तेमाल करने के बारे में जानने के लिए, नीचे दिया गया सेक्शन देखें.

सैंपल ऐप्लिकेशन आज़माएं

  1. सैंपल ऐप्लिकेशन को अपने डिवाइस पर लॉन्च करने के लिए, उसे .xcworkspace फ़ाइल से बनाएं और चलाएं.

  2. अगर कहा जाए, तो ऐप्लिकेशन को कैमरा ऐक्सेस करने की अनुमति दें. इसके बाद, ARKit आपके कैमरे के सामने वाले हवाई जहाज़ों का पता लगाना शुरू कर देता है.

  3. होस्टिंग मोड पर जाने के लिए, HOST पर टैप करें. होस्ट किए गए ऐंकर शेयर करने के लिए, एक रूम कोड जनरेट होगा और वह आपकी स्क्रीन पर दिखेगा.

  4. किसी प्लेन पर टैप करके, क्लाउड ऐंकर को होस्ट करें.

    • यह ऐप्लिकेशन, प्लेन पर एंडी Android ऑब्जेक्ट को रखता है और उसमें ऐंकर जोड़ता है.
    • ARCore API क्लाउड एंडपॉइंट पर, होस्ट करने का अनुरोध भेजा जाता है. होस्ट के अनुरोध में, ऐसा डेटा शामिल होता है जो आस-पास मौजूद विज़ुअल सुविधाओं के मुकाबले ऐंकर की स्थिति दिखाता है.
    • ऐंकर को होस्ट करने के बाद, इसे एक आईडी मिलता है. इसका इस्तेमाल, इस स्पेस में क्लाउड ऐंकर की समस्या को हल करने के लिए किया जाता है.
  5. RESOLVE पर टैप करें और इस रूम के लिए पहले होस्ट किए गए क्लाउड ऐंकर ऐक्सेस करने के लिए, इसी डिवाइस या किसी दूसरे डिवाइस का इस्तेमाल करके रूम कोड डालें.

    • समस्या हल करने का अनुरोध ARCore API क्लाउड एंडपॉइंट पर भेजा जाता है.
    • समाधान के अनुरोध में, क्लाउड ऐंकर आईडी शामिल होता है. अगर आईडी, होस्ट किए गए ऐंकर से मेल खाता है और स्थानीय भाषा में उपलब्ध होता है, तो सर्वर आपके स्थानीय निर्देशांकों में ऐंकर में बदलाव करता है.
    • सैंपल ऐप्लिकेशन, आपके सीन में ऐंकर जोड़ने और उससे जुड़े वर्चुअल ऑब्जेक्ट को रेंडर करने के लिए, ट्रांसफ़ॉर्म का इस्तेमाल करता है.

अपने ऐप्लिकेशन में ARCore SDK टूल जोड़ना

अपने ऐप्लिकेशन में, आपको ARCore SDK टूल और काम करने वाले iOS वर्शन को शामिल करने के लिए, अपना Podfile अपडेट करना होगा. ऐसा करने के लिए:

  1. अपने प्रोजेक्ट के Podfile में ये platform और pod जोड़ें:

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.41.0'
    
  1. टर्मिनल विंडो खोलें और उस फ़ोल्डर से pod update चलाएं जहां आपका Xcode प्रोजेक्ट मौजूद है.
    इससे एक .xcworkspace फ़ाइल जनरेट होगी, जिसका इस्तेमाल ऐप्लिकेशन बनाने और उसे चलाने के लिए किया जाएगा.

स्थायी क्लाउड ऐंकर

जैसा कि परसिस्टेंस के साथ क्लाउड ऐंकर होस्ट करें में बताया गया है, क्लाउड ऐंकर को 365 दिन तक का टाइम-टू-लाइव दिया जा सकता है. परसिस्टेंट क्लाउड ऐंकर इस्तेमाल करने के लिए, सैंपल कोड GitHub से iOS के लिए ARCore SDK टूल में मौजूद, /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample डायरेक्ट्री में उपलब्ध है.

अगले चरण