मैप आईडी का इस्तेमाल करें
मैप आईडी, ऐसा आइडेंटिफ़ायर होता है जो किसी मैप की स्टाइल या सुविधा से जुड़ा होता है. मैप की स्टाइल को कॉन्फ़िगर करें और उसे Google Cloud Console में मैप आईडी से जोड़ें. इसके बाद, जब कोड में मैप आईडी का रेफ़रंस दिया जाता है, तो उससे जुड़े मैप की स्टाइल आपके ऐप्लिकेशन में दिखती है. इसके बाद, स्टाइल से जुड़े जो भी अपडेट किए जाते हैं वे आपके ऐप्लिकेशन में अपने-आप दिखते हैं. इसके लिए, आपको खरीदारों को कोई अपडेट करने की ज़रूरत नहीं होती.
मैप आईडी बनने के बाद, उन्हें किसी प्रोजेक्ट से जोड़ा जाता है. साथ ही, मैप आईडी को किसी एक प्लैटफ़ॉर्म (Android, iOS, JavaScript) या Mapsstatic API तक सीमित भी रखा जाता है.
अपने Cloud Console में कोई भी मैप आईडी बनाने या मैनेज करने के लिए, आपके पास प्रोजेक्ट के मालिक या प्रोजेक्ट एडिटर की आईएएम की भूमिका होनी चाहिए.
ज़रूरी अनुमतियां
किसी Google Cloud प्रोजेक्ट में कोई मैप आईडी या मैप स्टाइल बनाने या मैनेज करने के लिए, आपके पास प्रोजेक्ट में मालिक या एडिटर आईएएम की भूमिका होनी चाहिए.
मैप आईडी बनाएं
मैप आईडी एक यूनीक आइडेंटिफ़ायर होता है, जो Google Maps के एक इंस्टेंस को दिखाता है. Cloud Console में जाकर, किसी भी समय मैप आईडी बनाए जा सकते हैं और मैप आईडी से जुड़ी स्टाइल को अपडेट किया जा सकता है.
मैप आईडी बनाने के लिए:
- Cloud Console में, Maps मैनेजमेंट पेज पर जाएं.
- नया मैप आईडी बनाएं फ़ॉर्म दिखाने के लिए, नया मैप आईडी बनाएं चुनें.
फ़ॉर्म में, ये काम करें:
- मैप को कोई नाम दें.
- मैप का टाइप या प्लैटफ़ॉर्म तय करें.
- JavaScript मैप के लिए, रास्टर या वेक्टर मैप टाइप चुनें.
- मैप का ब्यौरा डालें.
- नया मैप आईडी दिखाने के लिए, आगे बढ़ें को चुनें.
मैप आईडी को मैप स्टाइल से जोड़ना
ये निर्देश मानते हैं कि आपके प्रोजेक्ट में कम से कम एक मैप स्टाइल मौजूद है.
- Cloud Console में, Maps मैनेजमेंट पेज पर जाएं.
- इस पेज पर, मैप का नाम कॉलम से कोई मौजूदा मैप आईडी चुनें.
- इस फ़ॉर्म के सबसे नीचे, इस मैप आईडी से जुड़ी मैप स्टाइल ड्रॉपडाउन से मैप की कोई स्टाइल चुनें.
- सेव करें चुनें.
अपने ऐप्लिकेशन में मैप आईडी जोड़ें
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
मैप आईडी का इस्तेमाल करके मैप को इंस्टैंशिएट करने के लिए, फ़ॉलो करें:
- Cloud Console से मैप आईडी स्ट्रिंग की मदद से
GMSMapID
बनाएं. - आपने अभी-अभी जो मैप आईडी बनाया है उसके बारे में बताने वाला
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
अपने ऐप्लिकेशन कोड में मैप आईडी वाला मैप बनाने के लिए:
अगर एम्बेड किए गए JSON कोड की मदद से मैप को पसंद के मुताबिक बनाया जा रहा है, तो अपने
MapOptions
ऑब्जेक्ट सेstyles
प्रॉपर्टी को हटा दें. अगर ऐसा नहीं है, तो इस चरण को छोड़ दें.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" />
मैप आईडी का इस्तेमाल करते समय उपलब्ध सुविधाएं
क्लाउड-आधारित मैप स्टाइलिंग: Google Cloud Console का इस्तेमाल करके अपने मैप को स्टाइल दें, कस्टमाइज़ करें, और मैनेज करें.
सभी प्लैटफ़ॉर्म (Android, JavaScript, iOS और MapsStatic API) पर उपलब्ध है
वेक्टर मैप: वेक्टर-आधारित टाइल से बना मैप, जिन्हें WebGL का इस्तेमाल करके क्लाइंट साइड पर लोड करते समय बनाया जाता है.
JavaScript पर उपलब्ध