Android 14 (API লেভেল ৩৪) থেকে শুরু করে, প্রতিটি ফোরগ্রাউন্ড পরিষেবার জন্য আপনাকে অবশ্যই একটি উপযুক্ত পরিষেবার ধরন ঘোষণা করতে হবে। অর্থাৎ, আপনার অ্যাপ ম্যানিফেস্টে পরিষেবার ধরন ঘোষণা করতে হবে এবং সেই ধরনের জন্য উপযুক্ত ফোরগ্রাউন্ড পরিষেবার অনুমতিও চাইতে হবে (FOREGROUND_SERVICE
অনুমতি চাওয়ার পাশাপাশি)। এছাড়াও, ফোরগ্রাউন্ড পরিষেবার ধরনের উপর নির্ভর করে, পরিষেবা চালু করার আগে আপনাকে
রানটাইম অনুমতির জন্য অনুরোধ করতে হতে পারে।
ক্যামেরা
android:foregroundServiceType-এর অধীনে ম্যানিফেস্টে ঘোষণা করার জন্য ফোরগ্রাউন্ড পরিষেবার ধরনcamera- আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
FOREGROUND_SERVICE_CAMERAstartForeground()-এ পাস করার জন্য কনস্ট্যান্টFOREGROUND_SERVICE_TYPE_CAMERA- রানটাইম সংক্রান্ত পূর্বশর্ত
CAMERAরানটাইম অনুমতির জন্য অনুরোধ করা এবং তা মঞ্জুর করা- বর্ণনা
ব্যাকগ্রাউন্ড থেকে ক্যামেরা অ্যাক্সেস করা চালিয়ে যান, যেমন ভিডিও চ্যাট অ্যাপ যা মাল্টিটাস্কিংয়ের অনুমতি দেয়।
কানেক্ট থাকা ডিভাইস
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
connectedDevice - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_CONNECTED_DEVICE -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE - রানটাইম পূর্বশর্ত
নিম্নলিখিত শর্তগুলির মধ্যে অন্তত একটি সত্য হতে হবে:
আপনার ম্যানিফেস্টে নিম্নলিখিত অনুমতিগুলির মধ্যে অন্তত একটি ঘোষণা করুন:
অনুরোধ করুন এবং নিম্নলিখিত রানটাইম অনুমতিগুলির মধ্যে অন্তত একটি মঞ্জুর করুন:
- বর্ণনা
ব্লুটুথ, এনএফসি, আইআর, ইউএসবি বা নেটওয়ার্ক সংযোগের প্রয়োজন বাহ্যিক ডিভাইসগুলির সাথে মিথস্ক্রিয়া।
- বিকল্প
যদি আপনার অ্যাপটিকে একটি বাহ্যিক ডিভাইসে ক্রমাগত ডেটা স্থানান্তর করতে হয়, তবে পরিবর্তে সহচর ডিভাইস ম্যানেজার ব্যবহার করার কথা বিবেচনা করুন। সহচর ডিভাইসের পরিসরে থাকাকালীন আপনার অ্যাপটি চলমান থাকতে সাহায্য করার জন্য সহচর ডিভাইস উপস্থিতি API ব্যবহার করুন৷
আপনার অ্যাপটিকে ব্লুটুথ ডিভাইসের জন্য স্ক্যান করার প্রয়োজন হলে, পরিবর্তে ব্লুটুথ স্ক্যান API ব্যবহার করার কথা বিবেচনা করুন।
ডেটা সিঙ্ক করা
- ফোরগ্রাউন্ড পরিষেবার ধরন যা ম্যানিফেস্টে ঘোষণা করতে হবে
android:foregroundServiceTypedataSync- আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
FOREGROUND_SERVICE_DATA_SYNCstartForeground()-এ পাস করার জন্য কনস্ট্যান্টFOREGROUND_SERVICE_TYPE_DATA_SYNC- রানটাইম সংক্রান্ত পূর্বশর্ত
- কোনওটিই নয়
- বর্ণনা
ডেটা ট্রান্সফার অপারেশন, যেমন:
- ডেটা আপলোড বা ডাউনলোড করা
- ব্যাক-আপ ও ফিরিয়ে আনার অপারেশন
- ইমপোর্ট বা এক্সপোর্ট অপারেশন
- ডেটা ফেচ করুন
- লোকাল ফাইল প্রসেস করা
- নেটওয়ার্কের মাধ্যমে ডিভাইস ও ক্লাউডের মধ্যে ডেটা ট্রান্সফার করা
- বিকল্প
বিস্তারিত তথ্যের জন্য ডেটা সিঙ্ক ফোরগ্রাউন্ড পরিষেবার বিকল্প দেখুন।
স্বাস্থ্য
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
health - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_HEALTH -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_HEALTH - রানটাইম পূর্বশর্ত
নিম্নলিখিত শর্তগুলির মধ্যে অন্তত একটি সত্য হতে হবে:
আপনার ম্যানিফেস্টে
HIGH_SAMPLING_RATE_SENSORSঅনুমতি ঘোষণা করুন৷অনুরোধ করুন এবং নিম্নলিখিত রানটাইম অনুমতিগুলির মধ্যে অন্তত একটি মঞ্জুর করুন:
- API 35 এবং তার নিচের
BODY_SENSORS -
READ_HEART_RATE -
READ_SKIN_TEMPERATURE -
READ_OXYGEN_SATURATION -
ACTIVITY_RECOGNITION
- API 35 এবং তার নিচের
- বর্ণনা
ব্যায়াম ট্র্যাকারের মতো ফিটনেস বিভাগে অ্যাপগুলিকে সমর্থন করার জন্য যেকোন দীর্ঘস্থায়ী ব্যবহারের ক্ষেত্রে।
লোকেশন
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
location - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_LOCATION -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_LOCATION - রানটাইম পূর্বশর্ত
ব্যবহারকারীর অবশ্যই লোকেশন পরিষেবা সক্রিয় থাকতে হবে এবং অ্যাপটিকে অবশ্যই নিম্নলিখিত রানটাইম অনুমতিগুলির মধ্যে অন্তত একটি মঞ্জুর করতে হবে:
- বর্ণনা
দীর্ঘস্থায়ী ব্যবহারের ক্ষেত্রে যেখানে অবস্থান অ্যাক্সেসের প্রয়োজন হয়, যেমন নেভিগেশন এবং অবস্থান ভাগ করে নেওয়া।
- বিকল্প
ব্যবহারকারী নির্দিষ্ট অবস্থানে পৌঁছালে আপনার অ্যাপটিকে ট্রিগার করার প্রয়োজন হলে, পরিবর্তে জিওফেন্স API ব্যবহার করার কথা বিবেচনা করুন।
মিডিয়া
- ফোরগ্রাউন্ড পরিষেবার ধরন যা ম্যানিফেস্টে ঘোষণা করতে হবে
android:foregroundServiceTypemediaPlayback- আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
FOREGROUND_SERVICE_MEDIA_PLAYBACKstartForeground()-এ পাস করার জন্য কনস্ট্যান্টFOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK- রানটাইম সংক্রান্ত পূর্বশর্ত
- কোনওটিই নয়
- বর্ণনা
ব্যাকগ্রাউন্ড থেকে অডিও বা ভিডিও প্লেব্যাক চালিয়ে যান। Android TV-তে ডিজিটাল ভিডিও রেকর্ডিং (DVR) ফাংশনালিটি কাজ করে।
- বিকল্প
আপনি ছবির-মধ্যে-ছবি ভিডিও দেখালে, ছবির-মধ্যে-ছবি মোড ব্যবহার করুন।
মিডিয়ার প্রক্রিয়াকরণ করা হচ্ছে
- ফোরগ্রাউন্ড পরিষেবার ধরন যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
mediaProcessing - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_MEDIA_PROCESSING -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING - রানটাইম পূর্বশর্ত
- কোনোটিই নয়
- বর্ণনা
মিডিয়া সম্পদে সময়-সাপেক্ষ ক্রিয়াকলাপ সম্পাদনের জন্য পরিষেবা, যেমন মিডিয়াকে বিভিন্ন ফর্ম্যাটে রূপান্তর করা। সিস্টেমটি এই পরিষেবাটিকে সীমিত সময় চালানোর অনুমতি দেয়; সাধারণ পরিস্থিতিতে, এই সময়সীমা প্রতি 24টির মধ্যে 6 ঘন্টা হবে। (এই সীমাটি একটি অ্যাপের
mediaProcessingফোরগ্রাউন্ড পরিষেবাগুলির সমস্ত দ্বারা ভাগ করা হয়নিম্নলিখিত পরিস্থিতিতে আপনার অ্যাপটিকে ম্যানুয়ালি মিডিয়া প্রক্রিয়াকরণ পরিষেবা বন্ধ করা উচিত:
- যখন ট্রান্সকোডিং অপারেশন শেষ হয় বা ব্যর্থতার অবস্থায় পৌঁছায়, পরিষেবাটিকে সম্পূর্ণরূপে বন্ধ করতে
Service.stopForeground()এবংService.stopSelf()কল করুন৷
- যখন ট্রান্সকোডিং অপারেশন শেষ হয় বা ব্যর্থতার অবস্থায় পৌঁছায়, পরিষেবাটিকে সম্পূর্ণরূপে বন্ধ করতে
যদি টাইমআউট পিরিয়ড পৌঁছে যায়, সিস্টেম পরিষেবাটির
Service.onTimeout(int, int)পদ্ধতিতে কল করে। এই সময়ে, পরিষেবাটিতেService.stopSelf()কল করার জন্য কয়েক সেকেন্ড সময় আছে। যদি পরিষেবাটিService.stopSelf()কে কল না করে, তাহলে এই ত্রুটি বার্তার সাথে একটি ANR ঘটবে: " <fgs_type> এর একটি অগ্রভাগের পরিষেবা তার সময়সীমার মধ্যে থামেনি: <component_name> "।দ্রষ্টব্য :
Service.onTimeout(int, int)Android 14 বা তার নিচের সংস্করণে উপলব্ধ নয়। সেই সংস্করণগুলি চলমান ডিভাইসগুলিতে, যদি কোনও মিডিয়া প্রক্রিয়াকরণ পরিষেবা সময়সীমার মধ্যে পৌঁছে যায়, সিস্টেমটি অবিলম্বে অ্যাপটিকে ক্যাশ করে। এই কারণে, আপনার অ্যাপের সময় শেষ হওয়ার বিজ্ঞপ্তি পাওয়ার জন্য অপেক্ষা করা উচিত নয়। পরিবর্তে, এটি ফোরগ্রাউন্ড পরিষেবাটি বন্ধ করা উচিত বা যত তাড়াতাড়ি উপযুক্ত হিসাবে এটি একটি ব্যাকগ্রাউন্ড পরিষেবাতে পরিবর্তন করা উচিত।
মিডিয়া প্রোজেকশন
- ফোরগ্রাউন্ড পরিষেবার ধরন যা ম্যানিফেস্টে ঘোষণা করতে হবে
android:foregroundServiceTypemediaProjection- আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
FOREGROUND_SERVICE_MEDIA_PROJECTIONstartForeground()-এ পাস করার জন্য কনস্ট্যান্টFOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION- রানটাইম সংক্রান্ত পূর্বশর্ত
ফোরগ্রাউন্ড সার্ভিস শুরু করার আগে
createScreenCaptureIntent()মেথড কল করুন। এটি করলে ব্যবহারকারীকে একটি অনুমতি সংক্রান্ত বিজ্ঞপ্তি দেখানো হয়; আপনি পরিষেবা তৈরি করার আগে ব্যবহারকারীকে অবশ্যই অনুমতি দিতে হবে।ফোরগ্রাউন্ড সার্ভিস তৈরি করার পরে, আপনি
MediaProjectionManager.getMediaProjection()কল করতে পারবেন।- বর্ণনা
MediaProjectionAPI ব্যবহার করে প্রাইমারি নয় এমন ডিসপ্লে বা এক্সটার্নাল ডিভাইসে কন্টেন্ট প্রোজেক্ট করুন। এই কন্টেন্টকে এক্সক্লুসিভ মিডিয়া কন্টেন্ট হতে হবে এমন নয়।- বিকল্প
অন্য ডিভাইসে মিডিয়া স্ট্রিম করতে, Google Cast SDK ব্যবহার করুন।
মাইক্রোফোন
- ফোরগ্রাউন্ড পরিষেবার ধরন যা ম্যানিফেস্টে ঘোষণা করতে হবে
android:foregroundServiceTypemicrophone- আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
FOREGROUND_SERVICE_MICROPHONEstartForeground()-এ পাস করার জন্য কনস্ট্যান্টFOREGROUND_SERVICE_TYPE_MICROPHONE- রানটাইম সংক্রান্ত পূর্বশর্ত
RECORD_AUDIOরানটাইম অনুমতির জন্য অনুরোধ করুন এবং অনুমতি পান।- বর্ণনা
ব্যাকগ্রাউন্ড থেকে মাইক্রোফোন ক্যাপচার করা চালিয়ে যান, যেমন ভয়েস রেকর্ডার বা কমিউনিকেশন অ্যাপ।
ফোন কল
- ফোরগ্রাউন্ড পরিষেবার ধরন যা ম্যানিফেস্টে ঘোষণা করতে হবে
android:foregroundServiceTypephoneCall- আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
FOREGROUND_SERVICE_PHONE_CALLstartForeground()-এ পাস করার জন্য কনস্ট্যান্টFOREGROUND_SERVICE_TYPE_PHONE_CALL- রানটাইম সংক্রান্ত পূর্বশর্ত
এই শর্তগুলির মধ্যে অন্তত একটি সঠিক হতে হবে:
- অ্যাপটি তার ম্যানিফেস্ট ফাইলে
MANAGE_OWN_CALLSঅনুমতি ঘোষণা করেছে।
- অ্যাপটি তার ম্যানিফেস্ট ফাইলে
ROLE_DIALERরোলের মাধ্যমে অ্যাপটি ডিফল্ট ডায়ালার অ্যাপ হিসেবে কাজ করে।
- বর্ণনা
ConnectionServiceAPI ব্যবহার করে কোনও চলমান কল চালিয়ে যান।- বিকল্প
আপনাকে ফোন, ভিডিও বা VoIP কল করতে হলে,
android.telecomলাইব্রেরি ব্যবহার করার কথা বিবেচনা করুন।কল স্ক্রিন করতে
CallScreeningServiceব্যবহার করার কথা বিবেচনা করুন।
রিমোট মেসেজিং
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
remoteMessaging - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_REMOTE_MESSAGING -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_REMOTE_MESSAGING - রানটাইম পূর্বশর্ত
- কোনোটিই নয়
- বর্ণনা
- এক ডিভাইস থেকে অন্য ডিভাইসে পাঠ্য বার্তা স্থানান্তর করুন। কোনো ব্যবহারকারীর মেসেজিং কাজের ধারাবাহিকতায় সহায়তা করে যখন তারা ডিভাইসগুলি পরিবর্তন করে।
ছোট পরিষেবা
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
shortService - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
- কোনোটিই নয়
-
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_SHORT_SERVICE - রানটাইম পূর্বশর্ত
- কোনোটিই নয়
- বর্ণনা
জটিল কাজ দ্রুত শেষ করুন যা বাধা বা স্থগিত করা যাবে না।
এই ধরনের কিছু অনন্য বৈশিষ্ট্য আছে:
- শুধুমাত্র অল্প সময়ের জন্য চলতে পারে (প্রায় 3 মিনিট)।
- স্টিকি ফোরগ্রাউন্ড পরিষেবাগুলির জন্য কোনও সমর্থন নেই।
- অন্যান্য ফোরগ্রাউন্ড পরিষেবাগুলি শুরু করতে পারে না৷
- টাইপ-নির্দিষ্ট অনুমতির প্রয়োজন হয় না, যদিও এটির জন্য এখনও
FOREGROUND_SERVICEঅনুমতি প্রয়োজন৷ - একটি
shortServiceশুধুমাত্র অন্য পরিষেবার প্রকারে পরিবর্তন করতে পারে যদি অ্যাপটি বর্তমানে একটি নতুন ফোরগ্রাউন্ড পরিষেবা শুরু করার যোগ্য হয়৷ - একটি ফোরগ্রাউন্ড পরিষেবা যে কোনও সময় তার ধরনকে
shortServiceপরিবর্তন করতে পারে, যে সময়ে টাইমআউট পিরিয়ড শুরু হয়।
Service.startForeground()বলা হওয়ার মুহুর্ত থেকে শর্টসার্ভিসের সময়সীমা শুরু হয়। সময় শেষ হওয়ার আগে অ্যাপটিService.stopSelf()বাService.stopForeground()কল করবে বলে আশা করা হচ্ছে। অন্যথায়, নতুনService.onTimeout()কল করা হবে, অ্যাপগুলিকে তাদের পরিষেবা বন্ধ করতেstopSelf()বাstopForeground()কল করার একটি সংক্ষিপ্ত সুযোগ দেয়৷Service.onTimeout()কল করার অল্প সময়ের পরে, অ্যাপটি একটি ক্যাশড অবস্থায় প্রবেশ করে এবং ব্যবহারকারী অ্যাপের সাথে সক্রিয়ভাবে ইন্টারঅ্যাক্ট না করা পর্যন্ত এটিকে আর অগ্রভাগে বিবেচনা করা হয় না। অ্যাপটি ক্যাশ করার কিছুক্ষণ পরে এবং পরিষেবা বন্ধ না হলে, অ্যাপটি একটি ANR পায়। ANR বার্তাটিFOREGROUND_SERVICE_TYPE_SHORT_SERVICEউল্লেখ করেছে। এই কারণগুলির জন্য,Service.onTimeout()কলব্যাক বাস্তবায়ন করা সর্বোত্তম অনুশীলন হিসাবে বিবেচিত হয়৷Service.onTimeout()কলব্যাক Android 13 এবং তার নিচের সংস্করণে বিদ্যমান নেই। যদি একই পরিষেবা এই জাতীয় ডিভাইসগুলিতে চলে, তবে এটি একটি টাইমআউট পায় না এবং এটি ANRও করে না। নিশ্চিত করুন যে আপনার পরিষেবাটি প্রক্রিয়াকরণের কাজ শেষ করার সাথে সাথেই বন্ধ হয়ে যায়, এমনকি যদি এটি এখনওService.onTimeout()কলব্যাক না পায়।এটা মনে রাখা গুরুত্বপূর্ণ যে যদি
shortServiceটাইমআউটকে সম্মান না করা হয়, তাহলে অ্যাপটি ANR করবে এমনকি এটির অন্যান্য বৈধ অগ্রভাগের পরিষেবা বা অন্যান্য অ্যাপ লাইফসাইকেল প্রক্রিয়া চলমান থাকলেও।যদি কোনও অ্যাপ ব্যবহারকারীর কাছে দৃশ্যমান হয় বা ফোরগ্রাউন্ড পরিষেবাগুলিকে ব্যাকগ্রাউন্ড থেকে শুরু করার অনুমতি দেয় এমন ছাড়গুলির মধ্যে একটিকে সন্তুষ্ট করে, তাহলে
FOREGROUND_SERVICE_TYPE_SHORT_SERVICEপ্যারামিটারের সাথে আবারService.StartForeground()কল করলে সময়সীমা আরও 3 মিনিট বৃদ্ধি করে৷ অ্যাপটি ব্যবহারকারীর কাছে দৃশ্যমান না হলে এবং ছাড়গুলির একটিকে সন্তুষ্ট না করলে, ধরন নির্বিশেষে অন্য ফোরগ্রাউন্ড পরিষেবা শুরু করার যে কোনও প্রচেষ্টা একটিForegroundServiceStartNotAllowedExceptionসৃষ্টি করে৷যদি কোনও ব্যবহারকারী আপনার অ্যাপের জন্য ব্যাটারি অপ্টিমাইজেশান অক্ষম করে, তবে এটি এখনও শর্টসার্ভিস FGS-এর টাইমআউট দ্বারা প্রভাবিত হয়।
আপনি যদি একটি ফোরগ্রাউন্ড পরিষেবা শুরু করেন যাতে
shortServiceটাইপ এবং অন্য ফোরগ্রাউন্ড পরিষেবার ধরন অন্তর্ভুক্ত থাকে, তবে সিস্টেমটিshortServiceটাইপ ঘোষণা উপেক্ষা করে। যাইহোক, পরিষেবাটিকে এখনও অন্যান্য ঘোষিত প্রকারের পূর্বশর্তগুলি মেনে চলতে হবে। আরও তথ্যের জন্য, ফোরগ্রাউন্ড পরিষেবার ডকুমেন্টেশন দেখুন।
বিশেষ ব্যবহার
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
specialUse - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_SPECIAL_USE -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_SPECIAL_USE - রানটাইম পূর্বশর্ত
- কোনোটিই নয়
- বর্ণনা
যেকোন বৈধ ফোরগ্রাউন্ড পরিষেবা ব্যবহারের ক্ষেত্রে কভার করে যা অন্যান্য ফোরগ্রাউন্ড পরিষেবার ধরন দ্বারা কভার করা হয় না।
FOREGROUND_SERVICE_TYPE_SPECIAL_USEফোরগ্রাউন্ড পরিষেবার ধরন ঘোষণা করার পাশাপাশি, বিকাশকারীদের ম্যানিফেস্টে ব্যবহারের কেসগুলি ঘোষণা করা উচিত৷ এটি করার জন্য, তারা<service>উপাদানের মধ্যে<property>উপাদানটি নির্দিষ্ট করে। আপনি যখন Google Play Console-এ আপনার অ্যাপ জমা দেন তখন এই মানগুলি এবং সংশ্লিষ্ট ব্যবহারের ক্ষেত্রে পর্যালোচনা করা হয়। আপনি যে ব্যবহারের ক্ষেত্রেগুলি প্রদান করেন তা ফ্রি-ফর্ম, এবং আপনাকে পর্যাপ্ত তথ্য প্রদানের বিষয়টি নিশ্চিত করতে হবে যাতে পর্যালোচক দেখতে পান কেন আপনাকেspecialUseটাইপ ব্যবহার করতে হবে।<service android:name="fooService" android:foregroundServiceType="specialUse"> <property android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" android:value="explanation_for_special_use"/> </service>
সিস্টেম অব্যাহতি দিয়েছে
- ফোরগ্রাউন্ড সার্ভিস টাইপ যা ম্যানিফেস্টের অধীনে ঘোষণা করতে হবে
-
android:foregroundServiceType -
systemExempted - আপনার ম্যানিফেস্টে ঘোষণা করার অনুমতি
-
FOREGROUND_SERVICE_SYSTEM_EXEMPTED -
startForeground()এ পাস করার জন্য ধ্রুবক -
FOREGROUND_SERVICE_TYPE_SYSTEM_EXEMPTED - রানটাইম পূর্বশর্ত
- কোনোটিই নয়
- বর্ণনা
ফোরগ্রাউন্ড পরিষেবাগুলি ব্যবহার করা চালিয়ে যাওয়ার জন্য সিস্টেম অ্যাপ্লিকেশন এবং নির্দিষ্ট সিস্টেম ইন্টিগ্রেশনের জন্য সংরক্ষিত।
এই ধরনের ব্যবহার করার জন্য, একটি অ্যাপকে অবশ্যই নিম্নলিখিত মানদণ্ডগুলির মধ্যে একটি পূরণ করতে হবে:
- ডিভাইস ডেমো মোড অবস্থায় আছে
- অ্যাপটি একটি ডিভাইসের মালিক
- অ্যাপ একজন প্রোফাইলার মালিক
-
ROLE_EMERGENCYভূমিকা আছে এমন নিরাপত্তা অ্যাপ - ডিভাইস অ্যাডমিন অ্যাপস
-
SCHEDULE_EXACT_ALARMবাUSE_EXACT_ALARMঅনুমতি ধারণ করা অ্যাপ ভিপিএন অ্যাপস ( সেটিংস > নেটওয়ার্ক এবং ইন্টারনেট > ভিপিএন ব্যবহার করে কনফিগার করা হয়েছে)
অন্যথায়, এই ধরনের ঘোষণা করার ফলে সিস্টেম একটি
ForegroundServiceTypeNotAllowedExceptionনিক্ষেপ করে।
ফোরগ্রাউন্ড পরিষেবার ধরন ব্যবহার করার জন্য Google Play নীতি এনফোর্সমেন্ট
যদি আপনার অ্যাপটি Android 14 বা তার উচ্চতরকে টার্গেট করে, তাহলে আপনাকে Play Console-এর অ্যাপ কন্টেন্ট পৃষ্ঠায় ( নীতি > অ্যাপ সামগ্রী ) আপনার অ্যাপের ফোরগ্রাউন্ড পরিষেবার ধরন ঘোষণা করতে হবে। Play Console-এ আপনার ফোরগ্রাউন্ড পরিষেবার প্রকারগুলি কীভাবে ঘোষণা করবেন সে সম্পর্কে আরও তথ্যের জন্য, ফোরগ্রাউন্ড পরিষেবা এবং পূর্ণ-স্ক্রীনের অভিপ্রায়ের প্রয়োজনীয়তা বোঝা দেখুন।