অ্যান্ড্রয়েড অ্যাপে Pushwoosh লোকেশন মডিউল ব্যবহার করা
অ্যান্ড্রয়েডে দুটি লোকেশন অ্যাক্সেস বিভাগ রয়েছে:
- ফোরগ্রাউন্ড লোকেশন অ্যাক্সেস
- ব্যাকগ্রাউন্ড লোকেশন অ্যাক্সেস
ফোরগ্রাউন্ডে ব্যবহারকারীর লোকেশন আপডেট করার জন্য, নিম্নলিখিত শর্তগুলির মধ্যে একটি পূরণ করতে হবে:
- অ্যাপের একটি অ্যাক্টিভিটি সক্রিয় আছে
- অ্যাপের জন্য foregroundServiceType = “location” এর একটি ফোরগ্রাউন্ড সার্ভিস চালু করা হয়েছে
ব্যাকগ্রাউন্ড অ্যাক্সেস অ্যাপটিকে ব্যবহারকারীর জিওলোকেশন পেতে দেয় যখন অ্যাপটি নিষ্ক্রিয় থাকে, এবং সেই অ্যাপের জন্য “location” টাইপের কোনো ফোরগ্রাউন্ড সার্ভিস চালু করা হয় না।
ফোরগ্রাউন্ড লোকেশন অ্যাক্সেস
Anchor link toআপনি যদি শুধুমাত্র আপনার অ্যাপ সক্রিয় থাকাকালীন ব্যবহারকারীর লোকেশন আপডেট করার জন্য Pushwoosh লোকেশন মডিউল ব্যবহার করতে চান, তাহলে আপনার app/build.gradle-এ pushwoosh-location মডিউলটি যোগ করুন:
implementation 'com.pushwoosh:pushwoosh-location:6.+'মডিউলটি চালু করতে, startLocationTracking মেথডটি ব্যবহার করুন:
PushwooshLocation.startLocationTracking();PushwooshLocation.startLocationTracking()আপনার অ্যাপ্লিকেশন ব্যাকগ্রাউন্ডে থাকাকালীন লোকেশন অনুরোধ করার জন্য ForegroundService ব্যবহার করা
Anchor link toForegroundService চালু করার জন্য যখন startLocationTracking মেথডটি কল করা হয়, যা আপনার অ্যাপ্লিকেশন ব্যাকগ্রাউন্ডে থাকাকালীন ব্যবহারকারীর জিওলোকেশন পেতে দেয়, পূর্ববর্তী অনুচ্ছেদে বর্ণিত পদক্ষেপগুলি অনুসরণ করুন, তারপর আপনার AndroidManifest.xml-এ নিম্নলিখিত মেটা-ডেটা যোগ করুন:
...<application>.... <meta-data android:name="com.pushwoosh.start_foreground_service" android:value="true" />...</application>...যখন ForegroundService চালু হয়, তখন একটি নোটিফিকেশন তৈরি হয়। আপনি আপনার প্রকল্পের AndroidManifest.xml-এ অতিরিক্ত মেটা-ডেটা নির্দিষ্ট করে নোটিফিকেশনটি কাস্টমাইজ করতে পারেন:
...<application>.... <meta-data android:name="com.pushwoosh.foreground_service_notification_text" android:value="My notification text" /> <meta-data android:name="com.pushwoosh.foreground_service_notification_channel_name" android:value="My notification channel name" />...</application>...ব্যাকগ্রাউন্ড লোকেশন অ্যাক্সেস
Anchor link toForegroundService চালু না করে ব্যাকগ্রাউন্ডে জিওলোকেশন আপডেট করার জন্য, আপনার নিম্নলিখিতগুলি প্রয়োজন হবে:
- ব্যাকগ্রাউন্ডে লোকেশন অ্যাক্সেসের জন্য আপনার অ্যাপের জন্য Google Play থেকে অনুমোদন নিন (বিস্তারিত জানতে https://support.google.com/googleplay/android-developer/answer/9799150?hl=en দেখুন)
- আপনার AndroidManifest.xml-এ পারমিশন যোগ করুন:
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />- ফোরগ্রাউন্ড লোকেশন পারমিশন পাওয়ার পরে ব্যাকগ্রাউন্ডে লোকেশন আপডেট করার জন্য ব্যবহারকারীর অনুমতি অনুরোধ করুন (অ্যান্ড্রয়েড ডেভেলপার ডকুমেন্টেশনে নির্দেশিকা খুঁজুন: https://developer.android.com/training/location/permissions#background-dialog-target-android-11 )
6.3.2 pushwoosh-location মডিউল সংস্করণে, আমরা একটি অতিরিক্ত মেথড অন্তর্ভুক্ত করেছি যা লোকেশন পারমিশন সেটিংস স্ক্রিন খোলে যদি নিম্নলিখিত শর্তগুলি পূরণ হয়:
- অ্যাপের জন্য ফোরগ্রাউন্ড লোকেশন পারমিশন দেওয়া আছে;
- অ্যাপের AndroidManifest.xml-এ
ACCESS_BACKGROUND_LOCATIONব্যবহারকারী-পারমিশন উপস্থিত আছে।
মেথডটি নিম্নরূপ কল করুন:
PushwooshLocation.requestBackgroundLocationPermission();PushwooshLocation.requestBackgroundLocationPermission()Android 12+ পারমিশনের প্রকারভেদ
Anchor link toAndroid 12 থেকে শুরু করে, যখন ফোরগ্রাউন্ড লোকেশন অ্যাক্সেসের অনুমতি চাওয়া হয়, তখন একজন ব্যবহারকারী বেছে নিতে পারেন যে অ্যাপটি কত ঘন ঘন এবং কী নির্ভুলতার সাথে ব্যবহারকারীর লোকেশন পাবে।
সেই পারমিশনের দুটি প্রকার রয়েছে:
- আনুমানিক লোকেশন, যা ACCESS_COARSE_LOCATION এর সমান
- সুনির্দিষ্ট লোকেশন, যা ACCESS_FINE_LOCATION এবং ACCESS_COARSE_LOCATION এর সমান
আমাদের সাথে আপনার মতামত শেয়ার করুন
Anchor link toআপনার মতামত আমাদের একটি উন্নত অভিজ্ঞতা তৈরি করতে সাহায্য করে, তাই SDK ইন্টিগ্রেশন প্রক্রিয়ার সময় আপনার কোনো সমস্যা হলে আমরা আপনার কাছ থেকে শুনতে চাই। আপনি যদি কোনো অসুবিধার সম্মুখীন হন, তাহলে অনুগ্রহ করে আমাদের সাথে আপনার মতামত শেয়ার করতে দ্বিধা করবেন না এই ফর্মের মাধ্যমে।