लाइट मोड

Android के लिए Maps SDK, मैप की बिट मैप इमेज दिखा सकता है. इससे उपयोगकर्ता को सीमित तौर पर इंटरैक्टिव अनुभव मिल सकता है. इसे लाइट मोड मैप कहा जाता है.

कोड सैंपल

GitHub पर ApiDemos डेटा स्टोर करने की जगह में ऐसे सैंपल शामिल हैं जो लाइट मोड के इस्तेमाल के बारे में बताते हैं:

  • LiteDemoActivity - Java: Java में लाइट मोड मैप का इस्तेमाल करने से जुड़ी बुनियादी बातें
  • LiteDemoActivity - Kotlin: Kotlin में लाइट मोड मैप इस्तेमाल करने की बुनियादी बातें
  • LiteListDemoActivity - Java: Java में लाइट मोड का इस्तेमाल करके, ViewViews में असरदार तरीके से मैप दिखाना
  • LiteListDemoActivity - Kotlin: Kotlin में लाइट मोड का इस्तेमाल करके ListViews में, मैप को बेहतर तरीके से दिखाना

लाइट मोड की खास जानकारी

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

मैप देखने वाले उपयोगकर्ता, मैप को ज़ूम या पैन नहीं कर सकते. मैप पर मौजूद आइकॉन, उपयोगकर्ताओं को Google Maps मोबाइल ऐप्लिकेशन में मैप देखने और निर्देशों के लिए अनुरोध करने की सुविधा देते हैं.

लाइट मोड का मैप जोड़ना

लाइट मोड में क्लास और इंटरफ़ेस का इस्तेमाल, पूरे Google Maps Android API में होता है. लाइट मोड में GoogleMap को नीचे दिए गए तरीकों से सेट किया जा सकता है:

  • MapView या MapFragment के लिए एक्सएमएल एट्रिब्यूट के तौर पर
  • GoogleMapOptions ऑब्जेक्ट में

MapView या MapFragment के लिए, एक्सएमएल एट्रिब्यूट के तौर पर

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:name="com.google.android.gms.maps.MapFragment"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map:cameraZoom="13"
    map:mapType="normal"
    map:liteMode="true"/>

GoogleMapOptions ऑब्जेक्ट में

Java


GoogleMapOptions options = new GoogleMapOptions()
    .liteMode(true);

      

Kotlin


val options = GoogleMapOptions()
    .liteMode(true)

      

मैप की शुरुआती स्थिति सेट करने के बारे में जानने के लिए, मैप ऑब्जेक्ट की गाइड देखें.

मैप व्यू या दिशा-निर्देश के अनुरोध को लॉन्च करने के इंटेंट

डिफ़ॉल्ट रूप से, मैप के सबसे नीचे दाईं ओर मौजूद एक टूलबार में ऐसे आइकॉन होते हैं जो Google Maps मोबाइल ऐप्लिकेशन में, मैप व्यू या निर्देश पाने के अनुरोध का ऐक्सेस देते हैं. आपके पास UiSettings.setMapToolbarEnabled(false) को कॉल करके टूलबार को बंद करने का विकल्प होता है. ज़्यादा जानकारी के लिए, टूलबार दस्तावेज़ देखें.

जब उपयोगकर्ता मैप पर टैप करता है, तब डिफ़ॉल्ट रूप से एपीआई, Google Maps मोबाइल ऐप्लिकेशन शुरू करता है. अपने हिसाब से आइडेंटिफ़ायर सेट करने के लिए, GoogleMap.setOnMapClickListener() का इस्तेमाल करें. MapView या MapFragment वाले व्यू पर setClickable() को कॉल करके भी, मैप पर क्लिक इवेंट को बंद किया जा सकता है. इन दो तकनीकों के विवरण के लिए, इवेंट दस्तावेज़ देखें.

लाइफ़ साइकल से जुड़े इवेंट

पूरी तरह से इंटरैक्टिव मोड में एपीआई का इस्तेमाल करते समय, MapView क्लास के उपयोगकर्ताओं को गतिविधि के सभी लाइफ़साइकल तरीकों को, MapView क्लास में बताए गए तरीकों के पास फ़ॉरवर्ड करना होगा. लाइफ़ साइकल के तरीकों के उदाहरणों में onCreate(), onDestroy(), onResume(), और onPause() शामिल हैं.

लाइट मोड में MapView क्लास का इस्तेमाल करते समय, नीचे दिए गए मामलों को छोड़कर, लाइफ़साइकल इवेंट को फ़ॉरवर्ड करना ज़रूरी नहीं है:

  • onCreate() को कॉल करना ज़रूरी है, नहीं तो मैप दिखाई नहीं देगा.
  • अगर आप अपने लाइट मोड मैप पर 'मेरी जगह' बिंदु दिखाना और डिफ़ॉल्ट जगह स्रोत का इस्तेमाल करना चाहते हैं, तो आपको onResume() और onPause() को कॉल करना होगा क्योंकि जगह का स्रोत सिर्फ़ इन कॉल के बीच अपडेट होगा. जगह के स्रोत का इस्तेमाल करने पर, इन दो तरीकों से कॉल करना ज़रूरी नहीं है.

इस्तेमाल की जा सकने वाली एपीआई की सुविधाएं

इस टेबल में बताया गया है कि लाइट मोड वाले मैप, एपीआई की सुविधा के हर इलाके में कैसे काम करते हैं. अगर किसी ऐप्लिकेशन में कोई ऐसा तरीका कॉल किया जाता है जो लाइट मोड में काम नहीं करता, तो एपीआई उस चेतावनी का लॉग बनाता है.

