تغییرات در انواع خدمات پیش زمینه برای Android 15
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
ما در حال ایجاد تغییرات زیر در انواع سرویس های پیش زمینه با اندروید 15 هستیم.
- نوع سرویس پیش زمینه برای اعلام در مانیفست در زیر
-
android:foregroundServiceType
-
mediaProcessing
- اجازه اعلام در مانیفست شما
-
FOREGROUND_SERVICE_MEDIA_PROCESSING
- ثابت برای عبور به
startForeground()
-
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
- پیش نیازهای زمان اجرا
- هیچ کدام
- توضیحات
سرویسی برای انجام عملیات زمان بر روی دارایی های رسانه، مانند تبدیل رسانه به فرمت های مختلف. سیستم به این سرویس اجازه می دهد مدت زمان محدودی اجرا شود. در شرایط عادی، این محدودیت زمانی 6 ساعت از هر 24 ساعت خواهد بود. (این محدودیت توسط همه سرویسهای پیشزمینه mediaProcessing
برنامه مشترک است.)
برنامه شما باید به صورت دستی سرویس پردازش رسانه را در سناریوی زیر متوقف کند:
در صورت رسیدن به دوره زمانی، سیستم روش Service.onTimeout(int, int)
سرویس را فراخوانی می کند. در این زمان، سرویس چند ثانیه فرصت دارد تا Service.stopSelf()
را فراخوانی کند. اگر سرویس Service.stopSelf()
را فراخوانی نکند، یک ANR با این پیغام خطا رخ می دهد: "یک سرویس پیش زمینه <fgs_type> در مدت زمان توقف خود متوقف نشد: <component_name> ".
توجه : Service.onTimeout(int, int)
در اندروید 14 یا پایینتر در دسترس نیست. در دستگاههایی که این نسخهها را اجرا میکنند، اگر یک سرویس پردازش رسانه به دوره زمانی پایان برسد، سیستم بلافاصله برنامه را در حافظه پنهان ذخیره میکند. به همین دلیل، برنامه شما نباید منتظر دریافت اعلان مهلت باشد. در عوض، باید سرویس پیش زمینه را خاتمه دهد یا در اسرع وقت آن را به سرویس پس زمینه تغییر دهد.
دوربین
برنامههایی که Android 15 یا بالاتر را هدف قرار میدهند، مجاز به راهاندازی سرویس پیشزمینه دوربین از گیرنده پخش BOOT_COMPLETED
نیستند. برای اطلاعات بیشتر، به محدودیتهای گیرندههای پخش BOOT_COMPLETED
در راهاندازی خدمات پیشزمینه مراجعه کنید.
همگام سازی داده ها
برنامههایی که Android 15 یا بالاتر را هدف قرار میدهند، مجاز به راهاندازی سرویس پیشزمینه همگامسازی دادهها از گیرنده پخش BOOT_COMPLETED
نیستند. برای اطلاعات بیشتر، به محدودیتهای گیرندههای پخش BOOT_COMPLETED
در راهاندازی خدمات پیشزمینه مراجعه کنید.
برنامههایی که Android 15 یا بالاتر را هدف قرار میدهند، مجاز به راهاندازی سرویس پیشزمینه پخش رسانه از گیرنده پخش BOOT_COMPLETED
نیستند. برای اطلاعات بیشتر، به محدودیتهای گیرندههای پخش BOOT_COMPLETED
در راهاندازی خدمات پیشزمینه مراجعه کنید.
برنامههایی که Android 15 یا بالاتر را هدف قرار میدهند، مجاز به راهاندازی سرویس پیشزمینه نمایش رسانه از گیرنده پخش BOOT_COMPLETED
نیستند. برای اطلاعات بیشتر، به محدودیتهای گیرندههای پخش BOOT_COMPLETED
در راهاندازی خدمات پیشزمینه مراجعه کنید.
میکروفون
برنامههایی که Android 14 (سطح API 34) یا بالاتر را هدف قرار میدهند، مجاز به راهاندازی سرویس پیشزمینه میکروفون از گیرنده پخش BOOT_COMPLETED
نیستند. برای اطلاعات بیشتر، به محدودیتهای گیرندههای پخش BOOT_COMPLETED
در راهاندازی خدمات پیشزمینه مراجعه کنید.
تماس تلفنی
برنامههایی که Android 15 یا بالاتر را هدف قرار میدهند، مجاز به راهاندازی سرویس پیشزمینه تماس تلفنی از گیرنده پخش BOOT_COMPLETED
نیستند. برای اطلاعات بیشتر، به محدودیتهای گیرندههای پخش BOOT_COMPLETED
در راهاندازی خدمات پیشزمینه مراجعه کنید.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Changes to foreground service types for Android 15\n\nWe are making the following changes to foreground service types with Android\n15.\n\n### Media processing\n\nForeground service type to declare in manifest under\n`android:foregroundServiceType`\n: `mediaProcessing`\n\nPermission to declare in your manifest\n: `FOREGROUND_SERVICE_MEDIA_PROCESSING`\n\nConstant to pass to `startForeground()`\n: `FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING`\n\nRuntime prerequisites\n: None\n\nDescription\n\n: Service for performing time-consuming operations on media assets, like\n converting media to different formats. The system allows this service a limited\n time to run; under normal circumstances, this time limit would be 6 hours out of\n every 24. (This limit is shared by all of an app's `mediaProcessing` foreground\n services.)\n\n: Your app should manually stop the media processing service in the following\n scenario:\n\n - When the transcoding operation finishes or reaches a failure state, have the service call [`Service.stopForeground()`](/reference/android/app/Service#stopForeground(int)) and [`Service.stopSelf()`](/reference/android/app/Service#stopSelf()) to stop the service completely.\n\n: If the timeout period is reached, the system calls the service's\n [`Service.onTimeout(int, int)`](/reference/android/app/Service#onTimeout(int,%20int)) method. At this\n time, the service has a few\n seconds to call [`Service.stopSelf()`](/reference/android/app/Service#stopSelf()). If the service does not call\n `Service.stopSelf()`, an ANR will occur with this error message: \"A\n foreground service of *\\\u003cfgs_type\\\u003e* did not stop within its\n timeout: *\\\u003ccomponent_name\\\u003e*\".\n\n **Note** : `Service.onTimeout(int, int)` is not available on Android 14\n or lower. On devices running those versions, if a media processing\n service reaches the timeout period, the system immediately caches the app.\n For this reason, your app shouldn't wait to get a timeout notification.\n Instead, it should terminate the foreground service or change it to a\n background service as soon as appropriate.\n\n### Camera\n\nApps that target Android 15 or higher are not allowed to launch a\ncamera foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Data sync\n\nApps that target Android 15 or higher are not allowed to launch a\ndata sync foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Media playback\n\nApps that target Android 15 or higher are not allowed to launch a\nmedia playback foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Media projection\n\nApps that target Android 15 or higher are not allowed to launch a\nmedia projection foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Microphone\n\nApps that target Android 14 (API level 34) or higher are not allowed to launch a\nmicrophone foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Phone call\n\nApps that target Android 15 or higher are not allowed to launch a\nphone call foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed)."]]