इस पेज में बताया गया है कि Google Maps टेंप्लेट का इस्तेमाल किए बिना, Android के लिए Maps SDK टूल जिसके बारे में क्विकस्टार्ट में पूरी जानकारी दी गई है.
Google Maps टेंप्लेट अपने-आप कॉन्फ़िगर होता है और बेसिक मैप को नए मैप में जोड़ देता है Android Studio प्रोजेक्ट. हालांकि, आपके पास किसी Android प्रोजेक्ट में मैप जोड़ने का भी विकल्प है जो किसी अलग Android Studio टेंप्लेट का इस्तेमाल करता है. ऐसा करने के लिए, आपको मैन्युअल रूप से अपना प्रोजेक्ट कॉन्फ़िगर करें और फिर मैप जोड़ें.
पहला चरण: Android Studio सेट अप करना
इस दस्तावेज़ में, डेवलपमेंट एनवायरमेंट के बारे में बताया गया है. इसके लिए, इसका इस्तेमाल किया जा रहा है Android Studio Hedgehog और Android Gradle प्लग इन वर्शन 8.2.
दूसरा चरण. SDK टूल सेट अप करें
Android लाइब्रेरी के लिए Maps SDK टूल, इनके ज़रिए उपलब्ध है Google की Maven रिपॉज़िटरी. यहां की यात्रा पर हूं अपने ऐप्लिकेशन में SDK टूल जोड़ें और ये काम करें:
- अपनी टॉप-लेवल
settings.gradle
फ़ाइल में, इसे शामिल करें Gradle प्लग इन पोर्टल, Google Maven रिपॉज़िटरी, और Maven सेंट्रल रिपॉज़िटरीpluginManagement
ब्लॉक के तहत.pluginManagement
ब्लॉक स्क्रिप्ट में किसी भी अन्य स्टेटमेंट से पहले दिखना चाहिए.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- अपनी टॉप-लेवल
settings.gradle
फ़ाइल में, इसे शामिल करें Google की Maven रिपॉज़िटरी और Maven सेंट्रल रिपॉज़िटरीdependencyResolutionManagement
ब्लॉक के तहत:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
- अपनी मॉड्यूल-लेवल
build.gradle
फ़ाइल में, इसके लिए Google Play services डिपेंडेंसी Android के लिए Maps SDK टूल.ग्रूवी
dependencies { // Maps SDK for Android implementation 'com.google.android.gms:play-services-maps:19.0.0' }
Kotlin
dependencies { // Maps SDK for Android implementation("com.google.android.gms:play-services-maps:18.2.0") }
- अपनी मॉड्यूल-लेवल
build.gradle
फ़ाइल में,compileSdk
सेट करें औरminSdk
को नीचे दी गई वैल्यू में बदलें:ग्रूवी
android { compileSdk 34 defaultConfig { minSdk 21 // ... } }
Kotlin
android { compileSdk = 34 defaultConfig { minSdk = 21 // ... } }
- मॉड्यूल-लेवल की
build.gradle
फ़ाइल केbuildFeatures
सेक्शन में,BuildConfig
क्लास जोड़ें, जिसका इस्तेमाल बाद में तय किए गए मेटाडेटा वैल्यू को ऐक्सेस करने के लिए किया जा सकता है इस प्रक्रिया में:ग्रूवी
android { // ... buildFeatures { buildConfig true // ... } }
Kotlin
android { // ... buildFeatures { buildConfig = true // ... } }
तीसरा चरण: प्रोजेक्ट में एपीआई पासकोड जोड़ना
इस सेक्शन में, एपीआई पासकोड को सेव करने का तरीका बताया गया है, ताकि इसका इस्तेमाल
आपका ऐप्लिकेशन. आपको वर्शन कंट्रोल सिस्टम में एपीआई पासकोड की जांच नहीं करनी चाहिए. इसलिए, हमारा सुझाव है कि
इसे secrets.properties
फ़ाइल में सेव करना, जो आपकी रूट डायरेक्ट्री में मौजूद होती है
प्रोजेक्ट. secrets.properties
फ़ाइल के बारे में ज़्यादा जानकारी के लिए, देखें
Gradle प्रॉपर्टी फ़ाइलें.
इस टास्क को आसान बनाने के लिए, हमारा सुझाव है कि आप Android के लिए सीक्रेट ग्रेडल प्लग इन.
अपने Google Maps प्रोजेक्ट में Android के लिए Secrets Gradle प्लग इन इंस्टॉल करने के लिए:
-
Android Studio में, अपना टॉप-लेवल
build.gradle
याbuild.gradle.kts
खोलें फ़ाइल और निम्न कोड कोdependencies
तत्व में जोड़ेंbuildscript
.ग्रूवी
buildscript { dependencies { classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1" } }
Kotlin
buildscript { dependencies { classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1") } }
-
अपनी मॉड्यूल-लेवल
build.gradle
फ़ाइल खोलें और नीचे दिए गए कोड कोplugins
एलिमेंट.ग्रूवी
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- अपनी मॉड्यूल-लेवल
build.gradle
फ़ाइल में, पक्का करें किtargetSdk
औरcompileSdk
को 34 पर सेट किया गया. - फ़ाइल सेव करें और Gredle के साथ प्रोजेक्ट सिंक करते हैं.
-
अपनी शीर्ष-स्तरीय डायरेक्ट्री में
secrets.properties
फ़ाइल खोलें, और फिर जोड़ें .YOUR_API_KEY
को अपनी एपीआई पासकोड से बदलें. अपनी कुंजी इस फ़ाइल में सेव करें ऐसा इसलिए हुआ, क्योंकि वर्शन कंट्रोल मेंsecrets.properties
की जांच नहीं की जा सकी सिस्टम.MAPS_API_KEY=YOUR_API_KEY
- फ़ाइल सेव करें.
-
अपनी टॉप-लेवल डायरेक्ट्री में
local.defaults.properties
फ़ाइल बनाएं. फ़ोल्डर कोsecrets.properties
फ़ाइल के रूप में चुनकर यह कोड जोड़ें.MAPS_API_KEY=DEFAULT_API_KEY
इस फ़ाइल का मकसद, एपीआई पासकोड के लिए बैकअप जगह की जानकारी देना है, अगर
secrets.properties
फ़ाइल नहीं मिली है, ताकि बिल्ड विफल न हो. ऐसा तब हो सकता है, जब आपने वर्शन कंट्रोल सिस्टम से ऐप्लिकेशन का क्लोन बनाया है. इसमेंsecrets.properties
और आपने अभी तक स्थानीय भाषा मेंsecrets.properties
फ़ाइल नहीं बनाई है. एपीआई पासकोड. - फ़ाइल सेव करें.
-
अपनी
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}" />
Note:
com.google.android.geo.API_KEY
is the recommended metadata name for the API key. A key with this name can be used to authenticate to multiple Google Maps-based APIs on the Android platform, including the Maps SDK for Android. For backwards compatibility, the API also supports the namecom.google.android.maps.v2.API_KEY
. This legacy name allows authentication to the Android Maps API v2 only. An application can specify only one of the API key metadata names. If both are specified, the API throws an exception. -
In Android Studio, open your module-level
build.gradle
orbuild.gradle.kts
file and edit thesecrets
property. If thesecrets
property does not exist, add it.Edit the properties of the plugin to set
propertiesFileName
tosecrets.properties
, setdefaultPropertiesFileName
tolocal.defaults.properties
, and set any other properties.Groovy
secrets { // Optionally specify a different file name containing your secrets. // The plugin defaults to "local.properties" 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.*" }
Kotlin
secrets { // Optionally specify a different file name containing your secrets. // The plugin defaults to "local.properties" 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.*" }
चौथा चरण: ऐप्लिकेशन मेनिफ़ेस्ट को अपडेट करना
यह सेक्शन आपके
AndroidManifest.xml
फ़ाइल.Google Play services का वर्शन नंबर
application
एलिमेंट में यह एलान जोड़ें. यह एम्बेड Google Play सेवाओं का वह वर्शन जिसके साथ ऐप्लिकेशन को कंपाइल किया गया था.<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
जगह की जानकारी की अनुमति
अगर आपके ऐप्लिकेशन को उपयोगकर्ता की जगह की जानकारी का ऐक्सेस चाहिए, तो जगह की जानकारी की अनुमति आपकी
AndroidManifest.xml
फ़ाइल में मौजूद है. इसके विकल्पACCESS_FINE_LOCATION
, जिससे डिवाइस की जगह की सटीक जानकारी मिलती है औरACCESS_COARSE_LOCATION
, जो ज़्यादा सटीक नहीं है. जानकारी के लिए, यह देखें जगह की जानकारी का डेटा गाइड.ACCESS_FINE_LOCATION
की अनुमति का अनुरोध करने के लिए, इस कोड कोmanifest
एलिमेंट:<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
बाहरी स्टोरेज की अनुमति
अगर Google Play services SDK टूल के 8.3 या इसके बाद के वर्शन को टारगेट किया जा रहा है, तो आपको
WRITE_EXTERNAL_STORAGE
की अनुमति की ज़रूरत नहीं है. अगर आपको अगर आपको SDK टूल के पुराने वर्शन का इस्तेमाल करना है, तो आपको WRITE_EXTERNAL_STORAGE अनुमति,manifest
एलिमेंट में.<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Apache एचटीटीपी लेगसी लाइब्रेरी
अगर आप
com.google.android.gms:play-services-maps:16.0.0
या इससे कम का इस्तेमाल कर रहे हैं और आपका ऐप्लिकेशन, एपीआई लेवल 28 (Android 9.0) या उसके बाद के वर्शन को टारगेट कर रहा है, तो आपको<application>
एलिमेंट में नीचे दी गई घोषणाAndroidManifest.xml
. अगर आपको ऐसा नहीं करना है, तो इस एलान को छोड़ दें.<uses-library android:name="org.apache.http.legacy" android:required="false" />
पांचवां चरण: Android डिवाइस सेट अप करना
Android के लिए Maps SDK टूल का इस्तेमाल करने वाले ऐप्लिकेशन को चलाने के लिए, आपको उसे Android डिवाइस या Android पर डिप्लॉय करना होगा एम्युलेटर, जो Android 5.0 या इसके बाद वाले वर्शन पर आधारित हो और जिसमें तो Google API के ज़रिए ऐसा किया जा सकता है.
- Android डिवाइस का इस्तेमाल करने के लिए, यहां दिए गए निर्देशों का पालन करें: हार्डवेयर डिवाइस पर ऐप्लिकेशन चलाएं.
- Android एम्युलेटर का इस्तेमाल करने के लिए, वर्चुअल डिवाइस बनाएं. इसके बाद, Android वर्चुअल डिवाइस (एवीडी) मैनेजर यह सुविधा Android Studio में पहले से मौजूद है.
छठा चरण: विकल्प के तौर पर, Play Service से जुड़ी सहायता पाना
Android के लिए Maps SDK टूल की मदद से, यह ज़रूरी है कि जिस डिवाइस पर आपने अपने ऐप्लिकेशन को डिप्लॉय किया है ऐप्लिकेशन में Google Play services इंस्टॉल हो. Google एक ऐसा तरीका उपलब्ध कराता है आपके ऐप्लिकेशन से कॉल कर सकता है. अधिक जानकारी के लिए, देखें जांचें कि Google Play services इंस्टॉल हो.
अगले चरण
प्रोजेक्ट कॉन्फ़िगर होने के बाद, मैप जोड़ा जा सकता है.
जब तक कुछ अलग से न बताया जाए, तब तक इस पेज की सामग्री को Creative Commons Attribution 4.0 License के तहत और कोड के नमूनों को Apache 2.0 License के तहत लाइसेंस मिला है. ज़्यादा जानकारी के लिए, Google Developers साइट नीतियां देखें. Oracle और/या इससे जुड़ी हुई कंपनियों का, Java एक रजिस्टर किया हुआ ट्रेडमार्क है.
आखिरी बार 2024-08-16 (UTC) को अपडेट किया गया.
[{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"वह जानकारी मौजूद नहीं है जो मुझे चाहिए" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"बहुत मुश्किल है / बहुत सारे चरण हैं" },{ "type": "thumb-down", "id": "outOfDate", "label":"पुराना" },{ "type": "thumb-down", "id": "translationIssue", "label":"अनुवाद से जुड़ी समस्या" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"सैंपल / कोड से जुड़ी समस्या" },{ "type": "thumb-down", "id": "otherDown", "label":"अन्य" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"समझने में आसान है" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"मेरी समस्या हल हो गई" },{ "type": "thumb-up", "id": "otherUp", "label":"अन्य" }]