मैप आईडी का इस्तेमाल करें

मैप आईडी एक यूनीक आइडेंटिफ़ायर होता है. इसका इस्तेमाल, Google Maps के किसी एक इंस्टेंस को दिखाने के लिए किया जाता है. मैप आईडी का इस्तेमाल, अपनी वेबसाइटों और ऐप्लिकेशन पर मैप की सुविधाओं को चालू करने या मैप को मैनेज करने या उनकी स्टाइल तय करने के लिए किया जाता है. Google Cloud Console प्रोजेक्ट में, मैप मैनेजमेंट पेज पर जाकर, अपने हिसाब से हर प्लैटफ़ॉर्म के लिए मैप आईडी बनाए जा सकते हैं. जैसे, JavaScript, Android, iOS या स्टैटिक मैप.

मैप आईडी की मदद से क्या-क्या किया जा सकता है

सुविधाओं और स्टाइल को चालू करने के लिए, मैप आईडी का इस्तेमाल करें. मैप आईडी इस्तेमाल करने के कुछ उदाहरण यहां दिए गए हैं. पूरी सूची के लिए, मैप आईडी का इस्तेमाल करने वाली सुविधाएं देखें:

  • क्लाउड पर मैप की स्टाइलिंग की सुविधाएं: Google Cloud Console का इस्तेमाल करके, अपने मैप को स्टाइल करने, पसंद के मुताबिक बनाने, और मैनेज करने के लिए, मैप आईडी को मैप की स्टाइल से जोड़ें. यह सभी प्लैटफ़ॉर्म पर उपलब्ध है: JavaScript, Android, iOS, और Maps Static API.

  • वेक्टर मैप: वेक्टर-आधारित टाइल से बने मैप का इस्तेमाल करने के लिए, मैप आईडी का इस्तेमाल करें. ये टाइल, क्लाइंट साइड पर लोड होने के समय WebGL का इस्तेमाल करके बनाई जाती हैं. JavaScript पर उपलब्ध है.

  • ऐडवांस मार्कर: ऐडवांस मार्कर चालू करने के लिए, मैप आईडी का इस्तेमाल करें. JavaScript, Android, और iOS पर उपलब्ध है.

क्लाउड पर मैप की स्टाइलिंग के लिए उदाहरण

अपनी वेबसाइट और Android ऐप्लिकेशन पर मैप की स्टाइल बनाने के लिए, क्लाउड पर मैप की स्टाइलिंग की सुविधाओं का इस्तेमाल करें. इसके लिए, यह तरीका अपनाएं:

  1. इस्तेमाल किए जा रहे हर प्लैटफ़ॉर्म के लिए मैप आईडी बनाएं. उदाहरण के लिए, JavaScript और Android मैप आईडी बनाएं. ज़्यादा जानकारी के लिए, मैप आईडी बनाना लेख पढ़ें.

  2. Google Cloud Console पर मैप की स्टाइल कॉन्फ़िगर करें. ज़्यादा जानकारी के लिए, क्लाउड पर मैप की स्टाइलिंग देखें.

  3. Google Cloud Console में, अपने दोनों मैप आईडी को मैप स्टाइल से जोड़ें. ज़्यादा जानकारी के लिए, अपने स्टाइल के साथ मैप आईडी जोड़ना लेख पढ़ें.

  4. अपनी वेबसाइट के JavaScript और Android ऐप्लिकेशन के कोड में मैप आईडी का रेफ़रंस दें. ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन में मैप आईडी जोड़ना लेख पढ़ें.

इसके बाद, आपके मैप आईडी से जुड़ा मैप स्टाइल आपकी वेबसाइट और Android ऐप्लिकेशन पर दिखता है. Cloud Console में अपने मैप स्टाइल में अपडेट किए जा सकते हैं. ये बदलाव, दोनों जगहों पर अपने-आप दिखते हैं. इसके लिए, आपके ग्राहकों को ऐप्लिकेशन अपडेट करने की ज़रूरत नहीं होती.

