सीमाओं के लिए डेटा-ड्रिवन स्टाइल सेट अप करने के लिए, यह तरीका अपनाएं.
Maps का नया रेंडरर चालू करना
अपग्रेड किया गया मैप रेंडरर, Android के लिए Maps SDK. इस रेंडरर की मदद से, Android के लिए Maps SDK टूल में कई सुधार किए गए हैं. जैसे, क्लाउड पर मैप की स्टाइलिंग की सुविधा.
Android के लिए Maps SDK के वर्शन 18.2.0 के रिलीज़ होने के बाद, Google ने डिफ़ॉल्ट रेंडरर, लेगसी रेंडरर से अपग्रेड किए गए मैप रेंडरर पर जाता है. यह बदलाव का मतलब है कि अपग्रेड किए गए मैप रेंडरर का इस्तेमाल अब आपके ऐप्लिकेशन में डिफ़ॉल्ट रूप से किया जाता है जब आप कोई नया ऐप्लिकेशन बनाते हैं या किसी मौजूदा ऐप्लिकेशन को फिर से बनाते हैं.
मैप आईडी बनाना
नया मैप आईडी बनाने के लिए, मैप आईडी बनाएं. पक्का करें कि आपने मैप टाइप को Android पर सेट किया हो.
मैप की नई स्टाइल बनाना
मैप की नई स्टाइल बनाने के लिए, मैप की स्टाइल मैनेज करें में दिए गए निर्देशों का पालन करें. इसके बाद, स्टाइल को उस मैप आईडी से जोड़ें जिसे आपने अभी बनाया है.
अपने नए मैप स्टाइल में फ़ीचर लेयर चुनना
Google API कंसोल में आप यह चुन सकते हैं कि कौन सी सुविधा परतें दिखाई जाएं आपके मैप की नई स्टाइल. सुविधा परत तय करती है कि आप किस तरह की मैप पर दिखाई देगा (उदाहरण के लिए, शहर, राज्य, वगैरह).
- Google API कंसोल में, मैप की स्टाइल पेज पर जाएं.
- अनुरोध किए जाने पर कोई प्रोजेक्ट चुनें.
- मैप की कोई स्टाइल चुनें.
- लेयर जोड़ने या हटाने के लिए, फीचर लेयर ड्रॉप-डाउन पर क्लिक करें.
- अपने बदलावों को सेव करने और उन्हें अपने मैप पर उपलब्ध कराने के लिए, सेव करें पर क्लिक करें.
मैप शुरू करने के कोड को अपडेट करना
इस चरण के लिए, आपने जो मैप आईडी बनाया है उसकी ज़रूरत होगी. यह आपके यहां मिल सकता है: Maps मैनेजमेंट पेज.
अपने शुरू करने के लिए कोड में मैप आईडी जोड़ने के लिए, अपने ऐप्लिकेशन में मैप आईडी जोड़ना लेख पढ़ें.
मैप की किसी फीचर लेयर का ऐक्सेस पाना
मैप की हर फ़ीचर लेयर को दिखाने के लिए, FeatureLayer
ऑब्जेक्ट का इस्तेमाल किया जाता है. जैसे, पिन कोड या इलाके की फ़ीचर लेयर. किसी फ़ीचर लेयर ऑब्जेक्ट का ऐक्सेस पाने के लिए, कॉल करें
GoogleMap.getFeatureLayer()
जब मैप शुरू होता है:
Java
private FeatureLayer postalCodeLayer;
@Override public void onMapReady(GoogleMap map) { // Get the POSTAL_CODE feature layer. postalCodeLayer = map.getFeatureLayer(new FeatureLayerOptions.Builder() .featureType(FeatureType.POSTAL_CODE) .build()); ... }
Kotlin
private var postalCodeLayer: FeatureLayer? = null
override fun onMapReady(googleMap: GoogleMap) { // Get the POSTAL_CODE feature layer. postalCodeLayer = googleMap.getFeatureLayer(new FeatureLayerOptions.Builder() .featureType(FeatureType.POSTAL_CODE) .build()) ... }
फ़ीचर लेयर का टाइप बताने के लिए, getFeatureLayer()
को FeatureLayerOptions
ऑब्जेक्ट पास करें. इसमें
उदाहरण के लिए, आपको POSTAL_CODE
लेयर को ऐक्सेस करना है. कोई अलग इमेज बनाएं
हर उस लेयर के लिए FeatureLayer
ऑब्जेक्ट है जिसे आपको स्टाइल देना है.
FeatureLayer
ऑब्जेक्ट मिलने के बाद, उस सुविधा में मौजूद सीमाओं के पॉलीगॉन पर स्टाइल लागू की जा सकती है.
मैप की सुविधाएं देखना (ज़रूरी है)
सीमाओं के लिए डेटा-ड्रिवन स्टाइलिंग के लिए, मैप आईडी की ज़रूरत होती है. अगर मैप आईडी मौजूद नहीं है या अमान्य मैप आईडी दिया गया है, तो सीमाओं के लिए डेटा-ड्रिवन स्टाइल लोड नहीं हो सकती. समस्या हल करने के लिए, MapCapabilities
का इस्तेमाल करके देखें कि सीमाओं के लिए डेटा-ड्रिवन स्टाइलिंग की सुविधा काम करती है या नहीं.
Kotlin
val capabilities: MapCapabilities = googleMap.getMapCapabilities() System.out.println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable())
Java
MapCapabilities capabilities = googleMap.getMapCapabilities(); System.out.println("Data-driven Styling is available: " + capabilities.isDataDrivenStylingAvailable());