এই পৃষ্ঠাটি বর্ণনা করে কিভাবে একটি Android স্টুডিও প্রোজেক্ট কনফিগার করতে হয় যাতে Google Maps টেমপ্লেট ব্যবহার না করে Android এর জন্য Maps SDK ব্যবহার করতে হয় যা Quickstart- এ বিস্তারিত আছে।
Google মানচিত্র টেমপ্লেট স্বয়ংক্রিয়ভাবে কনফিগার করে এবং একটি নতুন অ্যান্ড্রয়েড স্টুডিও প্রকল্পে একটি মৌলিক মানচিত্র যোগ করে। যাইহোক, আপনি একটি Android প্রকল্পে একটি মানচিত্র যোগ করতে পারেন যা একটি ভিন্ন Android স্টুডিও টেমপ্লেট ব্যবহার করে। এটি করার জন্য, আপনাকে ম্যানুয়ালি আপনার প্রজেক্ট কনফিগার করতে হবে এবং তারপর ম্যাপ যোগ করতে হবে ।
ধাপ 1: অ্যান্ড্রয়েড স্টুডিও সেট আপ করুন
এই নথিটি Android Studio Hedgehog এবং Android Gradle প্লাগইন সংস্করণ 8.2 ব্যবহার করে একটি উন্নয়ন পরিবেশ বর্ণনা করে।
ধাপ 2. SDK সেট আপ করুন
Android লাইব্রেরির জন্য Maps SDK Google এর Maven সংগ্রহস্থলের মাধ্যমে উপলব্ধ। আপনার অ্যাপে SDK যোগ করতে, নিম্নলিখিতগুলি করুন:
- আপনার শীর্ষ-স্তরের
settings.gradle
ফাইলে,pluginManagement
ব্লকের অধীনে Gradle প্লাগইন পোর্টাল , Google Maven সংগ্রহস্থল এবং Maven কেন্দ্রীয় সংগ্রহস্থল অন্তর্ভুক্ত করুন।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
ফাইলে, Android এর জন্য Maps SDK-এর জন্য Google Play পরিষেবা নির্ভরতা যোগ করুন।গ্রোভি
dependencies { // Maps SDK for Android implementation 'com.google.android.gms:play-services-maps:18.2.0' }
কোটলিন
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 19 // ... } }
কোটলিন
android { compileSdk = 34 defaultConfig { minSdk = 19 // ... } }
- আপনার মডিউল-স্তরের
build.gradle
ফাইলেরbuildFeatures
বিভাগে,BuildConfig
ক্লাস যোগ করুন, যা আপনি এই পদ্ধতিতে পরে সংজ্ঞায়িত মেটাডেটা মান অ্যাক্সেস করতে ব্যবহার করতে পারেন:গ্রোভি
android { // ... buildFeatures { buildConfig true // ... } }
কোটলিন
android { // ... buildFeatures { buildConfig = true // ... } }
ধাপ 3: প্রকল্পে আপনার API কী যোগ করুন
এই বিভাগটি বর্ণনা করে কিভাবে আপনার API কী সংরক্ষণ করতে হয় যাতে এটি আপনার অ্যাপ দ্বারা নিরাপদে উল্লেখ করা যায়। আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমে আপনার API কী চেক করা উচিত নয়, তাই আমরা এটিকে আপনার প্রকল্পের রুট ডিরেক্টরিতে অবস্থিত secrets.properties
ফাইলে সংরক্ষণ করার পরামর্শ দিই। secrets.properties
ফাইল সম্পর্কে আরও তথ্যের জন্য, Gradle বৈশিষ্ট্য ফাইলগুলি দেখুন।
এই কাজটি স্ট্রীমলাইন করতে, আমরা আপনাকে Android এর জন্য সিক্রেটস গ্রেডল প্লাগইন ব্যবহার করার পরামর্শ দিই।
আপনার Google মানচিত্র প্রকল্পে Android এর জন্য Secrets Gradle Plugin ইনস্টল করতে:
- অ্যান্ড্রয়েড স্টুডিওতে, আপনার শীর্ষ-স্তরের
build.gradle
বাbuild.gradle.kts
ফাইলটি খুলুন এবংbuildscript
অধীনেdependencies
উপাদানে নিম্নলিখিত কোডটি যোগ করুন।গ্রোভি
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") } }
- আপনার মডিউল-স্তরের
build.gradle
ফাইলটি খুলুন এবংplugins
উপাদানটিতে নিম্নলিখিত কোডটি যোগ করুন।গ্রোভি
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
কোটলিন
plugins { id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- আপনার মডিউল-স্তরের
build.gradle
ফাইলে, নিশ্চিত করুন যেtargetSdk
এবংcompileSdk
34-এ সেট করা আছে। - ফাইলটি সংরক্ষণ করুন এবং Gradle এর সাথে আপনার প্রকল্প সিঙ্ক করুন ।
- আপনার শীর্ষ-স্তরের ডিরেক্টরিতে
secrets.properties
ফাইলটি খুলুন এবং তারপরে নিম্নলিখিত কোডটি যোগ করুন। আপনার API কী দিয়েYOUR_API_KEY
প্রতিস্থাপন করুন। এই ফাইলে আপনার কী সংরক্ষণ করুন কারণsecrets.properties
একটি সংস্করণ নিয়ন্ত্রণ সিস্টেমে চেক করা থেকে বাদ দেওয়া হয়েছে৷MAPS_API_KEY=YOUR_API_KEY
- ফাইলটি সংরক্ষণ করুন।
আপনার শীর্ষ-স্তরের ডিরেক্টরিতে
local.defaults.properties
ফাইল তৈরি করুন,secrets.properties
ফাইলের মতো একই ফোল্ডার, এবং তারপরে নিম্নলিখিত কোডটি যোগ করুন।MAPS_API_KEY=DEFAULT_API_KEY
এই ফাইলটির উদ্দেশ্য হল API কীটির জন্য একটি ব্যাকআপ অবস্থান প্রদান করা যদি
secrets.properties
ফাইলটি না পাওয়া যায় যাতে বিল্ডগুলি ব্যর্থ না হয়৷ এটি ঘটতে পারে যদি আপনি একটি সংস্করণ নিয়ন্ত্রণ সিস্টেম থেকে অ্যাপটিকে ক্লোন করেন যাsecrets.properties
বাদ দেয় এবং আপনি এখনও আপনার API কী প্রদান করার জন্য স্থানীয়ভাবে একটি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.*" }
কোটলিন
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.*" }
ধাপ 4: অ্যাপ ম্যানিফেস্ট আপডেট করুন
এই বিভাগটি আপনার AndroidManifest.xml
ফাইলে যোগ করার জন্য সেটিংস বর্ণনা করে।
Google Play পরিষেবার সংস্করণ নম্বর
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 পরিষেবা SDK-এর 8.3 বা পরবর্তী সংস্করণকে লক্ষ্য করে থাকেন, তাহলে আপনার WRITE_EXTERNAL_STORAGE
অনুমতির প্রয়োজন নেই৷ আপনি যদি Google Play পরিষেবা SDK-এর আগের সংস্করণগুলিকে লক্ষ্য করে থাকেন, তাহলে আপনাকে অবশ্যই manifest
উপাদানে WRITE_EXTERNAL_STORAGE অনুমতির অনুরোধ করতে হবে৷
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Apache HTTP লিগ্যাসি লাইব্রেরি
আপনি যদি com.google.android.gms:play-services-maps:16.0.0
বা তার নিচে ব্যবহার করেন এবং আপনার অ্যাপটি API লেভেল 28 (Android 9.0) বা তার উপরে লক্ষ্য করে, তাহলে আপনাকে অবশ্যই <application>
উপাদানের মধ্যে নিম্নলিখিত ঘোষণা অন্তর্ভুক্ত করতে হবে AndroidManifest.xml
এর। অন্যথায়, এই ঘোষণা এড়িয়ে যান।
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
ধাপ 5: একটি Android ডিভাইস সেট আপ করুন
অ্যান্ড্রয়েডের জন্য মানচিত্র SDK ব্যবহার করে এমন একটি অ্যাপ চালানোর জন্য, আপনাকে অবশ্যই এটিকে একটি Android ডিভাইস বা Android এমুলেটরে স্থাপন করতে হবে যা Android 4.0 বা উচ্চতর ভিত্তিক এবং Google API গুলি অন্তর্ভুক্ত করে৷
- একটি অ্যান্ড্রয়েড ডিভাইস ব্যবহার করতে, একটি হার্ডওয়্যার ডিভাইসে অ্যাপ চালান -এ নির্দেশাবলী অনুসরণ করুন।
- একটি অ্যান্ড্রয়েড এমুলেটর ব্যবহার করতে, আপনি একটি ভার্চুয়াল ডিভাইস তৈরি করতে পারেন এবং অ্যান্ড্রয়েড স্টুডিওর সাথে আসা অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইস (এভিডি) ম্যানেজার ব্যবহার করে এমুলেটরটি ইনস্টল করতে পারেন।
ধাপ 6: ঐচ্ছিকভাবে প্লে সার্ভিস সমর্থনের জন্য চেক করুন
অ্যান্ড্রয়েডের জন্য মানচিত্র SDK-এর প্রয়োজন যে ডিভাইসটিতে আপনি আপনার অ্যাপ স্থাপন করবেন সেটিতে Google Play পরিষেবা ইনস্টল করা আছে। Google এমন একটি পদ্ধতি প্রদান করে যা আপনি চেক করতে আপনার অ্যাপ থেকে কল করতে পারেন। আরও তথ্যের জন্য, Google Play পরিষেবাগুলি ইনস্টল করা আছে কিনা দেখুন।
পরবর্তী পদক্ষেপ
আপনার প্রকল্প কনফিগার হয়ে গেলে, আপনি একটি মানচিত্র যোগ করতে পারেন।