जियोस्पेशल एपीआई, जियोस्पेशल ट्रांसफ़ॉर्मेशन के लिए वीपीएस और जीपीएस डेटा, दोनों का इस्तेमाल करता है. एपीआई का इस्तेमाल ऐसी किसी भी जगह पर किया जा सकता है जहां डिवाइस अपनी जगह की जानकारी का पता लगा सकता है:
- जीपीएस की सटीक जानकारी न देने वाले इलाके, जैसे कि इनडोर और घने शहरी माहौल में एपीआई, सटीक कन्वर्ज़न जनरेट करने के लिए वीपीएस कवरेज पर निर्भर करेगा.
- कुछ ऐसी जगहें भी होती हैं जहां इंटरनेट के काम में कुछ रुकावटें आती हैं या इनकी वजह से कोई रुकावट नहीं आती. इसलिए, जियोस्पेशल एपीआई, जीपीएस से जगह की जानकारी देने वाले उपलब्ध डेटा का इस्तेमाल करके, ज़्यादा सटीक डेटा के साथ जियोस्पेशल ट्रांसफ़ॉर्म जनरेट कर सकता है.
आप यह तय कर सकते हैं कि एआर (ऑगमेंटेड रिएलिटी) सत्र शुरू होने से पहले, आप तय किए गए हॉरिज़ॉन्टल पोज़िशन पर वीपीएस की उपलब्धता का पता लगा सकते हैं. साथ ही, आप इसका इस्तेमाल ज़्यादा खास अनुभव देने के लिए कर सकते हैं — उदाहरण के लिए, जब आप वीपीएस उपलब्ध हों, सिर्फ़ तब "एआर डालें" बटन प्रज़ेंट कर सकते हैं.
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 कवरेज के बिना जियोस्पेशल एपीआई का इस्तेमाल करें
जियोस्पेशल एपीआई का इस्तेमाल उन इलाकों में भी किया जा सकता है जहां वीपीएस कवरेज नहीं है. जीपीएस की मदद से, खुले में बहुत कम रुकावटें आ रही हैं या कोई रुकावट नहीं आ रही है. इसलिए, जीपीएस सटीक तरीके से फ़ोटो खिंचवाने की जगह बनाने के लिए काफ़ी है.
आगे क्या
- वास्तविक दुनिया में उपयोगकर्ता के डिवाइस के सटीक स्थान का पता लगाने के लिए, डिवाइस के कैमरे का भौगोलिक स्थान पाएं.