ব্যবহারকারীর গোপনীয়তা রক্ষা করতে, যে অ্যাপগুলি লোকেশন পরিষেবা ব্যবহার করে তাদের অবশ্যই লোকেশন অনুমতির অনুরোধ করতে হবে।
একাধিক অনুমতি অবস্থানের সাথে সম্পর্কিত। আপনি কোন অনুমতিগুলির জন্য অনুরোধ করেন এবং আপনি কীভাবে তাদের অনুরোধ করেন তা নির্ভর করে আপনার অ্যাপের ব্যবহারের ক্ষেত্রে অবস্থানের প্রয়োজনীয়তার উপর।
এই পৃষ্ঠাটি বিভিন্ন ধরণের অবস্থানের প্রয়োজনীয়তা বর্ণনা করে এবং প্রতিটি ক্ষেত্রে কীভাবে অবস্থানের অনুমতির অনুরোধ করতে হয় তা ব্যাখ্যা করে৷
অবস্থানের অনুমতির অনুরোধ করতে, সমস্ত রানটাইম অনুমতিগুলির জন্য সর্বোত্তম অনুশীলনগুলি অনুসরণ করুন৷
অবস্থান অ্যাক্সেসের ধরন
প্রতিটি অনুমতিতে নিম্নলিখিত বৈশিষ্ট্যগুলির সমন্বয় রয়েছে:
- বিভাগ : হয় ফোরগ্রাউন্ড লোকেশন বা ব্যাকগ্রাউন্ড লোকেশন ।
- নির্ভুলতা : হয় সুনির্দিষ্ট অবস্থান বা আনুমানিক অবস্থান।
ফোরগ্রাউন্ড অবস্থান
যদি আপনার অ্যাপে এমন একটি বৈশিষ্ট্য থাকে যা শুধুমাত্র একবার বা নির্দিষ্ট সময়ের জন্য অবস্থানের তথ্য শেয়ার করে বা গ্রহণ করে, তাহলে সেই বৈশিষ্ট্যটির জন্য ফোরগ্রাউন্ড লোকেশন অ্যাক্সেস প্রয়োজন। কিছু উদাহরণ নিম্নলিখিত অন্তর্ভুক্ত:
- একটি নেভিগেশন অ্যাপের মধ্যে, একটি বৈশিষ্ট্য ব্যবহারকারীদের পালাক্রমে দিকনির্দেশ পেতে দেয়।
- একটি মেসেজিং অ্যাপের মধ্যে, একটি বৈশিষ্ট্য ব্যবহারকারীদের তাদের বর্তমান অবস্থান অন্য ব্যবহারকারীর সাথে শেয়ার করতে দেয়।
সিস্টেমটি আপনার অ্যাপটিকে ফোরগ্রাউন্ড লোকেশন ব্যবহার করছে বলে বিবেচনা করে যদি আপনার অ্যাপের একটি বৈশিষ্ট্য নিম্নলিখিত পরিস্থিতিতে ডিভাইসের বর্তমান অবস্থান অ্যাক্সেস করে:
- আপনার অ্যাপের অন্তর্গত একটি কার্যকলাপ দৃশ্যমান।
আপনার অ্যাপ একটি ফোরগ্রাউন্ড পরিষেবা চালাচ্ছে। যখন একটি ফোরগ্রাউন্ড পরিষেবা চলছে, সিস্টেমটি একটি অবিরাম বিজ্ঞপ্তি দেখিয়ে ব্যবহারকারীর সচেতনতা বাড়ায়। আপনার অ্যাপটি ব্যাকগ্রাউন্ডে রাখা হলে অ্যাক্সেস বজায় রাখে, যেমন ব্যবহারকারী যখন তাদের ডিভাইসে হোম বোতাম টিপে বা তাদের ডিভাইসের প্রদর্শন বন্ধ করে দেয়।
অতিরিক্তভাবে, আপনাকে একটি ফোরগ্রাউন্ড পরিষেবার ধরনের
location
ঘোষণা করা উচিত, যেমনটি নিম্নলিখিত কোড স্নিপেটে দেখানো হয়েছে। Android 10 (API স্তর 29) এবং উচ্চতর তে, আপনাকে অবশ্যই এই অগ্রভাগের পরিষেবার ধরণটি ঘোষণা করতে হবে।<!-- Recommended for Android 9 (API level 28) and lower. --> <!-- Required for Android 10 (API level 29) and higher. --> <service android:name="MyNavigationService" android:foregroundServiceType="location" ... > <!-- Any inner elements would go here. --> </service>
যখন আপনার অ্যাপ ACCESS_COARSE_LOCATION
অনুমতি বা ACCESS_FINE_LOCATION
অনুমতির অনুরোধ করে তখন আপনি ফোরগ্রাউন্ড অবস্থানের প্রয়োজন ঘোষণা করেন, যেমনটি নিম্নলিখিত স্নিপেটে দেখানো হয়েছে:
<manifest ... >
<!-- Always include this permission -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- Include only if your app benefits from precise location access. -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
পটভূমি অবস্থান
একটি অ্যাপের ব্যাকগ্রাউন্ড লোকেশন অ্যাক্সেসের প্রয়োজন যদি অ্যাপের মধ্যে একটি বৈশিষ্ট্য ক্রমাগত অন্যান্য ব্যবহারকারীদের সাথে লোকেশন শেয়ার করে বা জিওফেনিং API ব্যবহার করে। বেশ কয়েকটি উদাহরণ নিম্নলিখিত অন্তর্ভুক্ত:
- একটি ফ্যামিলি লোকেশন শেয়ারিং অ্যাপের মধ্যে, একটি ফিচার ব্যবহারকারীদের পরিবারের সদস্যদের সাথে ক্রমাগত লোকেশন শেয়ার করতে দেয়।
- একটি IoT অ্যাপের মধ্যে, একটি বৈশিষ্ট্য ব্যবহারকারীদের তাদের হোম ডিভাইসগুলিকে কনফিগার করার অনুমতি দেয় যাতে ব্যবহারকারী যখন তাদের বাড়ি ছেড়ে যায় তখন তারা বন্ধ করে দেয় এবং ব্যবহারকারী যখন বাড়িতে ফিরে আসে তখন আবার চালু করে।
সিস্টেমটি আপনার অ্যাপটিকে ব্যাকগ্রাউন্ড লোকেশন ব্যবহার করছে বলে বিবেচনা করে যদি এটি ফোরগ্রাউন্ড লোকেশন বিভাগে বর্ণিত অন্য কোনো পরিস্থিতিতে ডিভাইসের বর্তমান অবস্থান অ্যাক্সেস করে। পটভূমি অবস্থান নির্ভুলতা ফোরগ্রাউন্ড অবস্থান নির্ভুলতার মতোই, যা আপনার অ্যাপ ঘোষণা করা অবস্থানের অনুমতিগুলির উপর নির্ভর করে৷
Android 10 (API স্তর 29) এবং উচ্চতর, রানটাইমে ব্যাকগ্রাউন্ড লোকেশন অ্যাক্সেসের অনুরোধ করার জন্য আপনাকে অবশ্যই আপনার অ্যাপের ম্যানিফেস্টে ACCESS_BACKGROUND_LOCATION
অনুমতি ঘোষণা করতে হবে। অ্যান্ড্রয়েডের আগের ভার্সনে, যখন আপনার অ্যাপ ফোরগ্রাউন্ড লোকেশন অ্যাক্সেস পায়, তখন এটি স্বয়ংক্রিয়ভাবে ব্যাকগ্রাউন্ড লোকেশন অ্যাক্সেসও পায়।
<manifest ... >
<!-- Required only when requesting background location access on
Android 10 (API level 29) and higher. -->
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
</manifest>
নির্ভুলতা
Android নিম্নলিখিত স্তরের অবস্থান নির্ভুলতা সমর্থন করে:
- আনুমানিক
- একটি ডিভাইস অবস্থান অনুমান প্রদান করে. যদি এই অবস্থানের অনুমানটি
LocationManagerService
বাFusedLocationProvider
থেকে হয়, তাহলে এই অনুমানটি প্রায় 3 বর্গ কিলোমিটারের (প্রায় 1.2 বর্গ মাইল) মধ্যে সঠিক। আপনি যখনACCESS_COARSE_LOCATION
অনুমতি ঘোষণা করেন তবেACCESS_FINE_LOCATION
অনুমতি না দিলে আপনার অ্যাপটি সঠিকতার এই স্তরে অবস্থানগুলি পেতে পারে৷ - সুনির্দিষ্ট
- একটি ডিভাইস অবস্থান অনুমান প্রদান করে যা যতটা সম্ভব নির্ভুল। অবস্থানের অনুমানটি যদি
LocationManagerService
বাFusedLocationProvider
থেকে হয়, তাহলে এই অনুমানটি সাধারণত প্রায় 50 মিটার (160 ফুট) এর মধ্যে হয় এবং কখনও কখনও কয়েক মিটার (10 ফুট) বা তার চেয়েও সঠিক হয়৷ আপনি যখনACCESS_FINE_LOCATION
অনুমতি ঘোষণা করেন তখন আপনার অ্যাপ নির্ভুলতার এই স্তরে অবস্থানগুলি পেতে পারে৷
ব্যবহারকারী যদি আনুমানিক অবস্থানের অনুমতি দেয় তাহলে, আপনার অ্যাপ যে অবস্থানের অনুমতি ঘোষণা করুক না কেন, আপনার অ্যাপের শুধুমাত্র আনুমানিক অবস্থানে অ্যাক্সেস থাকবে।
ব্যবহারকারী যখন শুধুমাত্র আনুমানিক অবস্থান অ্যাক্সেস মঞ্জুর করে তখনও আপনার অ্যাপটি কাজ করবে। যদি আপনার অ্যাপের কোনো বৈশিষ্ট্যের জন্য ACCESS_FINE_LOCATION
অনুমতি ব্যবহার করে সুনির্দিষ্ট অবস্থানে অ্যাক্সেসের প্রয়োজন হয়, তাহলে আপনি ব্যবহারকারীকে আপনার অ্যাপকে সুনির্দিষ্ট অবস্থান অ্যাক্সেস করার অনুমতি দিতে বলতে পারেন।
পটভূমি অবস্থান অনুদান অনুস্মারক
অ্যান্ড্রয়েড 10 (এপিআই লেভেল 29) এবং উচ্চতর, যখন ব্যবহারকারী ব্যাকগ্রাউন্ড লোকেশন অ্যাক্সেস মঞ্জুর করার পরে আপনার অ্যাপের একটি বৈশিষ্ট্য প্রথমবার ব্যাকগ্রাউন্ডে ডিভাইসের অবস্থান অ্যাক্সেস করে, তখন সিস্টেম ব্যবহারকারীকে পাঠানোর জন্য একটি বিজ্ঞপ্তি নির্ধারণ করে। এই বিজ্ঞপ্তিটি ব্যবহারকারীকে মনে করিয়ে দেয় যে তারা আপনার অ্যাপটিকে সর্বদা ডিভাইসের অবস্থান অ্যাক্সেস করার অনুমতি দিয়েছে৷ একটি উদাহরণ বিজ্ঞপ্তি চিত্র 8 এ প্রদর্শিত হবে।
আপনার অ্যাপের SDK নির্ভরতায় অবস্থানের প্রয়োজনীয়তা পরীক্ষা করুন
আপনার অ্যাপ অবস্থানের অনুমতি, বিশেষ করে ACCESS_FINE_LOCATION
অনুমতির উপর নির্ভর করে এমন কোনো SDK ব্যবহার করে কিনা তা পরীক্ষা করুন। আরও জানতে মিডিয়াম-এ আপনার SDK নির্ভরতা ব্লগ পোস্টের আচরণ সম্পর্কে জানুন ।
অতিরিক্ত সম্পদ
অ্যান্ড্রয়েডে অবস্থানের অনুমতি সম্পর্কে আরও তথ্যের জন্য, নিম্নলিখিত উপকরণগুলি দেখুন:
কোডল্যাব
ভিডিও
নমুনা
- অবস্থানের অনুমতির ব্যবহার প্রদর্শনের জন্য নমুনা অ্যাপ ।