Android क्विकस्टार्ट के लिए Maps SDK टूल

एक ऐसा Android ऐप्लिकेशन बनाएं, जो Google मैप दृश्य का उपयोग करके मैप दिखाता हो टेम्प्लेट पर जाएं. अगर आपके पास कोई मौजूदा Android Studio प्रोजेक्ट है, तो Android Studio प्रोजेक्ट सेट अप करना लेख देखें.

यह क्विकस्टार्ट उन डेवलपर के लिए है जिन्हें बुनियादी जानकारी है Kotlin या Java के साथ Android डेवलपमेंट.

डेवलपमेंट एनवायरमेंट के बारे में जानकारी

यह क्विकस्टार्ट Android Studio का इस्तेमाल करके बनाया गया था हेजहॉग और Android Gradle प्लग इन वर्शन 8.2.

Android डिवाइस सेट अप करें

Android के लिए Maps SDK टूल का इस्तेमाल करने वाले ऐप्लिकेशन को चलाने के लिए, आपको उसे Android डिवाइस या Android पर डिप्लॉय करना होगा एम्युलेटर, जो Android 5.0 या इसके बाद वाले वर्शन पर आधारित हो और जिसमें तो Google API के ज़रिए ऐसा किया जा सकता है.

  • Android डिवाइस का इस्तेमाल करने के लिए, हार्डवेयर डिवाइस पर ऐप्लिकेशन चलाना लेख में दिए गए निर्देशों का पालन करें.
  • Android एम्युलेटर का इस्तेमाल करने के लिए, वर्चुअल डिवाइस बनाएं और एम्युलेटर इंस्टॉल करें. इसके लिए, Android Studio में मौजूद Android वर्चुअल डिवाइस (AVD) मैनेजर का इस्तेमाल करें.

Android Studio में Google Maps प्रोजेक्ट बनाना

Android Studio में Google Maps प्रोजेक्ट बनाने का तरीका, Flamingo और उसके बाद के रिलीज़ में बदल गया है.

  1. Android Studio खोलें और Android Studio में आपका स्वागत है विंडो में, नया प्रोजेक्ट पर क्लिक करें.

  2. नया प्रोजेक्ट विंडो में, फ़ोन और टैबलेट कैटगरी में, कोई गतिविधि नहीं को चुनें और फिर आगे बढ़ें पर क्लिक करें.

  3. नया प्रोजेक्ट फ़ॉर्म भरें:

    • भाषा को Java या Kotlin पर सेट करें. दोनों भाषाएँ, Android के लिए Maps SDK टूल. Kotlin के बारे में ज़्यादा जानने के लिए, Kotlin की मदद से Android ऐप्लिकेशन बनाना लेख पढ़ें.

    • SDK टूल के कम से कम वर्शन को अपने टेस्ट डिवाइस के साथ काम करने वाले SDK टूल के वर्शन पर सेट करें. आपको ऐसा वर्शन चुनना होगा जो Android के 19.0.x वर्शन के लिए Maps SDK टूल, यह Android एपीआई लेवल 21 ("Lollipop"; Android 5.0) या इसके बाद का वर्शन है. इनके लिए रिलीज़ नोट देखें SDK टूल के वर्शन की ज़रूरी शर्तों के बारे में नई जानकारी.

    • बिल्ड कॉन्फ़िगरेशन की भाषा को Kotlin DSL या Groovy DSL पर सेट करें. यहां दिए गए तरीके में, दोनों बिल्ड कॉन्फ़िगरेशन भाषाओं के स्निपेट दिखाए गए हैं.

  4. पूरा करें पर क्लिक करें.

    Android Studio, Gradle को शुरू करता है और प्रोजेक्ट बनाता है. इसमें थोड़ा समय लग सकता है.

  5. Google Maps पर दिखने की गतिविधि जोड़ें:

    1. अपने प्रोजेक्ट में app फ़ोल्डर पर राइट क्लिक करें.
    2. नया > Google > Google Maps पर विज्ञापनों के व्यू की गतिविधि चुनें.

      मैप गतिविधि जोड़ें.

    3. नई Android गतिविधि डायलॉग बॉक्स में, लॉन्चर गतिविधि चेकबॉक्स चुनें.

    4. पूरा करें चुनें.

      ज़्यादा जानकारी के लिए, टेंप्लेट से कोड जोड़ना लेख पढ़ें

  6. बिल्ड पूरा होने के बाद, Android Studio AndroidManifest.xml और MapsActivity फ़ाइलें खोलता है. आपकी गतिविधि का नाम अलग हो सकता है, लेकिन यह वही नाम है जिसे आपने सेटअप के दौरान कॉन्फ़िगर किया था.

