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