Android v3.1.0 बीटा के लिए Maps SDK टूल का इस्तेमाल करना

Android के लिए Maps SDK टूल का वर्शन 3.1.0 बीटा, एक नया तरीका है. इसे लागू करने के लिए, पिछले वर्शन वाले एपीआई प्लैटफ़ॉर्म का ही इस्तेमाल किया गया है (सभी क्लास और तरीकों में कोई बदलाव नहीं हुआ है). साथ ही, इसमें कुछ नई सुविधाएं भी हैं जिन्हें आपको आज़माया जा सकता है:

  • Maps को पसंद के मुताबिक बनाना
  • मार्कर की टक्कर को हैंडल करना
  • पॉलीलाइन कस्टमाइज़ेशन

इस गाइड में नई सुविधाओं का इस्तेमाल करने का तरीका बताया गया है.

Maps कस्टमाइज़ेशन (बीटा)

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

मार्कर की टक्कर को हैंडल करना (बीटा वर्शन)

आप यह तय कर सकते हैं कि क्या कस्टम मार्कर को टकराव की स्थिति में डिफ़ॉल्ट बुनियादी मैप लेबल को ओवरराइड करना चाहिए. साथ ही, कस्टम मार्कर के बीच मिलती-जुलती प्राथमिकता दिखाने के लिए भी ऐसा किया जा सकता है. ज़्यादा जानकारी के लिए, मार्कर कोलिज़न हैंडलिंग (Android) देखें.

पॉलीलाइन कस्टमाइज़ेशन (बीटा)

अब पॉलीलाइन के लुक को पसंद के मुताबिक बनाने के कई नए तरीके उपलब्ध हैं:

  • कई रंगों वाली पॉलीलाइन, पॉलीलाइन सेगमेंट को अलग-अलग रंगों में सेट करती हैं.
  • ग्रेडिएंट पॉलीलाइन, दो रंगों के ग्रेडिएंट का इस्तेमाल करके पॉलीलाइन को रंग देते हैं.
  • स्टैंप किए गए पॉलीलाइन, दोहराए जाने वाले बिटमैप का इस्तेमाल करके पॉलीलाइन को स्टाइल करते हैं.

बहुरंगी पॉलीलाइन बनाना

आप स्पैन का इस्तेमाल करके, किसी पॉलीलाइन के अलग-अलग हिस्सों को अलग-अलग रंग दे सकते हैं. इसके लिए, StyleSpan ऑब्जेक्ट बनाएं और addSpan() या addSpans() तरीकों का इस्तेमाल करके, उन्हें PolylineOptions में जोड़ें. डिफ़ॉल्ट रूप से, कलेक्शन का हर आइटम, उससे जुड़े लाइन सेगमेंट का रंग सेट करेगा. नीचे दिए गए उदाहरण में, लाल और हरे रंग के सेगमेंट वाली पॉलीलाइन बनाने के लिए, सेगमेंट के रंग सेट करना दिखाया गया है:

Kotlin



val line = map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(StyleSpan(Color.RED))
        .addSpan(StyleSpan(Color.GREEN))
)

      

Java


Polyline line = map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(new StyleSpan(Color.RED))
        .addSpan(new StyleSpan(Color.GREEN)));

      

ग्रेडिएंट पॉलीलाइन बनाना

स्ट्रोक के शुरुआती और आखिरी के रंग तय करने के लिए, दो 32-बिट अल्फ़ा-रेड-ग्रीन-ब्लू (एआरजीबी) पूर्णांक तय करके ग्रेडिएंट तय किया जा सकता है. PolylineOptions.addSpan() को कॉल करके इस प्रॉपर्टी को आकार के विकल्प ऑब्जेक्ट पर सेट करें. नीचे दिए गए उदाहरण में, वुडलैंड पार्क ज़ू से कर्कलैंड, वॉशिंगटन तक लाल से पीले रंग की ग्रेडिएंट वाली पॉलीलाइन बनाना दिखाया गया है.

Kotlin



val line = map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(
            StyleSpan(
                StrokeStyle.gradientBuilder(
                    Color.RED,
                    Color.YELLOW
                ).build()
            )
        )
)

      

Java


Polyline line = map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(new StyleSpan(StrokeStyle.gradientBuilder(Color.RED, Color.YELLOW).build())));

      

स्टैंप वाला पॉलीलाइन बनाना

आप किसी पॉलीलाइन के रूप को दोहराए जाने वाले बिटमैप टेक्स्चर पर सेट कर सकते हैं. ऐसा करने के लिए, TextureStyle का StampStyle बनाएं. इसके बाद, यहां दिखाए गए तरीके से PolylineOptions.addSpan() को कॉल करके, इस प्रॉपर्टी को आकार के विकल्प ऑब्जेक्ट पर सेट करें:

Kotlin



val stampStyle =
    TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build()
val span = StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build())
map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(span)
)

      

Java


StampStyle stampStyle =
        TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build();
StyleSpan span = new StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build());
map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(span));

      

बीटा वर्शन के साथ काम करने वाली यूटिलिटी लाइब्रेरी इंपोर्ट करें

अगर Google Maps Android API यूटिलिटी लाइब्रेरी का इस्तेमाल किया जा रहा है, तो आपको अपने प्रोजेक्ट की डिपेंडेंसी भी अपडेट करनी होंगी, ताकि मौजूदा वर्शन को बीटा वर्शन से बदला जा सके. इसके लिए, ये काम करें:

  1. अपनी build.gradle फ़ाइल में, बीटा वर्शन के साथ काम करने वाली इस्तेमाल की जा रही लाइब्रेरी को इंपोर्ट करें:
    implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
    
  2. गैर-बीटा वर्शन के साथ काम करने वाली उपयोगिता लाइब्रेरी को हटाने के लिए, इन्हें अपने build.gradle से हटाएं:
    implementation 'com.google.maps.android:android-maps-utils:1.3.1'
    

सैंपल चलाएं

GitHub पर Google सैंपल डेटा स्टोर करने की जगह में, वे सैंपल ऐप्लिकेशन शामिल हैं जो Android के लिए, Maps के 3.1.0 वर्शन के बीटा वर्शन के इस्तेमाल की जानकारी देते हैं.