iOS के लिए Places SDK टूल, जगहों के बारे में ज़्यादा जानकारी देता है, जिसमें जगह का नाम और पता शामिल है, अक्षांश/देशांतर निर्देशांकों के रूप में बताई गई भौगोलिक जगह, जगह का टाइप (जैसे कि नाइट क्लब, पालतू जानवरों की दुकान, म्यूज़ियम वगैरह). किसी खास जगह की यह जानकारी ऐक्सेस करने के लिए, जगह का आईडी इस्तेमाल किया जा सकता है. इस आईडी से जगह की खास पहचान होती है.
जगह की जानकारी
GMSPlace
क्लास किसी खास जगह के बारे में जानकारी देती है. GMSPlace
ऑब्जेक्ट को होल्ड करने के ये तरीके हैं:
GMSPlacesClient findPlaceLikelihoodsFromUserLocationWithPlaceFields:
को कॉल करें. मौजूदा जगह की जानकारी पाने की गाइड देखें.GMSPlaceField
, स्थान आईडी और कॉलबैक तरीके से गुज़रते हुएGMSPlacesClient fetchPlaceFromPlaceID:
को कॉल करें. जगह की जानकारी के अनुरोधों के लिए, अगर अनुरोध के साथ कम से कम एक फ़ील्ड की जानकारी नहीं दी जाती है या अनुरोध सेfields
पैरामीटर हटा दिया जाता है, तो सभी फ़ील्ड वापस आ जाते हैं. साथ ही, आपको उसी के मुताबिक बिल भेजा जाता है. आईडी से जगह की जानकारी पाने की गाइड देखें.
किसी जगह का अनुरोध करते समय, आपको यह बताना होगा कि किस तरह की जगह का डेटा दिखाना है. ऐसा करने के लिए, GMSPlaceField
के बारे में बताएं.
इससे यह पता चलेगा कि किस तरह का डेटा दिखाना है. यह एक ज़रूरी बात है, क्योंकि इससे
हर अनुरोध की लागत पर असर पड़ेगा.
जगह के डेटा के नतीजे खाली नहीं हो सकते. इसलिए, सिर्फ़ जगह की जानकारी के डेटा दिखाए जाते हैं. उदाहरण के लिए, अगर किसी अनुरोध की गई जगह की फ़ोटो मौजूद नहीं है, तो खोज के नतीजों में photos
फ़ील्ड नहीं दिखेगा.
नीचे दिए गए उदाहरण में, अनुरोध से मिले डेटा को दिखाने के लिए, दो फ़ील्ड वैल्यू की सूची दी गई है:
Swift
// A hotel in Saigon with an attribution. let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs" // Specify the place data types to return. let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) | UInt(GMSPlaceField.placeID.rawValue))!
Objective-C
// A hotel in Saigon with an attribution. NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs"; // Specify the place data types to return. GMSPlaceField fields = (GMSPlaceFieldName | GMSPlaceFieldPlaceID);
जगह के फ़ील्ड के बारे में ज़्यादा जानें. जगह के डेटा के अनुरोधों की बिलिंग करने के तरीके के बारे में ज़्यादा जानने के लिए, इस्तेमाल और बिलिंग पर जाएं.
GMSPlace
क्लास में यह जगह का डेटा हो सकता है:
name
– जगह का नाम.placeID
– जगह की जानकारी के लिए टेक्स्ट आइडेंटिफ़ायर. इस पेज के बाकी हिस्से में, जगह के आईडी के बारे में ज़्यादा जानें.coordinate
– जगह की भौगोलिक जगह, जिसे अक्षांश और देशांतर निर्देशांकों के तौर पर दिखाया गया है.phoneNumber
– जगह का फ़ोन नंबर, अंतरराष्ट्रीय फ़ॉर्मैट में.formattedAddress
– इस जगह का पता, जिसे लोग पढ़ सकें.अक्सर यह पता डाक पते के बराबर होता है. ध्यान दें कि यूनाइटेड किंगडम जैसे देशों में, लाइसेंस पर लगी पाबंदियों की वजह से, उन जगहों के पिन पते सही नहीं होते हैं.
फ़ॉर्मैट में दिया गया पता तार्किक रूप से एक या ज़्यादा पते के कॉम्पोनेंट से बना होता है. उदाहरण के लिए, पते "111 8th Avenue, New York, NY" में ये कॉम्पोनेंट शामिल होते हैं: "111" (स्ट्रीट नंबर), "8th Avenue" (रूट), "New York" (शहर) और "NY" (अमेरिका का राज्य).
प्रोग्राम के फ़ॉर्मैट में दिए गए पते को पार्स न करें. इसके बजाय, आपको अलग-अलग पते के कॉम्पोनेंट का इस्तेमाल करना चाहिए. एपीआई के जवाब में, फ़ॉर्मैट किए गए पते के फ़ील्ड के साथ-साथ, कॉम्पोनेंट भी शामिल होते हैं.
openingHours
– उस जगह के खुलने का समय (जैसा किGMSOpeningHours
में बताया गया है). हफ़्ते के हर दिन के कामकाजी घंटों के हिसाब से बनाई गई स्ट्रिंग की सूची पाने के लिए,GMSOpeningHours.weekdayText
पर कॉल करें. ज़्यादा जानकारी के साथGMSPeriod
की सूची लौटाने के लिएGMSOpeningHours.Periods
पर कॉल करें. यह जानकारीweekdayText
के डेटा से मिलती-जुलती है. ध्यान दें: अगर कोई जगह हमेशा खुली रहती है, तो समय अवधि को रविवार की आधी रात के तौर पर दिखाया गया है औरcloseEvent
शून्य है.addressComponents
– किसी जगह के लिए पते के कॉम्पोनेंट दिखाने वालेGMSAddressComponent
ऑब्जेक्ट की कैटगरी. ये कॉम्पोनेंट किसी जगह के पते के बारे में स्ट्रक्चर्ड जानकारी निकालने के लिए दिए जाते हैं. जैसे, उस शहर का पता लगाना जहां वह जगह मौजूद है. इन कॉम्पोनेंट का इस्तेमाल पता फ़ॉर्मैट करने के लिए न करें. इसके बजाय,formattedAddress
प्रॉपर्टी का इस्तेमाल करें, जो स्थानीय जगह के हिसाब से फ़ॉर्मैट किया गया पता देती है.addressComponents
कैटगरी के बारे में इन बातों पर ध्यान दें:- पते के कॉम्पोनेंट की कैटगरी में,
formattedAddress
से ज़्यादा कॉम्पोनेंट शामिल हो सकते हैं. - इस श्रेणी में वे सभी राजनैतिक इकाइयां शामिल नहीं होती हैं जिनमें एक पता होता है. हालांकि, इनमें
formattedAddress
की जानकारी शामिल नहीं होती है. - इस बात की गारंटी नहीं है कि रिस्पॉन्स का फ़ॉर्मैट, अनुरोधों के बीच एक जैसा बना रहेगा. खास तौर पर,
addressComponents
की संख्या, अनुरोध किए गए पते के हिसाब से अलग-अलग होती है. साथ ही, इस पते के लिए यह जानकारी समय के साथ बदल सकती है. कोई कॉम्पोनेंट, अरे में पोज़िशन बदल सकता है. कॉम्पोनेंट किस तरह का है, यह बदल सकता है. हो सकता है कि बाद में मिले जवाब में कोई खास कॉम्पोनेंट मौजूद न हो.
- पते के कॉम्पोनेंट की कैटगरी में,
userRatingsTotal
– से पता चलता है कि किसी जगह की रेटिंग कितनी है.
GMSPlace
क्लास में ये सदस्य फ़ंक्शन शामिल हैं:
-
isOpen
openingHours
औरUTCOffsetMinutes
, और मौजूदा तारीख और समय के आधार पर, हिसाब लगाता है कि कोई जगह दिए गए समय में खुली है या नहीं. isOpenAtDate
यह हिसाब लगाता है किopeningHours
औरUTCOffsetMinutes
, और मौजूदा तारीख और समय के आधार पर, दी गई तारीख पर कोई जगह खुली है या नहीं.
खुलने का समय और/या तारीखें पाने के लिए इन फ़ंक्शन का इस्तेमाल करते समय, मूल
fetchPlaceFromPlaceID:
या findPlaceLikelihoodsFromUserLocationWithPlaceFields:
अनुरोध में, GMSPlaceFieldOpeningHours
और GMSPlaceFieldUTCOffsetMinutes
दोनों फ़ील्ड दिए जाने चाहिए. अगर इनमें से कोई भी फ़ील्ड मौजूद नहीं है, तो GMSPlace
ऑब्जेक्ट में खुलने का समय या तारीखें नहीं होंगी, और कॉल
GMSPlaceOpenStatusUnknown
दिखेगा. सटीक नतीजे पाने के लिए, मूल जगह के अनुरोध में GMSPlaceFieldBusinessStatus
और GMSPlaceFieldUTCOffsetMinutes
फ़ील्ड का अनुरोध करें. अनुरोध न किए जाने पर, यह माना जाता है कि
कारोबार चल रहा है.
isOpen
का इस्तेमाल करने का तरीका जानने के लिए, यह वीडियो देखें.
आईडी की मदद से जगह की जानकारी पाएं
जगह का आईडी, टेक्स्ट के तौर पर एक आइडेंटिफ़ायर होता है. यह किसी जगह की पहचान करता है. iOS के लिए Places SDK टूल में, आप GMSPlace
ऑब्जेक्ट से किसी जगह का आईडी पा सकते हैं. जगह के आईडी को स्टोर करें और उसका इस्तेमाल GMSPlace
ऑब्जेक्ट को वापस पाने के लिए करें.
आईडी की मदद से जगह की जानकारी पाने के लिए, GMSPlacesClient
fetchPlaceFromPlaceID:
को कॉल करें. इसके लिए, ये पैरामीटर पास करें:
- जगह के आईडी वाली स्ट्रिंग.
- एक या एक से ज़्यादा
GMSPlaceField
, दिए जाने वाले डेटा के प्रकार तय करने के लिए. - अगर ऑटोकंप्लीट क्वेरी को खत्म करने के लिए कॉल किया जाता है, तो सेशन टोकन. अगर नहीं, तो कोई बात नहीं.
- नतीजे को मैनेज करने के लिए,
GMSPlaceResultCallback
.
एपीआई, GMSPlace
ऑब्जेक्ट में पास किए गए
कॉलबैक के खास तरीके को शुरू करता है. अगर स्थान नहीं मिलता है, तो स्थान ऑब्जेक्ट शून्य है.
Swift
// A hotel in Saigon with an attribution. let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs" // Specify the place data types to return. let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) | UInt(GMSPlaceField.placeID.rawValue))! placesClient?.fetchPlace(fromPlaceID: placeID, placeFields: fields, sessionToken: nil, callback: { (place: GMSPlace?, error: Error?) in if let error = error { print("An error occurred: \(error.localizedDescription)") return } if let place = place { self.lblName?.text = place.name print("The selected place is: \(place.name)") } })
Objective-C
// A hotel in Saigon with an attribution. NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs"; // Specify the place data types to return. GMSPlaceField fields = (GMSPlaceFieldName | GMSPlaceFieldPlaceID); [_placesClient fetchPlaceFromPlaceID:placeID placeFields:fields sessionToken:nil callback:^(GMSPlace * _Nullable place, NSError * _Nullable error) { if (error != nil) { NSLog(@"An error occurred %@", [error localizedDescription]); return; } if (place != nil) { NSLog(@"The selected place is: %@", [place name]); } }];
अपने ऐप्लिकेशन में एट्रिब्यूशन दिखाएं
जब आपका ऐप्लिकेशन GMSPlacesClient
lookUpPlaceID:callback:
से मिली जानकारी दिखाता है, तब ऐप्लिकेशन को एट्रिब्यूशन भी दिखाने होंगे.
एट्रिब्यूशन से जुड़े दस्तावेज़ देखें.
जगह के आईडी के बारे में ज़्यादा जानकारी
iOS के लिए Places SDK टूल में इस्तेमाल किया जाने वाला प्लेस आईडी और एपीआई, Android के लिए Places SDK टूल और अन्य Google API में इस्तेमाल किया गया आइडेंटिफ़ायर.
हर जगह के आईडी का उल्लेख सिर्फ़ एक जगह के लिए किया जा सकता है, लेकिन एक ही जगह के लिए एक से ज़्यादा जगह के आईडी हो सकते हैं.
कुछ मामलों में, जगह की जानकारी को नए जगह का आईडी मिल सकता है. उदाहरण के लिए, ऐसा तब हो सकता है, जब कोई कारोबार किसी नई जगह पर शिफ़्ट हो जाता है.
जब आप किसी प्लेस आईडी के बारे में बताते हुए जगह का अनुरोध करते हैं, तो इस बात को लेकर भरोसा हो सकता है कि आपको जवाब में हमेशा वही जगह मिलेगी (अगर वह जगह अब भी मौजूद है). ध्यान दें कि रिस्पॉन्स में एक ऐसी जगह का आईडी हो सकता है जो आपके अनुरोध में दिए गए आईडी से अलग हो.
ज़्यादा जानकारी के लिए, जगह के आईडी की खास जानकारी देखें.