अपने iOS ऐप्लिकेशन के लिए Geospatial API को चालू करना

अपने ऐप्लिकेशन की सेटिंग कॉन्फ़िगर करें, ताकि वह Geospatial API का इस्तेमाल कर सके.

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

आगे बढ़ने से पहले, पक्का करें कि आपने एआर के बुनियादी कॉन्सेप्ट और ARCore सेशन को कॉन्फ़िगर करने का तरीका समझ लिया हो.

अगर आपको कोई ऐसा सैंपल ऐप्लिकेशन चलाना है जो यहां बताई गई सुविधाएं दिखाता है, तो iOS के लिए ARCore Geospatial क्विकस्टार्ट देखें.

Geospatial API के बारे में ज़्यादा जानकारी के लिए, Geospatial API के बारे में जानकारी देखें.

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

ARCore API चालू करना

अपने ऐप्लिकेशन में विज़ुअल पोज़िशनिंग सिस्टम (वीपीएस) का इस्तेमाल करने से पहले, आपको किसी नए या मौजूदा Google Cloud प्रोजेक्ट में ARCore API को चालू करना होगा. इस सेवा की ज़िम्मेदारी जियोस्पेशल ऐंकर को होस्ट करने, उन्हें स्टोर करने, और उनसे जुड़ी समस्याओं को ठीक करने की है.

बिना पासकोड के अनुमति देने की सुविधा को प्राथमिकता दी जाती है. हालांकि, एपीआई पासकोड की मदद से अनुमति देने की सुविधा भी काम करती है.

अपने ऐप्लिकेशन में ज़रूरी लाइब्रेरी जोड़ना

अपने ऐप्लिकेशन को ARCore API को कॉल करने की अनुमति देने के बाद, आपको अपने ऐप्लिकेशन में जियोस्पेशल सुविधाएं चालू करने के लिए लाइब्रेरी जोड़नी होंगी.

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

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

    platform :ios, '11.0'
    pod 'ARCore/Geospatial', '~> 1.46.0'
    

    अगर आपको iOS 10 पर काम करना है, तो आपके पास platform :ios, '10.0' तय करने का भी विकल्प है. हालांकि, इस बात का ध्यान रखें कि Geospatial API सिर्फ़ iOS >= 11 पर रनटाइम के दौरान काम करेगा.

  2. कोई Terminal विंडो खोलें और उस फ़ोल्डर से pod install चलाएं जहां आपका Xcode प्रोजेक्ट मौजूद है.

    इससे एक .xcworkspace फ़ाइल जनरेट होती है, जिसका इस्तेमाल ऐप्लिकेशन बनाने और उसे चलाने के लिए किया जाता है.

पक्का करें कि आपका डेवलपमेंट एनवायरमेंट, क्विकस्टार्ट में बताई गई ARCore SDK टूल की ज़रूरी शर्तों को पूरा करता हो.

सेशन कॉन्फ़िगरेशन में, भौगोलिक डेटा से जुड़ी सुविधाएं चालू करना

देखें कि यह सुविधा किन डिवाइसों पर काम करती है

जैसा कि क्विकस्टार्ट में बताया गया है, ARCore के साथ काम करने वाले सभी डिवाइस Geospatial API के साथ काम नहीं करते हैं.

डिवाइस की जांच करने के लिए, GARSession.isGeospatialModeSupported: का इस्तेमाल करें, जैसा कि यहां बताया गया है:

if (![self.garSession isGeospatialModeSupported:GARGeospatialModeEnabled]) {
  [self setErrorStatus:@"GARGeospatialModeEnabled is not supported on this device."];
  return;
}

GARSessionConfiguration *configuration = [[GARSessionConfiguration alloc] init];
configuration.geospatialMode = GARGeospatialModeEnabled;
[self.garSession setConfiguration:configuration error:&error];
if (error) {
  [self setErrorStatus:[NSString stringWithFormat:@"Failed to configure GARSession: %d",
                                                  (int)error.code]];
  return;
}

रनटाइम के दौरान, उपयोगकर्ता से जगह की जानकारी की अनुमतियां मांगें

सेशन को कॉन्फ़िगर करने से पहले, आपके ऐप्लिकेशन को रनटाइम के दौरान, जगह की जानकारी की इन अनुमतियों का अनुरोध करना होगा:

डिवाइस की मौजूदा जगह पर जियोस्पेशल डेटा की उपलब्धता देखना

जियोस्पेशल एपीआई, जियोस्पेशल ट्रांसफ़ॉर्म का पता लगाने के लिए, VPS और जीपीएस के कॉम्बिनेशन का इस्तेमाल करता है. इसलिए, जब तक डिवाइस की जगह की जानकारी का पता चलता है, तब तक एपीआई का इस्तेमाल किया जा सकता है. जिन इलाकों में जीपीएस की सटीक जानकारी नहीं मिलती है, जैसे कि इनडोर स्पेस और शहर के घने इलाके, वहां एपीआई वीपीएस कवरेज का इस्तेमाल करके, सटीक ट्रांसफ़ॉर्म जनरेट करेगा. सामान्य स्थितियों में, वीपीएस से जगह की सटीक जानकारी करीब 5 मीटर और घूमने की सटीक जानकारी 5 डिग्री तक मिल सकती है. GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: का इस्तेमाल करके पता लगाएं कि किसी जगह पर VPS की सुविधा उपलब्ध है या नहीं.

जियोस्पेशल एपीआई का इस्तेमाल उन इलाकों में भी किया जा सकता है जहां वीपीएस की सुविधा उपलब्ध नहीं है. अगर बाहरी जगहों पर, ऊपर की ओर कोई रुकावट नहीं है या बहुत कम रुकावटें हैं, तो जीपीएस का इस्तेमाल करके, सटीक ट्रांसफ़ॉर्म जनरेट किया जा सकता है.

आगे क्या करना है