এই পৃষ্ঠাটি বর্ণনা করে কিভাবে একটি 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.ktsফাইলে,pluginManagementব্লকের অধীনে গ্রেডল প্লাগইন পোর্টাল , Google Maven সংগ্রহস্থল এবং Maven কেন্দ্রীয় সংগ্রহস্থল অন্তর্ভুক্ত করুন।pluginManagementব্লক স্ক্রিপ্টের অন্য কোনো বিবৃতির আগে উপস্থিত হতে হবে।pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- আপনার টপ-লেভেল
settings.gradle.ktsফাইলে, Google-এর Maven রিপোজিটরি এবং Maven সেন্ট্রাল রিপোজিটরিdependencyResolutionManagementব্লকের অধীনে অন্তর্ভুক্ত করুন:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
- আপনার মডিউল-স্তরের
build.gradle.ktsবাbuild.gradleফাইলে, Android এর জন্য Maps SDK-এর জন্য Google Play পরিষেবা নির্ভরতা যোগ করুন।কোটলিন
dependencies { // Maps SDK for Android implementation(libs.play.services.maps) }
গ্রোভি
dependencies { // Maps SDK for Android implementation "com.google.android.gms:play-services-maps:19.0.0" }
- আপনার মডিউল-স্তরের
build.gradle.ktsবাbuild.gradleফাইলে,compileSdkএবংminSdkনিম্নলিখিত মানগুলিতে সেট করুন:কোটলিন
android { compileSdk = 34 defaultConfig { minSdk = 21 // ... } }
গ্রোভি
android { compileSdk 34 defaultConfig { minSdk 21 // ... } }
- আপনার মডিউল-স্তরের
build.gradle.ktsবা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.ktsবাbuild.gradleফাইল খুলুন এবংbuildscriptঅধীনেdependenciesউপাদানে নিম্নলিখিত কোডটি যোগ করুন।কোটলিন
plugins { alias(libs.plugins.android.application) apply false alias(libs.plugins.jetbrains.kotlin.android) apply false alias(libs.plugins.kotlin.compose) apply false alias(libs.plugins.secrets.gradle.plugin) apply false }
গ্রোভি
buildscript { dependencies { classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1" } }
- আপনার মডিউল-স্তরের
build.gradle.ktsবাbuild.gradleফাইল খুলুন এবংpluginsউপাদানে নিম্নলিখিত কোড যোগ করুন।কোটলিন
plugins { // ... alias(libs.plugins.secrets.gradle.plugin) }
গ্রোভি
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
- আপনার মডিউল-স্তরের
build.gradle.ktsবাbuild.gradleফাইলে, নিশ্চিত করুন যেtargetSdkএবংcompileSdk34-এ সেট করা আছে। - 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}" />
দ্রষ্টব্য:
com.google.android.geo.API_KEYহল API কী-এর জন্য প্রস্তাবিত মেটাডেটা নাম। Android এর জন্য Maps SDK সহ Android প্ল্যাটফর্মে একাধিক Google Maps-ভিত্তিক API-এ প্রমাণীকরণ করতে এই নামের একটি কী ব্যবহার করা যেতে পারে। পিছনের সামঞ্জস্যের জন্য, APIcom.google.android.maps.v2.API_KEYনামটিকেও সমর্থন করে। এই লিগ্যাসি নামটি শুধুমাত্র Android Maps API v2 তে প্রমাণীকরণের অনুমতি দেয়। একটি অ্যাপ্লিকেশন শুধুমাত্র API কী মেটাডেটা নামের একটি নির্দিষ্ট করতে পারে। উভয় নির্দিষ্ট করা থাকলে, API একটি ব্যতিক্রম নিক্ষেপ করে। অ্যান্ড্রয়েড স্টুডিওতে, আপনার মডিউল-স্তরের
build.gradle.ktsবাbuild.gradleফাইল খুলুন এবংsecretsসম্পত্তি সম্পাদনা করুন।secretsসম্পত্তি বিদ্যমান না থাকলে, এটি যোগ করুন।secrets.propertiesএpropertiesFileNameসেট করতে প্লাগইনের বৈশিষ্ট্যগুলি সম্পাদনা করুন,defaultPropertiesFileNametolocal.defaults.propertiesসেট করুন এবং অন্য কোনো বৈশিষ্ট্য সেট করুন।কোটলিন
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" }
গ্রোভি
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" }
ধাপ 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) বা তার উপরে লক্ষ্য করে, তাহলে আপনাকে AndroidManifest.xml এর <application> উপাদানের মধ্যে নিম্নলিখিত ঘোষণা অন্তর্ভুক্ত করতে হবে। অন্যথায়, এই ঘোষণা এড়িয়ে যান।
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
ধাপ 5: একটি Android ডিভাইস সেট আপ করুন
অ্যান্ড্রয়েডের জন্য মানচিত্র SDK ব্যবহার করে এমন একটি অ্যাপ চালানোর জন্য, আপনাকে অবশ্যই এটি একটি Android ডিভাইস বা Android এমুলেটরে স্থাপন করতে হবে যা Android 5.0 বা উচ্চতর সংস্করণের উপর ভিত্তি করে এবং Google API গুলি অন্তর্ভুক্ত করে৷
- একটি অ্যান্ড্রয়েড ডিভাইস ব্যবহার করতে, একটি হার্ডওয়্যার ডিভাইসে অ্যাপ চালান -এ নির্দেশাবলী অনুসরণ করুন।
- একটি অ্যান্ড্রয়েড এমুলেটর ব্যবহার করতে, আপনি একটি ভার্চুয়াল ডিভাইস তৈরি করতে পারেন এবং অ্যান্ড্রয়েড স্টুডিওর সাথে আসা অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইস (এভিডি) ম্যানেজার ব্যবহার করে এমুলেটরটি ইনস্টল করতে পারেন।
ধাপ 6: ঐচ্ছিকভাবে প্লে সার্ভিস সমর্থনের জন্য চেক করুন
অ্যান্ড্রয়েডের জন্য মানচিত্র SDK-এর প্রয়োজন যে ডিভাইসটিতে আপনি আপনার অ্যাপ স্থাপন করবেন সেটিতে Google Play পরিষেবা ইনস্টল করা আছে। Google এমন একটি পদ্ধতি প্রদান করে যা আপনি চেক করতে আপনার অ্যাপ থেকে কল করতে পারেন। আরও তথ্যের জন্য, Google Play পরিষেবাগুলি ইনস্টল করা আছে কিনা দেখুন।
পরবর্তী পদক্ষেপ
আপনার প্রকল্প কনফিগার হয়ে গেলে, আপনি একটি মানচিত্র যোগ করতে পারেন।