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

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

मैप आईडी बनने के बाद, उन्हें किसी प्रोजेक्ट से जोड़ दिया जाता है. साथ ही, आईडी को किसी एक प्लैटफ़ॉर्म (Android, iOS, JavaScript) या Maps स्टैटिक एपीआई से भी जोड़ा जा सकता है.

अपने Cloud Console में कोई भी मैप आईडी बनाने या मैनेज करने के लिए, आपके पास प्रोजेक्ट के मालिक या प्रोजेक्ट एडिटर की IAM की भूमिका होनी चाहिए.

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

दिए गए Google Cloud प्रोजेक्ट में, मैप आईडी या मैप स्टाइल बनाने या मैनेज करने के लिए, आपको प्रोजेक्ट में मालिक या एडिटर IAM की भूमिका होनी चाहिए.

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

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

मैप आईडी बनाने के लिए:

  1. Cloud Console में, Maps मैनेजमेंट पेज पर जाएं.
  2. नया मैप आईडी बनाएं फ़ॉर्म को दिखाने के लिए, नया मैप आईडी बनाएं चुनें.
    नया मैप आईडी बनाएं

    फ़ॉर्म में, ऐसा करें:

    • मैप को कोई नाम दें.
    • मैप का टाइप या प्लैटफ़ॉर्म बताएं.
    • JavaScript मैप के लिए, रास्टर या वेक्टर मैप टाइप चुनें.
    • मैप का ब्यौरा डालें.
    • नया मैप आईडी दिखाने के लिए, आगे बढ़ें चुनें.

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

ये निर्देश यह मानते हैं कि आपके प्रोजेक्ट में कम से कम एक मैप स्टाइल मौजूद है.

  1. Cloud Console में, Maps मैनेजमेंट पेज पर जाएं.
  2. इस पेज पर, मैप का नाम कॉलम से कोई मौजूदा मैप आईडी चुनें.
  3. इस फ़ॉर्म में सबसे नीचे, इस मैप आईडी से जुड़ी मैप स्टाइल ड्रॉपडाउन से मैप की स्टाइल चुनें.
  4. सेव करें को चुनें.
    किसी मैप आईडी की ज़्यादा जानकारी वाला पेज दिखाने वाला स्क्रीनशॉट. इसमें ड्रॉपडाउन फ़ील्ड भी शामिल है, जो उपयोगकर्ताओं को इस मैप आईडी के साथ मैप स्टाइल जोड़ने की सुविधा देता है.

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

Android

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

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

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

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

<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
    class="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: "<YOUR 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:@"<YOUR 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 स्टैटिक

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

<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=YOUR_MAP_ID&signature=YOUR_SIGNATURE" />

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

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

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

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

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