अपना Google Cloud प्रोजेक्ट सेट अप करना

Cloud Console को सेटअप करने के ज़रूरी चरणों को पूरा करने के लिए, इस पर क्लिक करें से लिंक किया गया है:

चरण 1

कंसोल

  1. Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर, क्लिक करें नया क्लाउड बनाने के लिए प्रोजेक्ट बनाएं प्रोजेक्ट.

    प्रोजेक्ट चुनने वाले पेज पर जाएं

  2. पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग की सुविधा चालू हो. पुष्टि करें कि आपके प्रोजेक्ट के लिए बिलिंग की सुविधा चालू है.

    Google Cloud, बिना किसी शुल्क के आज़माने की सुविधा देता है. मुफ़्त में आज़माने की अवधि 90 दिन या 300 डॉलर के शुल्क के बाद खत्म हो जाएगी. इनमें से जो भी पहले होगा. इसे कभी भी रद्द किया जा सकता है. Google Maps Platform पर हर महीने 200 डॉलर का क्रेडिट दिया जाता है. ज़्यादा के लिए जानकारी, देखें बिलिंग खाता क्रेडिट और बिलिंग.

Cloud SDK

gcloud projects create "PROJECT"

यहां दी गई, Google Cloud SDK टूल , Cloud SDK टूल इंस्टॉल करना , और ये निर्देश दिए जा सकते हैं:

दूसरा चरण

Google Maps Platform का इस्तेमाल करने के लिए, आपको उन एपीआई या SDK टूल को चालू करना होगा जिनका इस्तेमाल आपको अपने प्रोजेक्ट के साथ करना है.

कंसोल

Android के लिए Maps SDK टूल चालू करना

Cloud SDK

gcloud services enable \
    --project "PROJECT" \
    "maps-android-backend.googleapis.com"

Google Cloud SDK , Cloud SDK टूल इंस्टॉल करने , और इन निर्देशों के बारे में ज़्यादा पढ़ें:

तीसरा चरण

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

एपीआई पासकोड एक यूनीक आइडेंटिफ़ायर होता है. इसका इस्तेमाल, आपके प्रोजेक्ट से जुड़े अनुरोधों की पुष्टि करने के लिए किया जाता है. ऐसा, इस्तेमाल और बिलिंग के मकसद से किया जाता है. आपके पास अपने प्रोजेक्ट के साथ कम से कम एक एपीआई पासकोड होना ज़रूरी है.

एपीआई पासकोड बनाने के लिए:

कंसोल

  1. Google Maps Platform > पर जाएं क्रेडेंशियल पेज पर जाएं.

    क्रेडेंशियल पेज पर जाएं

  2. क्रेडेंशियल पेज पर, क्रेडेंशियल बनाएं > एपीआई पासकोड पर क्लिक करें.
    एपीआई पासकोड बनाया गया डायलॉग बॉक्स में, आपका नया एपीआई पासकोड दिखता है.
  3. बंद करें पर क्लिक करें.
    नया एपीआई पासकोड, क्रेडेंशियल पेज पर एपीआई पासकोड में दिखता है.
    (प्रोडक्शन में इस्तेमाल करने से पहले, एपीआई पासकोड पर पाबंदी लगाना न भूलें.)

Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Google Cloud SDK , Cloud SDK टूल इंस्टॉल करने , और इन निर्देशों के बारे में ज़्यादा पढ़ें:

अपने ऐप्लिकेशन में एपीआई पासकोड जोड़ना

