שינויים בסוגים של שירותים שפועלים בחזית ב-Android 15
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
We are making the following changes to foreground service types with Android
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 עם הודעת השגיאה הבאה: "A foreground service of <fgs_type> did not stop within its timeout: <component_name>".
הערה: השדה Service.onTimeout(int, int)
לא זמין ב-Android מגרסה 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 ואילך לא יכולות להפעיל שירות מיקרופון בחזית ממקלט שידורים מסוג BOOT_COMPLETED
.
מידע נוסף זמין במאמר הגבלות על מקבלי שידור מסוג BOOT_COMPLETED
שמפעילים שירותים בחזית.
שיחת טלפון
אפליקציות שמטרגטות את Android מגרסה 15 ואילך לא יכולות להפעיל שירות שפועל בחזית של שיחת טלפון ממקלט שידורים מסוג BOOT_COMPLETED
.
מידע נוסף זמין במאמר הגבלות על מקבלי שידור מסוג BOOT_COMPLETED
שמפעילים שירותים בחזית.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","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-27 (שעון UTC)."],[],[],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)."]]