मौजूदा जगह

प्लैटफ़ॉर्म चुनें: Android iOS

iOS के लिए Places SDK टूल का इस्तेमाल करके, उस जगह का पता लगाया जा सकता है जहां फ़िलहाल आपका डिवाइस मौजूद है. इसका मतलब है कि वह जगह जिस पर डिवाइस की मौजूदा जगह की रिपोर्ट की गई है. जगहों के उदाहरणों में स्थानीय कारोबार, लोकप्रिय जगहें, और भौगोलिक जगहें शामिल हैं.

  1. जगह की जानकारी की अनुमति का अनुरोध करना
  2. ट्रैक इस्तेमाल करने की सीमा
  3. मौजूदा जगह की जानकारी पाना
  4. अपने ऐप्लिकेशन में एट्रिब्यूशन दिखाना

जगह की जानकारी की अनुमति का अनुरोध किया जा रहा है

अगर आपके ऐप्लिकेशन में GMSPlacesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: का इस्तेमाल किया जाता है, तो आपके ऐप्लिकेशन को जगह की जानकारी का इस्तेमाल करने के लिए, अनुमति का अनुरोध करना होगा. अपनी Info.plist फ़ाइल में NSLocationWhenInUseUsageDescription कुंजी जोड़ें, ताकि उपयोगकर्ता को यह बताने के लिए स्ट्रिंग बनाई जा सके कि आपको जगह की जानकारी की ज़रूरत क्यों है. उदाहरण के लिए:

<key>NSLocationWhenInUseUsageDescription</key>
<string>Show your location on the map</string>

अगर आपको पुष्टि करने वाला डायलॉग ट्रिगर किए बिना, findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: को ऐप्लिकेशन के बैकग्राउंड में चलने पर कॉल करना है, तो कॉल करने से पहले यह तरीका अपनाएं:

  1. अपनी Info.plistफ़ाइल में NSLocationAlwaysUsageDescription कुंजी जोड़ें.
  2. तरीके को कॉल करने से पहले, CLLocationManager के किसी भी इंस्टेंस पर requestAlwaysAuthorization को कॉल करें.

CLLocationManager से अनुमति देने का अनुरोध इस तरह करें:

Swift

    locationManager.requestAlwaysAuthorization()
    

Objective-C

    [self.locationManager requestAlwaysAuthorization];
    

मौजूदा जगह की जानकारी फ़ेच की जा रही है

स्थानीय कारोबार या डिवाइस वाली मौजूदा जगह को ढूंढने के लिए, GMSPlacesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: पर कॉल करें. ये पैरामीटर शामिल करें:

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

फ़ील्ड, 'जगह से जुड़े खोज के नतीजे' के हिसाब से होते हैं. इन्हें तीन बिलिंग कैटगरी में बांटा गया है: बेसिक, संपर्क, और माहौल. बेसिक फ़ील्ड की बिलिंग, बेसिक दर पर की जाती है और इसके लिए अलग से कोई शुल्क नहीं लिया जाता. संपर्क और माहौल फ़ील्ड का बिल ज़्यादा लिया जाता है. डेटा के अनुरोधों का बिल बनाने के तरीके के बारे में ज़्यादा जानने के लिए, इस्तेमाल और बिलिंग देखें.

एपीआई बताए गए कॉलबैक तरीके को शुरू करता है और GMSPlaceLikelihood ऑब्जेक्ट का कलेक्शन दिखाता है.

हर GMSPlaceLikelihood ऑब्जेक्ट किसी जगह के बारे में बताता है. हर जगह के लिए, नतीजे में इस बात का संकेत शामिल होता है कि वह जगह सही है या नहीं. ज़्यादा वैल्यू का मतलब है कि उस जगह के लिए, सबसे अच्छी जगह मेल खाने की संभावना ज़्यादा है. अगर डिवाइस की जगह से जुड़ी जगह की जानकारी नहीं है, तो बफ़र खाली हो सकता है.

नीचे दिया गया कोड सैंपल, उन जगहों की सूची दिखाता है जहां डिवाइस के मौजूद होने की संभावना सबसे ज़्यादा होती है. साथ ही, यह हर जगह का नाम और संभावना लॉग करता है.

Swift

// Specify the place data types to return.
let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) |
                                          UInt(GMSPlaceField.placeID.rawValue))!
placesClient?.findPlaceLikelihoodsFromCurrentLocation(withPlaceFields: fields, callback: {
  (placeLikelihoodList: Array<GMSPlaceLikelihood>?, error: Error?) in
  if let error = error {
    print("An error occurred: \(error.localizedDescription)")
    return
  }

  if let placeLikelihoodList = placeLikelihoodList {
    for likelihood in placeLikelihoodList {
      let place = likelihood.place
      print("Current Place name \(String(describing: place.name)) at likelihood \(likelihood.likelihood)")
      print("Current PlaceID \(String(describing: place.placeID))")
    }
  }
})

Objective-C

// Specify the place data types to return.
GMSPlaceField fields = (GMSPlaceFieldName | GMSPlaceFieldPlaceID);
[_placesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:fields callback:^(NSArray<GMSPlaceLikelihood *> * _Nullable likelihoods, NSError * _Nullable error) {
  if (error != nil) {
    NSLog(@"An error occurred %@", [error localizedDescription]);
    return;
  }
  if (likelihoods != nil) {
    for (GMSPlaceLikelihood *likelihood in likelihoods) {
      GMSPlace *place = likelihood.place;
      NSLog(@"Current place name: %@", place.name);
      NSLog(@"Place ID: %@", place.placeID);
    }
  }
}];

संभावित वैल्यू के बारे में ज़रूरी जानकारी:

  • इस संभावना से इस बात की मिलती-जुलती संभावना का पता चलता है कि किसी एक अनुरोध के लिए, नतीजों में दी गई जगहों की सूची में उस जगह के मुकाबले सबसे सही जगह कौनसी है. अलग-अलग अनुरोधों के लिए, संभावना की तुलना नहीं की जा सकती.
  • संभावित वैल्यू 0 और 1.0 के बीच होगी.
  • GMSPlaceLikelihood ऑब्जेक्ट के दिए गए कलेक्शन में, संभावना का योग हमेशा 1.0 या उससे कम होता है. ध्यान दें कि यह ज़रूरी नहीं है कि कुल योग 1.0 हो.

उदाहरण के लिए, 55% संभावना को दिखाने के लिए कि सही जगह A है, और 35% संभावना है कि यह जगह B है, संभावना श्रेणी में दो सदस्य होते हैं: 0.55 की संभावना वाली जगह A और 0.35 की संभावना के साथ जगह B.

आपके ऐप्लिकेशन में एट्रिब्यूशन दिखाए जा रहे हैं

जब आपका ऐप्लिकेशन GMSPlacesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: से मिली जानकारी दिखाता है, तो ऐप्लिकेशन को एट्रिब्यूशन भी दिखाने चाहिए. एट्रिब्यूशन के बारे में ज़्यादा पढ़ें.