क्लाउड-आधारित मैप की स्टाइल

Google Maps Platform, क्लाउड-आधारित मैप की स्टाइलिंग की सुविधाएं देता है, जिनसे Google Cloud Console का इस्तेमाल करके अपने मैप को स्टाइल करना, पसंद के मुताबिक बनाना, और मैनेज करना आसान हो जाता है. साथ ही, इसकी मदद से अपने उपयोगकर्ताओं के लिए, पसंद के मुताबिक मैप अनुभव बनाया जा सकता है. इसके लिए, आपको हर बार स्टाइल में बदलाव करने पर, अपने ऐप्लिकेशन का कोड अपडेट नहीं करना होगा.

15 सितंबर, 2020 से पहले बनाई गई स्टाइल में, Google Maps की नैचुरल सुविधाएं नहीं दिखेंगी. मैप की स्टाइल के लिए, Google Maps की बेहतर प्राकृतिक सुविधाओं का इस्तेमाल करने के लिए, आपको मैप का स्टाइल बनाना होगा.

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

इन सुविधाओं में ये शामिल हैं:

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

क्लाउड-आधारित Maps की स्टाइलिंग Android के लिए Maps SDK टूल1, iOS के लिए Maps SDK टूल, JavaScript, और Maps Static API पर उपलब्ध है. हालांकि, सभी प्लैटफ़ॉर्म पर सभी सुविधाएं नहीं दिखेंगी.

शुरू करने से पहले

  • मैप आईडी बनाएं
    क्लाउड-आधारित मैप स्टाइल का इस्तेमाल करने के लिए, आपका मैप मैप आईडी का इस्तेमाल करके लोड किया जाना चाहिए.
  • हार्ड-कोड की गई स्टाइलिंग से माइग्रेट करें
    JSON और यूआरएल क्वेरी पैरामीटर जैसी पसंद के मुताबिक बनाए गए किसी मौजूदा मैप पर क्लाउड-आधारित मैप स्टाइलिंग का इस्तेमाल करने के लिए, मैप आईडी जोड़ने से पहले हम आपको हार्ड-कोड की गई स्टाइल हटाने का सुझाव देते हैं. इससे, आने वाले समय में फ़ंक्शन के काम करने में आने वाली दिक्कतों से बचा जा सकता है. अपनी JSON स्टाइल को मैप की नई स्टाइल में इंपोर्ट किया जा सकता है.
* Android के लिए Maps SDK टूल अपग्रेड करें
क्लाउड-आधारित मैप स्टाइलिंग का इस्तेमाल करने के लिए, आपको Android के लिए Maps SDK टूल का 18.0.0 या उसके बाद का वर्शन इस्तेमाल करना होगा. साथ ही, आपको Android रेंडरर के लिए नए Maps SDK टूल का इस्तेमाल करना होगा.

बिलिंग

क्लाउड-आधारित मैप स्टाइल का इस्तेमाल करने के लिए, मैप आईडी ज़रूरी है. Android के लिए Maps SDK टूल, iOS के लिए Maps SDK टूल और JavaScript का इस्तेमाल करके, डाइनैमिक Maps SKU के लिए शुल्क लिया जाता है. Maps स्टैटिक एपीआई में, मैप आईडी का इस्तेमाल करने पर स्टेटस मैप SKU पर शुल्क लगता है.

उदाहरण

Android

ApiDemos सैंपल ऐप्लिकेशन चलाएं

ApiDemos सैंपल ऐप्लिकेशन चलाने के लिए, GitHub सैंपल देखें (Java | Kotlin) और CloudBasedMapStylingDemoActivity डेमो देखें (Java | Kotlin).

आपको Java और Kotlin सैंपल ऐप्लिकेशन मिल सकता है, जो आपके Android मैप को क्लाउड से स्टाइल करने का तरीका बताता है.

समस्याएं जिनके बारे में जानकारी है

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

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

ध्यान दें कि हर फ़ोन की सेटिंग अलग हो सकती हैं. ज़्यादा जानकारी के लिए, डिवाइस बनाने वाली कंपनी से संपर्क करें.

iOS

ApiDemos सैंपल ऐप्लिकेशन चलाएं

