मौजूदा जगह

प्लैटफ़ॉर्म चुनें: 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 से कम या उसके बराबर होता है. ध्यान दें कि कुल योग #33 नहीं होना चाहिए.

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

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

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