इस सेक्शन में, एपीआई पासकोड को सेव करने का तरीका बताया गया है, ताकि इसका इस्तेमाल आपका ऐप्लिकेशन. आपको वर्शन कंट्रोल सिस्टम में एपीआई पासकोड की जांच नहीं करनी चाहिए. इसलिए, हमारा सुझाव है कि इसे secrets.properties फ़ाइल में स्टोर कर रही है, जो आपकी रूट डायरेक्ट्री में मौजूद है प्रोजेक्ट. secrets.properties फ़ाइल के बारे में ज़्यादा जानने के लिए, Gradle प्रॉपर्टी फ़ाइलें देखें.

इस टास्क को आसान बनाने के लिए, हमारा सुझाव है कि आप Android के लिए सीक्रेट ग्रेडल प्लग इन.

अपने Google Maps प्रोजेक्ट में Android के लिए सीक्रेट ग्रेडल प्लग इन इंस्टॉल करने के लिए:

  1. Android Studio में, अपनी टॉप-लेवल build.gradle.kts या build.gradle फ़ाइल खोलें और buildscript में मौजूद dependencies एलिमेंट में यह कोड जोड़ें.

    Kotlin

    buildscript {
        dependencies {
            classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1")
        }
    }

    ग्रूवी

    buildscript {
        dependencies {
            classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1"
        }
    }
  2. अपनी मॉड्यूल-लेवल build.gradle.kts या build.gradle फ़ाइल खोलें और जोड़ें plugins एलिमेंट के लिए नीचे दिया गया कोड.

    Kotlin

    plugins {
        // ...
        id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")
    }

    ग्रूवी

    plugins {
        // ...
        id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
    }
  3. मॉड्यूल-लेवल की build.gradle.kts या build.gradle फ़ाइल में, पक्का करें कि targetSdk और compileSdk को 34 पर सेट किया गया हो.
  4. फ़ाइल सेव करें और Gredle के साथ प्रोजेक्ट सिंक करते हैं.
  5. अपनी शीर्ष-स्तरीय डायरेक्ट्री में secrets.properties फ़ाइल खोलें, और फिर जोड़ें . YOUR_API_KEY को अपनी एपीआई पासकोड से बदलें. अपनी कुंजी को इस फ़ाइल में सेव करें, क्योंकि secrets.properties को वर्शन कंट्रोल सिस्टम में शामिल नहीं किया जाता.
    MAPS_API_KEY=YOUR_API_KEY
  6. फ़ाइल सेव करें.
  7. अपनी टॉप-लेवल डायरेक्ट्री में local.defaults.properties फ़ाइल बनाएं. यह फ़ाइल, secrets.properties फ़ाइल वाले फ़ोल्डर में होनी चाहिए. इसके बाद, नीचे दिया गया कोड जोड़ें.

    MAPS_API_KEY=DEFAULT_API_KEY

    इस फ़ाइल का मकसद, एपीआई पासकोड का बैकअप सेव करना है. ऐसा इसलिए किया जाता है, ताकि अगर secrets.properties फ़ाइल न मिले, तो भी बिल्ड न रुके. ऐसा तब हो सकता है, जब आपने ऐप्लिकेशन को किसी ऐसे वर्शन कंट्रोल सिस्टम से क्लोन किया हो जिसमें secrets.properties शामिल न हो और आपने एपीआई पासकोड देने के लिए, अब तक लोकल तौर पर secrets.properties फ़ाइल न बनाई हो.

  8. फ़ाइल सेव करें.
  9. अपनी AndroidManifest.xml फ़ाइल में, com.google.android.geo.API_KEY पर जाएं और android:value attribute को अपडेट करें. अगर <meta-data> टैग मौजूद नहीं है, तो उसे <application> टैग.
    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="${MAPS_API_KEY}" />

    ध्यान दें: com.google.android.geo.API_KEY सुझाया गया मेटाडेटा नाम है एपीआई पासकोड के लिए. इस नाम वाली कुंजी का उपयोग एकाधिक को प्रमाणित करने के लिए किया जा सकता है Android प्लैटफ़ॉर्म पर Google Maps-आधारित एपीआई, जिनमें Android के लिए Maps SDK टूल. पुराने सिस्टम के साथ काम करने की सुविधा के लिए, एपीआई में com.google.android.maps.v2.API_KEY नाम भी काम करता है. यह लेगसी name सिर्फ़ Android Maps API v2 पर पुष्टि करने की अनुमति देता है. एक ऐप्लिकेशन ये काम कर सकता है: API कुंजी मेटाडेटा नामों में से केवल एक को दर्ज करें. अगर दोनों के बारे में बताया गया हो, तो एपीआई एक अपवाद देता है.

  10. Android Studio में, अपना मॉड्यूल-लेवल build.gradle.kts खोलें या build.gradle फ़ाइल में बदलाव करें और secrets प्रॉपर्टी में बदलाव करें. अगर secrets प्रॉपर्टी मौजूद नहीं है, इसे जोड़ें.

    propertiesFileName को सेट करने के लिए, प्लग इन की प्रॉपर्टी में बदलाव करें secrets.properties, defaultPropertiesFileName को इस पर सेट करें local.defaults.properties और कोई अन्य प्रॉपर्टी सेट करें.

    Kotlin

    secrets {
        // To add your Maps API key to this project:
        // 1. If the secrets.properties file does not exist, create it in the same folder as the local.properties file.
        // 2. Add this line, where YOUR_API_KEY is your API key:
        //        MAPS_API_KEY=YOUR_API_KEY
        propertiesFileName = "secrets.properties"
    
        // A properties file containing default secret values. This file can be
        // checked in version control.
        defaultPropertiesFileName = "local.defaults.properties"
    
        // Configure which keys should be ignored by the plugin by providing regular expressions.
        // "sdk.dir" is ignored by default.
        ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore"
        ignoreList.add("sdk.*")       // Ignore all keys matching the regexp "sdk.*"
    }
            

    ग्रूवी

    secrets {
        // To add your Maps API key to this project:
        // 1. If the secrets.properties file does not exist, create it in the same folder as the local.properties file.
        // 2. Add this line, where YOUR_API_KEY is your API key:
        //        MAPS_API_KEY=YOUR_API_KEY
        propertiesFileName = "secrets.properties"
    
        // A properties file containing default secret values. This file can be
        // checked in version control.
        defaultPropertiesFileName = "local.defaults.properties"
    
        // Configure which keys should be ignored by the plugin by providing regular expressions.
        // "sdk.dir" is ignored by default.
        ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore"
        ignoreList.add("sdk.*")       // Ignore all keys matching the regexp "sdk.*"
    }
            