ApiDemos सैंपल ऐप्लिकेशन चलाने के लिए, GitHub सैंपल GoogleMaps सैंपल ऐप्लिकेशन देखें और CloudBasedMapStylingViewController प्रोजेक्ट Swift | Objective-C देखें).

क्लाउड स्टाइलिंग कोकोपोड या GitHub का डेमो

नए सिरे से शुरू करने के बजाय, हमारे Object-C नमूने का ऐप्लिकेशन आज़माएं जो आपके iOS मैप को यहां क्लाउड से स्टाइल करने का तरीका बताता है.

बीटा डेमो ऐप्लिकेशन बनाना

Xcode में, कंपाइल बटन दबाएं और मौजूदा स्कीम को चलाएं. बिल्ड में गड़बड़ी होती है, जिससे आपको SDKDemoAPIKey.h फ़ाइल में अपना एपीआई पासकोड डालने का संकेत मिलता है.

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

SDKDemoAPIKey.h फ़ाइल में बदलाव करें और अपनी एपीआई कुंजी को kAPIKey कॉन्सटेंट की परिभाषा में चिपकाएं:

```
static NSString *const kAPIKey = @"YOUR_API_KEY";
```

अगर Xcode आपको बदलाव करने के लिए, SDKDemoAPIKey.h फ़ाइल को अनलॉक करने का अनुरोध करता है, तो अनलॉक करें चुनें.

नीचे दी गई लाइन हटाएं:

```
#error Register for API Key and insert here.
```

प्रोजेक्ट बनाएं और चलाएं.

मैप डेमो डेमो स्टाइल करने के लिए, क्लाउड-आधारित मैप

CloudStyling डेमो में दिखाया गया है कि Google Cloud Console पर सेट किए गए स्टाइल का इस्तेमाल करके, मैप के स्टाइल को कैसे बेहतर बनाया जाता है.

डेमो ऐप्लिकेशन लॉन्च होने पर, सूची में सबसे ऊपर मौजूद बीटा नमूना सेक्शन में मैप कस्टमाइज़ेशन डेमो पर क्लिक करें.

अलग-अलग मैप आईडी लोड करने का असर देखने के लिए, स्टाइल मैप पर क्लिक करें.

आप अपनी स्टाइल भी जोड़ सकते हैं ("स्टाइल मैप" > "नया मैप आईडी जोड़ें"). और पसंद के मुताबिक बनाए गए मैप में मैप का अपडेट देखें.

JavaScript

मैप आईडी का इस्तेमाल करके, पसंद के मुताबिक स्टाइल वाले मैप को लोड करने का यह बुनियादी उदाहरण है. इस मामले में, जब Maps लोड होता है, तब Maps JavaScript, मैप आईडी 8e0a97af9386fef का रेफ़रंस देता है. साथ ही, मैप के स्टाइल से जुड़े स्टाइल को अपने-आप लागू कर देता है.

TypeScript

function initMap(): void {
  new google.maps.Map(
    document.getElementById("map") as HTMLElement,
    {
      mapId: "8e0a97af9386fef",
      center: { lat: 48.85, lng: 2.35 },
      zoom: 12,
    } as google.maps.MapOptions
  );
}

declare global {
  interface Window {
    initMap: () => void;
  }
}
window.initMap = initMap;

JavaScript

function initMap() {
  new google.maps.Map(document.getElementById("map"), {
    mapId: "8e0a97af9386fef",
    center: { lat: 48.85, lng: 2.35 },
    zoom: 12,
  });
}

window.initMap = initMap;
उदाहरण देखें

सैंपल आज़माएं

Maps स्टैटिक एपीआई

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

  1. अगर style पैरामीटर की मदद से कस्टमाइज़ किए गए किसी मौजूदा मैप की मदद से, क्लाउड-आधारित मैप की स्टाइलिंग इस्तेमाल की जा रही है, तो उन्हें हटा दें. इससे आने वाले समय में फ़ंक्शन से जुड़ी समस्याएं नहीं होंगी.

  2. हमारे किसी वेब वेब एपीआई का इस्तेमाल करने वाले नए या मौजूदा मैप में मैप आईडी जोड़ने के लिए, 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" />
    


  1. Android के लाइट मोड पर, क्लाउड-आधारित मैप स्टाइल उपलब्ध नहीं है.