Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

536
Vistas
Obtener android.app.ForegroundServiceStartNotAllowedException en Android 12 (SDK 31)

Actualicé mis aplicaciones targetSdkVersion y compileSdkVersion a SDK 31 y comencé a recibir el siguiente bloqueo en la aplicación en un servicio que actualiza el widget en segundo plano.

 java.lang.RuntimeException: at android.app.ActivityThread.handleReceiver (ActivityThread.java:4321) at android.app.ActivityThread.access$1600 (ActivityThread.java:247) at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2068) at android.os.Handler.dispatchMessage (Handler.java:106) at android.os.Looper.loopOnce (Looper.java:201) at android.os.Looper.loop (Looper.java:288) at android.app.ActivityThread.main (ActivityThread.java:7842) at java.lang.reflect.Method.invoke (Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1003) Caused by: android.app.ForegroundServiceStartNotAllowedException: at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel (ForegroundServiceStartNotAllowedException.java:54) at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel (ForegroundServiceStartNotAllowedException.java:50) at android.os.Parcel.readParcelable (Parcel.java:3333) at android.os.Parcel.createExceptionOrNull (Parcel.java:2420) at android.os.Parcel.createException (Parcel.java:2409) at android.os.Parcel.readException (Parcel.java:2392) at android.os.Parcel.readException (Parcel.java:2334) at android.app.IActivityManager$Stub$Proxy.startService (IActivityManager.java:5971) at android.app.ContextImpl.startServiceCommon (ContextImpl.java:1847) at android.app.ContextImpl.startForegroundService (ContextImpl.java:1823) at android.content.ContextWrapper.startForegroundService (ContextWrapper.java:779) at android.content.ContextWrapper.startForegroundService (ContextWrapper.java:779) at com.mypackage.appname.ui.widget.widget_package.WidgetClassName.onUpdate (WidgetClassName.java:48) at android.appwidget.AppWidgetProvider.onReceive (AppWidgetProvider.java:66) at com.mypackage.appname.ui.widget.widget_package.WidgetClassName.onReceive (WidgetClassName.java) at android.app.ActivityThread.handleReceiver (ActivityThread.java:4312) at android.app.ActivityThread.access$1600 (ActivityThread.java:247) at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2068) at android.os.Handler.dispatchMessage (Handler.java:106) at android.os.Looper.loopOnce (Looper.java:201) at android.os.Looper.loop (Looper.java:288) at android.app.ActivityThread.main (ActivityThread.java:7842) at java.lang.reflect.Method.invoke (Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1003) Caused by: android.os.RemoteException: at com.android.server.am.ActiveServices.startServiceLocked (ActiveServices.java:691) at com.android.server.am.ActiveServices.startServiceLocked (ActiveServices.java:616) at com.android.server.am.ActivityManagerService.startService (ActivityManagerService.java:11839) at android.app.IActivityManager$Stub.onTransact (IActivityManager.java:2519) at com.android.server.am.ActivityManagerService.onTransact (ActivityManagerService.java:2498)

Además, si está utilizando algo como Firebase Crashlytics, su stacktrace debe ser algo como esto ->

 Caused by android.app.ForegroundServiceStartNotAllowedException: startForegroundService() not allowed due to mAllowStartForeground false: service com.mypackage.appname/.ui.widget.widget_package.MyForegroundServiceName at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:54) at android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:50) at android.os.Parcel.readParcelable(Parcel.java:3333) at android.os.Parcel.createExceptionOrNull(Parcel.java:2420) at android.os.Parcel.createException(Parcel.java:2409) at android.os.Parcel.readException(Parcel.java:2392) at android.os.Parcel.readException(Parcel.java:2334) at android.app.IActivityManager$Stub$Proxy.startService(IActivityManager.java:5971) at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1847) at android.app.ContextImpl.startForegroundService(ContextImpl.java:1823) at android.content.ContextWrapper.startForegroundService(ContextWrapper.java:779) at android.content.ContextWrapper.startForegroundService(ContextWrapper.java:779) at com.mypackage.appname.ui.widget.widget_package.WidgetClassName.onUpdate(WidgetClassName.java:48) at android.appwidget.AppWidgetProvider.onReceive(AppWidgetProvider.java:66) at com.mypackage.appname.ui.widget.widget_package.WidgetClassName.onReceive(WidgetClassName.java) at android.app.ActivityThread.handleReceiver(ActivityThread.java:4312) at android.app.ActivityThread.access$1600(ActivityThread.java:247) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2068) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7842) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)

Estoy agregando la forma de reproducir este problema y solucionarlo, porque no encontré ninguna documentación sobre esto en StackOverflow cuando lo busqué.

over 4 years ago · Hanz Gallego
1 Respuestas
Responde la pregunta

0

Si su aplicación es un MediaPlayer (es decir, utiliza un MediaBrowseService ) y está experimentando el bloqueo de ForegroundServiceStartNotAllowedException , es posible que deba:

  1. Actualice su Manifiesto para especificar que su servicio es para la reproducción de medios usando android:foregroundServiceType="mediaPlayback" en la declaración del Service

  2. Incluya el parámetro ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK en su llamada al método Serivce.startForeground

over 4 years ago · Hanz Gallego Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda