Случайный сбой: SecurityException: для проекций мультимедиа требуется служба переднего плана типа ServiceInfo.FOREGROUNDAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Случайный сбой: SecurityException: для проекций мультимедиа требуется служба переднего плана типа ServiceInfo.FOREGROUND

Сообщение Anonymous »

Вероятность того, что моя программа выйдет из строя, очень и очень мала:

Код: Выделить всё

java.lang.SecurityException: Media projections require a foreground service of type ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION
И как только это произойдет, сбой будет продолжаться до тех пор, пока телефон не будет перезагружен.
Я должен отметить, что:
  • разрешения android.permission.FOREGROUND_SERVICE и

    Код: Выделить всё

    android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION
    добавлены в файл манифеста.
  • для службы объявлен тип переднего плана

    Код: Выделить всё

    android:foregroundServiceType="mediaProjection"
  • создал канал уведомлений и уведомление и вызвал startForeground() при создании службы, и есть журналы, показывающие успешный вызов.
Однако существует вероятность 0,001%, что исключение будет выдано.
И проблема в телефоне будет продолжаться, даже если программа выйдет из строя, а затем перезапустится. Причем проблема возникает на Android 10, 11, 12, на Android 13, 14, 15 пока не обнаружена.
Команда adb Shell dumpsys Activity и другие методы дампа также не удалось сбросить информацию о типе службы переднего плана. Как мне разобраться в этой странной проблеме?

Подробнее здесь: https://stackoverflow.com/questions/793 ... round-serv
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»