שינויים בסוגים של שירותים שפועלים בחזית ב-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.stopForeground() ול-Service.stopSelf() כדי להפסיק את השירות לגמרי.

אם חלפו פרק הזמן של הזמן הקצוב לתפוגה, המערכת קוראת לשיטה 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 广播接收器的限制。

הפעלת מדיה

Apps that target Android 15 or higher are not allowed to launch a media playback foreground service from a BOOT_COMPLETED broadcast receiver. For more information, see Restrictions on BOOT_COMPLETED broadcast receivers launching foreground services.

הקרנת מדיה

以 Android 15 或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动媒体投影前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制。

מיקרופון

以 Android 14(API 级别 34)或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动麦克风前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制。

שיחת טלפון

以 Android 15 或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动通话前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制。