मैप आईडी का इस्तेमाल करने वाली सुविधाएं

इस टेबल में, Google Maps Platform की उन सुविधाओं और एपीआई के बारे में बताया गया है जिनमें मैप आईडी का इस्तेमाल होता है:

सुविधा या एपीआई इन लक्ष्यों को पूरा करने के लिए, मैप आईडी का इस्तेमाल करता है
ऐडवांस मार्कर बेहतर मार्कर चालू करें. आपको मैप आईडी बनाने की ज़रूरत नहीं है. इसके बजाय, डेमो मैप आईडी `DEMO_MAP_ID` का इस्तेमाल किया जा सकता है.
सीमाओं के लिए डेटा-ड्रिवन स्टाइलिंग मैप आईडी को सीमाओं और स्टाइल के सेट से जोड़ें, ताकि सीमाओं के हिसाब से मैप को स्टाइल किया जा सके.
डेटासेट के लिए डेटा-ड्रिवन स्टाइलिंग डेटासेट के हिसाब से मैप को स्टाइल करने के लिए, मैप आईडी को डेटा और स्टाइल के सेट से जोड़ें.
Flutter अपने Flutter ऐप्लिकेशन में इस्तेमाल किए गए Google Maps को स्टाइल करें.
Maps Embed API वेब पेज पर जोड़ने के लिए, मैप की जानकारी दें और उसे स्टाइल करें.
Maps JavaScript API वेब पेज पर दिखाए जाने के लिए, मैप को स्टाइल करें.
Android के लिए Maps SDK टूल Android ऐप्लिकेशन में दिखाए जाने के लिए, मैप की स्टाइल तय करें.1
iOS के लिए Maps SDK टूल iOS ऐप्लिकेशन में दिखाए जाने के लिए, मैप की स्टाइल तय करें.1
Maps Static API स्टैटिक इमेज के तौर पर रेंडर किए जाने के लिए, मैप की जानकारी दें और उसे स्टाइल करें.
मोबिलिटी से जुड़े समाधान Android और iOS के लिए Maps JavaScript API और SDK टूल का इस्तेमाल करके, मोबिलिटी सलूशन में मैप को स्टाइल करें.1
WebGL (वेक्टर मैप) JavaScript वेक्टर मैप आईडी का इस्तेमाल करके, WebGL की सुविधाएं चालू करें.

1 Android के लिए Maps SDK टूल या iOS के लिए Maps SDK टूल पर मैप आईडी का इस्तेमाल करने से, एक मैप लोड शुरू हो जाता है. इसके लिए, Dynamic Maps एसकेयू के तहत शुल्क देना पड़ता है.

मैप आईडी बनाने और इस्तेमाल करने का तरीका

मैप आईडी, एक यूनीक आइडेंटिफ़ायर होता है. इससे Google Maps के किसी एक इंस्टेंस की पहचान की जाती है. आपने Cloud Console में मैप आईडी बनाए हैं और मैप आईडी से जुड़ी मैप स्टाइल को अपडेट किया है.

ज़रूरी अनुमतियां

अपने प्रोजेक्ट में कोई मैप आईडी बनाने या मैनेज करने के लिए, आपको प्रोजेक्ट के Cloud Console IAM पेज पर, भूमिका के लेवल की सही अनुमतियों वाले एडिटर या मालिक के तौर पर किसी प्रिंसिपल का इस्तेमाल करना होगा. ज़्यादा जानकारी के लिए, आईएएम की बुनियादी और पहले से तय भूमिकाओं का रेफ़रंस देखें.

मैप आईडी बनाना

Cloud Console में किसी भी समय मैप आईडी बनाए जा सकते हैं और मैप आईडी से जुड़ी स्टाइल को अपडेट किया जा सकता है.

