La actividad ha filtrado la ventana que se agregó originalmente

Resuelto Pentium10 asked hace 54 años • 50 respuestas

¿Qué es este error y por qué sucede?

05-17 18:24:57.069: ERROR/WindowManager(18850): Activity com.mypkg.myP has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@44c46ff0 that was originally added here
05-17 18:24:57.069: ERROR/WindowManager(18850): android.view.WindowLeaked: Activity ccom.mypkg.myP has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@44c46ff0 that was originally added here
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.view.ViewRoot.<init>(ViewRoot.java:231)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.view.Window$LocalWindowManager.addView(Window.java:424)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.Dialog.show(Dialog.java:239)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at com.mypkg.myP$PreparePairingLinkageData.onPreExecute(viewP.java:183)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.os.AsyncTask.execute(AsyncTask.java:391)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at com.mypkg.myP.onCreate(viewP.java:94)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.ActivityThread.access$2200(ActivityThread.java:126)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.os.Looper.loop(Looper.java:123)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at android.app.ActivityThread.main(ActivityThread.java:4595)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at java.lang.reflect.Method.invokeNative(Native Method)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at java.lang.reflect.Method.invoke(Method.java:521)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
05-17 18:24:57.069: ERROR/WindowManager(18850):     at dalvik.system.NativeStart.main(Native Method)
Pentium10 avatar Jan 01 '70 08:01 Pentium10
Aceptado

Estás intentando mostrar un cuadro de diálogo después de haber salido de una actividad.

[EDITAR]

Esta pregunta es una de las búsquedas principales en Google para desarrolladores de Android, por lo tanto, se agregan algunos puntos importantes de los comentarios, que podrían ser más útiles para futuros investigadores sin profundizar en la conversación sobre comentarios.

Respuesta 1 :

Estás intentando mostrar un cuadro de diálogo después de haber salido de una actividad.

Respuesta 2

Este error puede ser un poco engañoso en algunas circunstancias (aunque la respuesta sigue siendo completamente precisa); es decir, en mi caso se lanzó una excepción no controlada en una AsyncTask, lo que provocó que la actividad se cerrara y luego un cuadro de diálogo de progreso abierto provocó esta excepción... entonces la excepción "real" fue un poco antes en el registro

Respuesta 3

Llame a dismiss() en la instancia de diálogo que creó antes de salir de su actividad, por ejemplo, en onPause() o onDestroy()

Alex Volovoy avatar May 17 '2010 15:05 Alex Volovoy

La solución es llamar dismiss()al Dialogque creó viewP.java:183antes de salir del Activity, por ejemplo, en onPause(). Todos Windowlos s& Dialogs deben cerrarse antes de salir de un Activity.

molnarm avatar May 17 '2010 18:05 molnarm