फ़ंक्शन
मैप के टाइप
काम करता है? हां
मैप के ये टाइप GoogleMapOptions.mapType() और GoogleMap.setMapType() के ज़रिए उपलब्ध हैं: MAP_TYPE_NORMAL, MAP_TYPE_SATELLITE, MAP_TYPE_TERRAIN, MAP_TYPE_HYBRID, MAP_TYPE_NONE
पॉलीलाइन, पॉलीगॉन, सर्कल
काम करता है? हां
आकार के लिए, लाइट मोड की सुविधा, फ़ुल एपीआई से मेल खाती है.
अनुमान की रिपोर्ट
काम करता है? हां
प्रोजेक्टेशन के लिए लाइट मोड की सुविधा, फ़ुल एपीआई से मेल खाती है.
मेरी जगह की जानकारी
काम करता है? हां
मेरी जगह की लेयर में लाइट मोड की सुविधा, पूरे एपीआई से मेल खाती है.
मैप पैडिंग
काम करता है? हां
मैप पैडिंग के लिए लाइट मोड की सुविधा, पूरी एपीआई से मेल खाती है.
जानकारी विंडो
काम करता है? हां
अगर आप किसी मार्कर को title() पर सेट करते हैं, तो जब उपयोगकर्ता मार्कर पर टैप करेगा, तो डिफ़ॉल्ट जानकारी विंडो दिखेगी. जानकारी देने वाली इस विंडो को मार्कर के ज़रिए showInfoWindow() पर कॉल करके, प्रोग्राम के हिसाब से दिखाया जा सकता है. आप InfoWindowAdapter इंटरफ़ेस की मदद से, कस्टम जानकारी वाली विंडो भी बना सकते हैं.
पसंद के मुताबिक बनाए गए मैप के स्टाइल
काम करता है? कुछ हद तक
Android के लिए Maps SDK टूल, बेस मैप की कस्टम स्टाइलिंग के साथ काम करता है. लाइट मोड सिर्फ़ JSON पर आधारित स्टाइल का इस्तेमाल करता है. क्लाउड-आधारित स्टाइल में इसका इस्तेमाल नहीं किया जा सकता. हालांकि, स्टाइल वाले मैप को रेंडर करने के लिए, मैप आईडी की ज़रूरत होती है.
मार्कर
काम करता है? कुछ हद तक
मार्कर जोड़ा जा सकता है और क्लिक इवेंट का जवाब दिया जा सकता है. आप कस्टम मार्कर आइकॉन भी जोड़ सकते हैं. मार्कर को खींचने योग्य बनाना संभव नहीं है. लाइट मोड वाले मैप पर मार्कर सपाट होते हैं और उन्हें घुमाया नहीं जा सकता.
कैमरे की स्थिति, ज़ूम, और ऐनिमेशन
काम करता है? कुछ हद तक

आप कैमरा टारगेट और ज़ूम सेट कर सकते हैं, लेकिन झुकाने या भालू को नहीं. ज़ूम लेवल को लाइट मोड में सबसे नज़दीकी पूर्णांक में बदल दिया जाता है. GoogleMap.moveCamera() को कॉल करने पर, आपको लाइट मोड का एक और मैप इमेज मिल जाएगा. कैमरे को सेट करने और उसमें बदलाव करने के बारे में ज़्यादा जानकारी के लिए, व्यू बदलना देखें.

GoogleMap.animateCamera() को कॉल करने से, कैमरे की गतिविधि का ऐनिमेशन चालू नहीं होगा. कैमरा व्यू, तुरंत नई जगह पर चला जाएगा.

इवेंट मैप करना
काम करता है? कुछ हद तक

लाइट मोड पर GoogleMap.setOnMapClickListener() और GoogleMap.setOnMapLongClickListener() का इस्तेमाल किया जा सकता है.

लाइट मोड के मैप में क्लिक इवेंट को बंद करने के लिए, आप MapView या MapFragment वाले व्यू में setClickable() को कॉल कर सकते हैं. उदाहरण के लिए, सूची में ऐसे मैप या मैप दिखाते समय, जहां आप क्लिक इवेंट को मैप से बाहर की कार्रवाई को शुरू करने के लिए कहना चाहें, यह काम का होता है.

ज़्यादा जानकारी के लिए, इवेंट के दस्तावेज़ देखें.

इनडोर नक्शे और इमारतें
काम करता है? नहीं
लाइट मोड में वही टाइल दिखेंगी जो Maps के स्टैटिक एपीआई में थीं. इसका मतलब है कि अगर इनडोर फ़्लोर प्लान को डिफ़ॉल्ट टाइल में बेक किया गया है, तो वह दिखेगा. अगर ऐसा नहीं है, तो ऐसा नहीं होगा. इसके अलावा, लेवल चुनने वाले लेवल में बदलाव नहीं किया जा सकता.
ट्रैफ़िक लेयर
काम करता है? नहीं
लाइट मोड में GoogleMap.setTrafficEnabled() काम नहीं करता.
ग्राउंड ओवरले
काम करता है? नहीं
लाइट मोड में GoogleMap.addGroundOverlay() काम नहीं करता.
टाइल ओवरले
काम करता है? नहीं
लाइट मोड में GoogleMap.addTileOverlay() काम नहीं करता.
हाथ के जेस्चर
काम करता है? नहीं
लाइट मोड में हाथ के जेस्चर काम नहीं करते. जेस्चर चालू और बंद करने के तरीके पर कोई असर नहीं पड़ेगा.
स्ट्रीट व्यू
काम करता है? नहीं
Street View लाइट मोड में काम नहीं करता.