मैप आईडी बनाने के लिए, यह तरीका अपनाएं:

  1. ज़रूरी अनुमतियों के साथ, Cloud Console प्रोजेक्ट में साइन इन करें और उसे खोलें.

  2. Cloud Console में, Maps मैनेजमेंट पेज पर जाएं.

  3. मैप आईडी बनाएं को चुनें.

    नया मैप आईडी बनाना

  4. नया मैप आईडी बनाएं पेज पर, ये काम करें:

    1. नाम के लिए, मैप आईडी को कोई नाम दें.
    2. ज़रूरी नहीं: जानकारी एट्रिब्यूट के लिए, बताएं कि मैप आईडी का इस्तेमाल किस काम के लिए किया जाता है.
    3. मैप टाइप के लिए, वह प्लैटफ़ॉर्म चुनें जिस पर आपको मैप आईडी का इस्तेमाल करना है. JavaScript चुनने पर, रेस्टर (डिफ़ॉल्ट) या वेक्टर मैप टाइप भी चुनें. वेक्टर मैप के बारे में ज़्यादा जानने के लिए, वेक्टर मैप लेख पढ़ें.
    4. अपना नया मैप आईडी दिखाने के लिए, सेव करें को चुनें.

मैप के किसी स्टाइल से मैप आईडी जोड़ना

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

  1. Cloud Console में, Maps मैनेजमेंट पेज पर जाएं.
  2. टेबल से, कोई मौजूदा मैप आईडी चुनें.
  3. मैप की स्टाइल में जाकर, कोई मैप स्टाइल चुनें.
  4. सेव करें को चुनें.

    मैप आईडी की ज़्यादा जानकारी वाला पेज, जहां मैप स्टाइल जोड़ा जाता है

अपने ऐप्लिकेशन में मैप आईडी जोड़ना

Android

MapView क्लास का इस्तेमाल करके, गतिविधि की लेआउट फ़ाइल में <fragment> एलिमेंट के ज़रिए अपना मैप आईडी जोड़ें. इसके अलावा, प्रोग्राम के हिसाब से GoogleMapOptions क्लास का इस्तेमाल करके भी ऐसा किया जा सकता है.

उदाहरण के लिए, मान लें कि आपने एक मैप आईडी बनाया है, जिसे res/values/strings.xml में map_id नाम की स्ट्रिंग वैल्यू के तौर पर सेव किया गया है:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">MAP_ID</string>
</resources>

गतिविधि की लेआउट फ़ाइल में <fragment> एलिमेंट की मदद से जोड़े गए मैप के लिए, जिन सभी मैप फ़्रैगमेंट में कस्टम स्टाइल होना चाहिए उनके लिए map:mapId एट्रिब्यूट में मैप आईडी की जानकारी देनी होगी:

<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
    map:name="com.google.android.gms.maps.SupportMapFragment"
    …
    map:mapId="@string/map_id" />

मैप आईडी बताने के लिए, MapView क्लास के map:mapId एट्रिब्यूट का भी इस्तेमाल किया जा सकता है:

<com.google.android.gms.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    ....
    map:mapId="@string/map_id" />

प्रोग्राम के हिसाब से मैप आईडी तय करने के लिए, GoogleMapOptions क्लास का इस्तेमाल करके, उसे MapFragment इंस्टेंस में पास करें:

Java

 MapFragment mapFragment = MapFragment.newInstance(
     new GoogleMapOptions()
         .mapId(getResources().getString(R.string.map_id)));

Kotlin

 val mapFragment = MapFragment.newInstance(
     GoogleMapOptions()
         .mapId(resources.getString(R.string.map_id))
 )

Android Studio में, अपने ऐप्लिकेशन को उसी तरह बनाएं और चलाएं जैसे आम तौर पर किया जाता है. पहले चरण में कॉन्फ़िगर किए गए कस्टम स्टाइल, तय किए गए मैप आईडी वाले सभी मैप पर लागू होते हैं.

iOS

