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

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

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

आप यह तय कर सकते हैं कि एआर (ऑगमेंटेड रिएलिटी) सत्र शुरू होने से पहले, आप तय किए गए हॉरिज़ॉन्टल पोज़िशन पर वीपीएस की उपलब्धता का पता लगा सकते हैं. साथ ही, आप इसका इस्तेमाल ज़्यादा खास अनुभव देने के लिए कर सकते हैं — उदाहरण के लिए, जब आप वीपीएस उपलब्ध हों, सिर्फ़ तब "एआर डालें" बटन प्रज़ेंट कर सकते हैं.

ARCore API चालू करें

ऐप्लिकेशन में VPS की उपलब्धता देखने के लिए, ARCore API को चालू करना ज़रूरी है.

अपने ऐप्लिकेशन में वीपीएस की उपलब्धता देखना

भौगोलिक डेटा का इस्तेमाल ऐसी किसी भी जगह पर किया जा सकता है जहां डिवाइस अपनी जगह की जानकारी हासिल कर सकता है. अगर आपका एआर (ऑगमेंटेड रिएलिटी) अनुभव वीपीएस कवरेज पर निर्भर करता है, तो GARVPSAvailabilityFuture एक एसिंक्रोनस टास्क पाने के लिए GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: का इस्तेमाल किया जा सकता है. यह टास्क, हॉरिज़ॉन्टल पोज़िशन में वीपीएस की उपलब्धता की जांच करता है. जब आपके पास GARVPSAvailabilityFuture हो, तो आप पोल करके या कॉलबैक के ज़रिए इसका नतीजा पा सकते हैं.

पोल का नतीजा

Future की स्थिति जानने के लिए, GARVPSAvailabilityFuture.state का इस्तेमाल करें. ये तीन अलग-अलग स्थितियां होती हैं:

  • GARFutureStatePending: कार्रवाई अभी तक पूरी नहीं हुई है, इसलिए कोई नतीजा नहीं मिला.
  • GARFutureStateCancelled: कार्रवाई को GARVPSAvailabilityFuture#cancel ने रद्द कर दिया है. रजिस्टर किए गए किसी भी कॉलबैक को कभी भी कॉल नहीं किया जाएगा.
  • GARFutureStateDone: कार्रवाई पूरी हो गई है. नतीजा पाने के लिए, GARVPSAvailabilityFuture.result का इस्तेमाल करें.

टास्क पूरा होने तक, आप GARVPSAvailabilityFuture.state और GARVPSAvailabilityFuture.result की जांच कर सकते हैं.

कॉलबैक के ज़रिए नतीजे पाएं

आपको कॉलबैक के ज़रिए भी Future का नतीजा मिल सकता है. GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: का इस्तेमाल करें और completionHandler दें. completionHandler को Future के GARFutureStateDone के बाद जल्द ही मुख्य थ्रेड पर कॉल किया जाएगा.

Future रद्द करें

Future सदस्यता रद्द करने के लिए, GARVPSAvailabilityFuture#cancel का इस्तेमाल करें. थ्रेड पैरललिज़्म के कारण, यह हो सकता है कि आपके रद्द करने का प्रयास प्रॉमिस को रद्द न करता हो. अगर यह कोशिश सफल रहती है, तो GARVPSAvailabilityFuture#cancel YES वापस भेजता है और NO नहीं.

VPS कवरेज के बिना जियोस्पेशल एपीआई का इस्तेमाल करें

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

आगे क्या