कोड देखें

टेंप्लेट से मिले कोड की जांच करें. खास तौर पर, अपने Android Studio प्रोजेक्ट में ये फ़ाइलें देखें.

Maps पर की गई गतिविधि वाली फ़ाइल

मैप गतिविधि फ़ाइल, ऐप्लिकेशन की मुख्य गतिविधि है और में मैप को मैनेज करने और दिखाने के लिए कोड होता है. डिफ़ॉल्ट रूप से, जो फ़ाइल गतिविधि का पता लगाता है, MapsActivity.java या अगर आपने Kotlin को आपके ऐप्लिकेशन की भाषा, MapsActivity.kt.

Maps पर की गई गतिविधि के मुख्य एलिमेंट:

  • SupportMapFragment ऑब्जेक्ट, मैप के लाइफ़साइकल को मैनेज करता है. साथ ही, यह ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) का पैरंट एलिमेंट होता है.

  • GoogleMap ऑब्जेक्ट, मैप के डेटा का ऐक्सेस देता है और व्यू. यह Android के लिए Maps SDK टूल की मुख्य क्लास है. मैप ऑब्जेक्ट गाइड में SupportMapFragment और GoogleMap ऑब्जेक्ट के बारे में ज़्यादा जानकारी दी गई है जानकारी.

  • moveCamera फ़ंक्शन, मैप को ऑस्ट्रेलिया के सिडनी के LatLng निर्देशांकों पर सेंटर में ले जाता है. पहली सेटिंग मैप को जोड़ते समय कॉन्फ़िगर करें. आम तौर पर, यह मैप की जगह और कैमरे की सेटिंग होती है; जैसे देखने का कोण, मैप ओरिएंटेशन, और ज़ूम लेवल. देखें ज़्यादा जानकारी के लिए, कैमरा और व्यू गाइड.

  • addMarker फ़ंक्शन इसके निर्देशांक में एक मार्कर जोड़ता है सिडनी. ज़्यादा जानकारी के लिए, मार्कर गाइड देखें.