मैप आईडी का इस्तेमाल करके मैप इंस्टैंशिएट करने के लिए, यह तरीका अपनाएं:

  1. Cloud Console से मैप आईडी स्ट्रिंग की मदद से GMSMapID बनाएं.
  2. आपने जो मैप आईडी बनाया है उसके बारे में बताने वाला GMSMapView बनाएं.

Swift

let camera = GMSCameraPosition(latitude: 47.0169, longitude: -122.336471, zoom: 12)
let mapID = GMSMapID(identifier: "MAP_ID")
let mapView = GMSMapView(frame: .zero, mapID: mapID, camera: camera)
self.view = mapView

Objective-C

GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:47.0169
                                                        longitude:-122.336471
                                                             zoom:12];
GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:mapID camera:camera];
self.view = mapView;

अगर आपने अपना मैप आईडी इस्तेमाल किया है, तो किसी भी समय नई स्टाइल पाने के लिए, Cloud Console में अपना मैप आईडी सेट किया जा सकता है. यह स्टाइल, आपके और उपयोगकर्ताओं के लिए, मैप व्यू में करीब छह घंटे में अपने-आप दिखने लगेगी.

अगर आपको बदलाव तुरंत देखने हैं, तो ऐप्लिकेशन से बाहर निकलकर उसे बंद करें और फिर से खोलें. इसके लिए, हाल ही में इस्तेमाल किए गए ऐप्लिकेशन की सूची से ऐप्लिकेशन को बंद करें और फिर से खोलें. इसके बाद, आपको अपडेट किया गया मैप दिखेगा.

JavaScript

अपने ऐप्लिकेशन कोड में मैप आईडी वाला मैप बनाने के लिए:

  1. अगर एम्बेड किए गए JSON कोड की मदद से, मैप को पहले से ही पसंद के मुताबिक बनाया जा रहा है, तो अपने MapOptions ऑब्जेक्ट से styles प्रॉपर्टी को हटाएं. अगर ऐसा नहीं है, तो इस चरण को छोड़ें.

  2. mapId प्रॉपर्टी का इस्तेमाल करके, मैप में मैप आईडी जोड़ें. उदाहरण के लिए:

map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8,
mapId: 'MAP_ID'
});

Maps Static

अगर आपको किसी ऐसे नए या मौजूदा मैप में मैप आईडी जोड़ना है जो हमारे किसी वेब-सेवा एपीआई का इस्तेमाल करता है, तो map_id यूआरएल पैरामीटर जोड़ें और उसे अपने मैप आईडी पर सेट करें. इस उदाहरण में, Maps Static API का इस्तेमाल करके मैप में मैप आईडी जोड़ने का तरीका बताया गया है.

<img src="https://maps.googleapis.com/maps/api/staticmap?center=Brooklyn+Bridge,New+York,NY&zoom=13&size=600x300&maptype=roadmap&markers=color:blue%7Clabel:S%7C40.702147,-74.015794&markers=color:green%7Clabel:G%7C40.711614,-74.012318&markers=color:red%7Clabel:C%7C40.718217,-73.998284&key=YOUR_API_KEY&map_id=MAP_ID&signature=YOUR_SIGNATURE" />

अमेरिका के न्यूयॉर्क शहर के ब्रुकलिन ब्रिज के बीच में मौजूद मैप. इसके निचले दाएं कोने में मैप के कंट्रोल मौजूद हैं. इस मैप में सड़कों, पानी, और जमीन को कस्टम स्टाइल में दिखाया गया है.

अगर आपने मैप आईडी जोड़ने से पहले, Maps के स्टैटिक यूआरएल में डिजिटल हस्ताक्षर जोड़ा है, तो मैप आईडी जोड़ने के बाद, आपको नया डिजिटल हस्ताक्षर बनाना और जोड़ना होगा. यूआरएल साइनिंग के लिए नया पासवर्ड जनरेट करते समय, यूआरएल से अपना पिछला डिजिटल हस्ताक्षर हटाना न भूलें.