जगह की जानकारी

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
प्लैटफ़ॉर्म चुनें: Android iOS JavaScript वेब सेवा

Android के लिए Places SDK टूल, जगहों के बारे में बेहतर जानकारी देता है, जिसमें जगह का नाम और पता, अक्षांश/देशांतर निर्देशांकों के तौर पर दी गई भौगोलिक जगह, जगह का टाइप (जैसे कि नाइट क्लब, पालतू जानवरों की दुकान, संग्रहालय वगैरह) शामिल है. किसी खास जगह की यह जानकारी ऐक्सेस करने के लिए, जगह का आईडी डाला जा सकता है. जगह का आईडी, स्थायी तौर पर किसी जगह की पहचान करता है.

जगह की जानकारी

Place ऑब्जेक्ट, किसी खास जगह के बारे में जानकारी देता है. Place ऑब्जेक्ट को होल्ड करने के ये तरीके हैं:

जब आप किसी जगह के लिए अनुरोध करते हैं, तो आपको यह बताना होता है कि जगह का कौनसा डेटा देना है. ऐसा करने के लिए, दिए गए डेटा के बारे में बताने वाले Place.Field की सूची दें. यह सूची एक अहम विचार है, क्योंकि इससे हर अनुरोध की लागत पर असर पड़ता है.

जगह के डेटा के नतीजे खाली नहीं हो सकते. इसलिए, सिर्फ़ जगह की जानकारी के डेटा वाले नतीजे दिखाए जाते हैं. उदाहरण के लिए, अगर किसी अनुरोध की गई जगह की फ़ोटो मौजूद नहीं है, तो खोज के नतीजों में photos फ़ील्ड नहीं दिखेगा.

नीचे दिए गए उदाहरण में अनुरोध से मिले डेटा के बारे में बताने के लिए, तीन Place.Field वैल्यू की सूची दी गई है:

Java

// Specify the fields to return.
final List placeFields = Arrays.asList(Place.Field.NAME, Place.Field.RATING, Place.Field.OPENING_HOURS);

Kotlin

// Specify the fields to return.
val placeFields = listOf(Place.Field.NAME, Place.Field.RATING, Place.Field.OPENING_HOURS)

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

  • getAddress() – जगह का पता, इंसान के लिए पढ़ने लायक फ़ॉर्मैट में.
  • getAddressComponents() – इस जगह के लिए पते के कॉम्पोनेंट का List. ये कॉम्पोनेंट किसी जगह के पते के बारे में स्ट्रक्चर्ड जानकारी निकालने के लिए दिए जाते हैं. जैसे, वह शहर ढूंढना जहां वह जगह मौजूद है. पते के फ़ॉर्मैट के लिए इन कॉम्पोनेंट का इस्तेमाल न करें. इसके बजाय, getAddress() को कॉल करें, जो स्थानीय जगह के हिसाब से फ़ॉर्मैट किया गया पता देता है.
  • getID() – जगह की जानकारी के लिए टेक्स्ट आइडेंटिफ़ायर. इस पेज के बाकी हिस्से में, जगह के आईडी के बारे में ज़्यादा जानें.
  • getLatLng() – जगह की भौगोलिक जगह, जिसे अक्षांश और देशांतर निर्देशांकों के तौर पर दिखाया गया है.
  • getName() – जगह का नाम.
  • getOpeningHours() – जगह का OpeningHours. स्ट्रिंग की सूची लौटाने के लिए, OpeningHours.getWeekdayText() को कॉल करें. इससे, हफ़्ते के हर दिन के लिए, कारोबार के खुलने और बंद होने का समय पता चलता है. period ऑब्जेक्ट की सूची लौटाने के लिए, OpeningHours.getPeriods() को कॉल करें. इस सूची में, ज़्यादा जानकारी मौजूद होती है, जो getWeekdayText() के डेटा से मिलती-जुलती होती है. ध्यान दें: अगर कोई जगह हमेशा खुली रहती है, तो समय अवधि को रविवार की आधी रात के तौर पर दिखाया गया है और closeEvent शून्य है.
  • isOpen() – वह बूलियन जिससे पता चलता है कि वह जगह फ़िलहाल खुली है या नहीं. अगर कोई समय तय नहीं किया गया है, तो डिफ़ॉल्ट समय सेट कर दिया जाता है. isOpen तब ही दिखाए जाएंगे, जब Place.Field.UTC_OFFSET और Place.Field.OPENING_HOURS, दोनों उपलब्ध हों. सही नतीजे पाने के लिए, मूल जगह के अनुरोध में Place.Field.BUSINESS_STATUS और Place.Field.UTC_OFFSET फ़ील्ड का अनुरोध करें. अनुरोध न किए जाने पर, यह माना जाता है कि कारोबार चल रहा है. जगह की जानकारी के साथ isOpen का इस्तेमाल करने का तरीका जानने के लिए, यह वीडियो देखें.