मॉड्यूल Gradle फ़ाइल

मॉड्यूल build.gradle.kts फ़ाइल में ये मैप डिपेंडेंसी शामिल हैं, जो Android के लिए Maps SDK टूल के लिए ज़रूरी है.

dependencies {

    // Maps SDK for Android
    implementation("com.google.android.gms:play-services-maps:19.0.0")
}

Maps की डिपेंडेंसी को मैनेज करने के बारे में ज़्यादा जानने के लिए, वर्शन देखें.

एक्सएमएल लेआउट फ़ाइल

activity_maps.xml फ़ाइल, एक्सएमएल लेआउट फ़ाइल होती है. इसमें ऐप्लिकेशन के यूआई का स्ट्रक्चर तय होता है. फ़ाइल, res/layout डायरेक्ट्री में मौजूद है. activity_maps.xml फ़ाइल एक ऐसे फ़्रैगमेंट के बारे में बताती है जिसमें ये शामिल हैं एलिमेंट:

  • tools:context फ़्रैगमेंट की डिफ़ॉल्ट गतिविधि सेट करता है MapsActivity तक, जिसकी जानकारी मैप गतिविधि की फ़ाइल में दी गई है.
  • android:name, फ़्रैगमेंट के क्लास के नाम को SupportMapFragment पर सेट करता है. यह Maps गतिविधि फ़ाइल में इस्तेमाल किया जाने वाला फ़्रैगमेंट टाइप है.

एक्सएमएल लेआउट फ़ाइल में यह कोड शामिल होता है:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MapsActivity" />

ऐप्लिकेशन को डिप्लॉय और चलाना

ऑस्ट्रेलिया के सिडनी पर सेंटर किए गए मैप और मार्कर का स्क्रीनशॉट.

ऐप्लिकेशन को सफलतापूर्वक चलाने पर, वह एक ऐसा मैप दिखाएगा जो सिडनी ऑस्ट्रेलिया में शहर पर एक मार्कर है, जैसा कि नीचे दिए गए स्क्रीनशॉट में दिखाया गया है.

ऐप्लिकेशन को डिप्लॉय और चलाने के लिए:

  1. Android Studio में, Run मेन्यू विकल्प (या 'चलाएं' बटन आइकॉन) पर क्लिक करके आपका ऐप्लिकेशन चलाना.
  2. कोई डिवाइस चुनने के लिए कहा जाने पर, इनमें से कोई एक विकल्प चुनें:
    • वह Android डिवाइस चुनें जो आपके कंप्यूटर से कनेक्ट है.
    • इसके अलावा, सिम्युलेटर लॉन्च करें रेडियो बटन चुनें. इसके बाद, आपके सेट अप किए गए वर्चुअल डिवाइस पर.
  3. ठीक है पर क्लिक करें. Android Studio, आपका ऐप्लिकेशन बनाने के लिए Gradle को शुरू करेगा. इसके बाद, वह आपके डिवाइस या एमुलेटर पर नतीजे दिखाएगा. ऐप्लिकेशन को दिखने में कुछ मिनट लग सकते हैं लॉन्च करता है.

अगले चरण

  • मैप सेट अप करना: इस दस्तावेज़ में, मैप के लिए शुरुआती और रनटाइम सेटिंग सेट अप करने का तरीका बताया गया है. जैसे, कैमरे की पोज़िशन, मैप का टाइप, यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट, और जेस्चर.

  • अपने Android ऐप्लिकेशन (Kotlin) में मैप जोड़ें: यह कोडलैब (कोड बनाना सीखना) आपको एक ऐसे ऐप्लिकेशन के बारे में जानकारी देगा जो Android के लिए Maps SDK टूल.

  • Maps Android KTX लाइब्रेरी का इस्तेमाल करें: Kotlin एक्सटेंशन (KTX) लाइब्रेरी की मदद से, आपको कई अन्य डिवाइसों का इस्तेमाल करने पर Android के लिए Maps SDK का इस्तेमाल करते समय, Kotlin लैंग्वेज सुविधाएं.