iOS को टारगेट करने वाले अपने Unity (AR Foundation) ऐप्लिकेशन के लिए जियोस्पेशियल एपीआई चालू करें

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

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

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

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

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

ARCore Geospatial API का इस्तेमाल करने के लिए, आपके प्रोजेक्ट में AR Foundation और AR Foundation के लिए ARCore एक्सटेंशन काम करने चाहिए.

ARCore API चालू करना

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

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

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

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

  1. बदलाव करें > प्रोजेक्ट सेटिंग > XR प्लग-इन मैनेजमेंट > ARCore एक्सटेंशन पर जाएं. पक्का करें कि iOS सहायता चालू है विकल्प चुना गया हो.
  2. ज़रूरी नहीं सुविधाएं में जाकर, भौगोलिक डेटा चुनें.

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

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

  1. पक्का करें कि प्रोजेक्ट के ऐसेट फ़ोल्डर में, स्क्रिप्ट करने लायक ARCoreExtensionsConfig ऑब्जेक्ट मौजूद हो. इसे बनाने के लिए, ऐसेट पैनल में राइट क्लिक करें और बनाएं > XR > ARCore एक्सटेंशन कॉन्फ़िगरेशन चुनें.
  2. अपने ऐसेट फ़ोल्डर में, स्क्रिप्ट करने लायक ARCoreExtensionsConfig ऑब्जेक्ट चुनें और जियोस्पेशल मोड को चालू है पर सेट करें.

  3. ARCoreExtensionsConfig कॉन्फ़िगरेशन का इस्तेमाल करने के लिए, ARCore Extensions गेम ऑब्जेक्ट को कॉन्फ़िगर करें. हाइरारकी पैनल में, उन ARCore एक्सटेंशन गेम ऑब्जेक्ट का पता लगाएं जिन्हें आपने शुरुआत में ARCore एक्सटेंशन सेट अप करते समय बनाया था. इसके बाद, ARCore एक्सटेंशन कॉन्फ़िगरेशन फ़ील्ड को अपने Assets फ़ोल्डर में, स्क्रिप्ट किए जा सकने वाले ARCoreExtensionConfig ऑब्जेक्ट से कनेक्ट करें.

उपयोगकर्ता को डिवाइस के डेटा के इस्तेमाल की अनुमति देने के लिए कहना

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

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

ARCore के साथ काम करने वाले सभी डिवाइस, Geospatial API के साथ काम नहीं करते. यह देखने के लिए कि उपयोगकर्ता का डिवाइस, AREarthManager.IsGeospatialModeSupported() अगर आपको FeatureSupported.Unsupported दिखता है, तो सेशन को कॉन्फ़िगर करने की कोशिश न करें.

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

रनटाइम की अनुमति के अनुरोधों को ट्रिगर करने वाली स्क्रिप्ट में, Unity की जगह की जानकारी से जुड़ी सेवाओं को चालू करने के लिए, यह तरीका अपनाएं:

  1. Project Settings > iOS > Other Settings > Location Usage Description में, उस ऐप्लिकेशन का नाम डालें जिसे अनुमतियां चाहिए.

  2. रनटाइम के दौरान अनुमति का अनुरोध ट्रिगर करने के लिए, Unity की जगह की जानकारी की सेवाएं चालू करें. इसके लिए, यह तरीका अपनाएं:

    public void OnEnable()
    {
        Input.location.Start();
    }
    
    public void OnDisable()
    {
        Input.location.Stop();
    }
    

    ज़्यादा जानकारी के लिए, Unity का LocationService दस्तावेज़ देखें.

डिवाइस की मौजूदा जगह के हिसाब से, जगह के हिसाब से उपलब्धता देखें

जियोस्पेशल पोज़ का पता लगाने के लिए, Geospatial API VPS और जीपीएस, दोनों का इस्तेमाल करता है. इसलिए, जब तक डिवाइस की जगह की जानकारी का पता चलता है, तब तक एपीआई का इस्तेमाल किया जा सकता है. कम जीपीएस वाले इलाकों, जैसे कि इनडोर जगहों और घनी आबादी वाले शहरी माहौल में, यह एपीआई बहुत ज़्यादा सटीक पोज़ जनरेट करने के लिए वीपीएस कवरेज पर निर्भर करता है. सामान्य स्थितियों में, वीपीएस से जगह की सटीक जानकारी करीब 5 मीटर और घूमने की सटीक जानकारी 5 डिग्री तक मिल सकती है. AREarthManager.CheckVpsAvailability() का इस्तेमाल करके पता लगाएं कि किसी जगह पर VPS की सुविधा उपलब्ध है या नहीं.

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

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