कुछ सरल उदाहरण:

Java


final CharSequence name = place.getName();
final CharSequence address = place.getAddress();
final LatLng location = place.getLatLng();

      

Kotlin


val name = place.name
val address = place.address
val location = place.latLng

      

आईडी की मदद से जगह की जानकारी पाएं

जगह का आईडी, टेक्स्ट के तौर पर एक आइडेंटिफ़ायर होता है. यह किसी जगह की पहचान करता है. Android के लिए Places SDK टूल में, आप Place.getId() पर कॉल करके किसी जगह का आईडी पा सकते हैं. Place ऑटोकंप्लीट सेवा, हर उस जगह के लिए जगह का आईडी भी दिखाती है जो दी गई खोज क्वेरी और फ़िल्टर से मेल खाती है. जगह के आईडी को स्टोर करें और उसका इस्तेमाल Place ऑब्जेक्ट को वापस पाने के लिए करें.

आईडी से जगह की जानकारी पाने के लिए, PlacesClient.fetchPlace() को कॉल करें, फिर FetchPlaceRequest पास करें.

एपीआई, Task में एक FetchPlaceResponse दिखाता है. FetchPlaceResponse में, Place ऑब्जेक्ट है, जो दिए गए जगह के आईडी से मेल खाता है.

नीचे दिए गए कोड के उदाहरण में बताई गई जगह के बारे में जानकारी पाने के लिए, fetchPlace() को कॉल करने का तरीका बताया गया है.

Java


// Define a Place ID.
final String placeId = "INSERT_PLACE_ID_HERE";

// Specify the fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.NAME);

// Construct a request object, passing the place ID and fields array.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);

placesClient.fetchPlace(request).addOnSuccessListener((response) -> {
    Place place = response.getPlace();
    Log.i(TAG, "Place found: " + place.getName());
}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
        final ApiException apiException = (ApiException) exception;
        Log.e(TAG, "Place not found: " + exception.getMessage());
        final int statusCode = apiException.getStatusCode();
        // TODO: Handle error with given status code.
    }
});

      

Kotlin


// Define a Place ID.
val placeId = "INSERT_PLACE_ID_HERE"

// Specify the fields to return.
val placeFields = listOf(Place.Field.ID, Place.Field.NAME)

// Construct a request object, passing the place ID and fields array.
val request = FetchPlaceRequest.newInstance(placeId, placeFields)

placesClient.fetchPlace(request)
    .addOnSuccessListener { response: FetchPlaceResponse ->
        val place = response.place
        Log.i(PlaceDetailsActivity.TAG, "Place found: ${place.name}")
    }.addOnFailureListener { exception: Exception ->
        if (exception is ApiException) {
            Log.e(TAG, "Place not found: ${exception.message}")
            val statusCode = exception.statusCode
            TODO("Handle error with given status code")
        }
    }

      

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

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

जगह के आईडी के बारे में ज़्यादा जानकारी

Android के लिए Places SDK टूल में इस्तेमाल की जाने वाली जगह का आईडी, वही आइडेंटिफ़ायर होता है जिसका इस्तेमाल Places API में किया जाता है. हर जगह के आईडी का उल्लेख सिर्फ़ एक जगह के लिए किया जा सकता है, लेकिन एक ही जगह के लिए एक से ज़्यादा जगह के आईडी हो सकते हैं. कुछ दूसरी वजहों से, जगह की जानकारी को नया जगह का आईडी मिल सकता है. उदाहरण के लिए, ऐसा तब हो सकता है, जब कारोबार नई जगह पर पहुंच जाता है.

जब आप किसी प्लेस आईडी के बारे में बताते हुए जगह का अनुरोध करते हैं, तो इस बात को लेकर भरोसा हो सकता है कि आपको जवाब में हमेशा वही जगह मिलेगी (अगर वह जगह अब भी मौजूद है). ध्यान दें कि रिस्पॉन्स में एक ऐसी जगह का आईडी हो सकता है जो आपके अनुरोध में दिए गए आईडी से अलग हो.

ज़्यादा जानकारी के लिए, जगह के आईडी की खास जानकारी देखें.