Только что обновил одно из моих приложений для Android для работы с Target SDK 34. Мое приложение требует использования службы переднего плана, то есть типа Special_use, поскольку ни один из других типов переднего плана не работает. App Store сделал это, что приятно. if (Build.VERSION.SDK_INT < 34) {
startForeground(NOTIFICATION_NUMBER++, getNotification(!enable_trace_mode, app_bundle));
} else {
startForeground(NOTIFICATION_NUMBER++, getNotification(!enable_trace_mode, app_bundle), ServiceInfo.FOREGROUND_SERVICE_TYPE_SPECIAL_USE);
}
return START_STICKY;
< /code>
С помощью следующего стека Trace < /p>
Caused by android.app.ForegroundServiceStartNotAllowedException: Service.startForeground() not allowed due to mAllowStartForeground false: service com.my.app/.NiceOverlayService
at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:54)
at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:50)
at android.os.Parcel.readParcelableInternal(Parcel.java:4882)
at android.os.Parcel.readParcelable(Parcel.java:4864)
at android.os.Parcel.createExceptionOrNull(Parcel.java:3064)
at android.os.Parcel.createException(Parcel.java:3053)
at android.os.Parcel.readException(Parcel.java:3036)
at android.os.Parcel.readException(Parcel.java:2978)
at android.app.IActivityManager$Stub$Proxy.setServiceForeground(IActivityManager.java:7214)
at android.app.Service.startForeground(Service.java:862)
at com.my.app.NiceOverlayService.onStartCommand(NiceOverlayService.java:76)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:5268)
at android.app.ActivityThread.-$$Nest$mhandleServiceArgs()
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2531)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:230)
at android.os.Looper.loop(Looper.java:319)
at android.app.ActivityThread.main(ActivityThread.java:8893)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
< /code>
Я стучал головой, пытаясь воспроизвести этот сбой, но безрезультатно. Согласно отчетам журналов, это происходит в течение первой секунды, приложение запускается, что странно, потому что моя служба не запускается намного позже, когда пользователь разрешает это. Я думаю, что это может быть проблема с памятью, но я не уверен в этом на 100%. Я видел, как другие люди здесь упоминают аналогичную проблему, но не было бы уверенного исправления для этого. Кто -нибудь знает решение об этом?
Подробнее здесь: https://stackoverflow.com/questions/776 ... foreground
Android 14 ForegryServiceStartNotAllowedException: Service.StartForeground () не допускается ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Java Service Wrapper во время запуска JAR Application FOM Service Service
Anonymous » » в форуме JAVA - 0 Ответы
- 53 Просмотры
-
Последнее сообщение Anonymous
-