मैप आईडी बनाने का तरीका

प्लैटफ़ॉर्म चुनें: Android iOS JavaScript वेब सेवा

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

मैप आईडी का इस्तेमाल करने वाली सुविधाओं और ज़्यादा जानकारी के लिए, मैप आईडी की खास जानकारी देखें.

आवश्यक अनुमतियां

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

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

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

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

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

  3. मैप आईडी बनाएं पर क्लिक करें.

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

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

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

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

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

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

Android

अपने मैप आईडी को गतिविधि के लेआउट फ़ाइल में मौजूद <fragment> एलिमेंट के ज़रिए, MapView क्लास का इस्तेमाल करके या प्रोग्राम के ज़रिए 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:map="http://schemas.android.com/apk/res-auto"
    ....
    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 Static यूआरएल में डिजिटल सिग्नेचर है, तो मैप आईडी जोड़ने के बाद, आपको नया डिजिटल सिग्नेचर बनाना और जोड़ना होगा. अपना नया यूआरएल साइनिंग सीक्रेट जनरेट करते समय, यूआरएल से अपना पिछला डिजिटल सिग्नेचर हटाना न भूलें.