活动泄漏了最初添加的窗口

这个错误是什么,为什么会发生

05-17 18:24:57.069:错误/WindowManager(18850):活动com.mypkg.myP泄漏了window [email protected]原来是加在这里的
05-17 18:24:57.069:错误/WindowManager(18850):android.view.WindowLeaked:Activity ccom.mypkg.myP泄漏了window [email protected]原来是加在这里的
05-17 18:24:57.069:错误/WindowManager(18850):在android.view.ViewRoot上。<初始化>(ViewRoot.java:231)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.view.Window$LocalWindowManager.addView(Window.java:424)
05-17 18:24:57.069:错误/WindowManager(18850):在android.app.Dialog.show(Dialog.java:239)上
05-17 18:24:57.069:错误/WindowManager(18850):位于com.mypkg.myP$preparePairingLinkData.onPreExecute(viewP.java:183)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.os.AsyncTask.execute(AsyncTask.java:391)
05-17 18:24:57.069:ERROR/WindowManager(18850):位于com.mypkg.myP.onCreate(viewP.java:94)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
05-17 18:24:57.069:错误/WindowManager(18850):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
05-17 18:24:57.069:错误/WindowManager(18850):在android.app.ActivityThread.access$2200(ActivityThread.java:126)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
05-17 18:24:57.069:ERROR/WindowManager(18850):在android.os.Handler.dispatchMessage(Handler.java:99)上
05-17 18:24:57.069:错误/WindowManager(18850):在android.os.Looper.loop(Looper.java:123)
05-17 18:24:57.069:ERROR/WindowManager(18850):位于android.app.ActivityThread.main(ActivityThread.java:4595)
05-17 18:24:57.069:错误/WindowManager(18850):位于java.lang.reflect.Method.Invokenactive(本机方法)
05-17 18:24:57.069:ERROR/WindowManager(18850):位于java.lang.reflect.Method.invoke(Method.java:521)
05-17 18:24:57.069:ERROR/WindowManager(18850):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
05-17 18:24:57.069:ERROR/WindowManager(18850):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
05-17 18:24:57.069:错误/WindowManager(18850):在dalvik.system.NativeStart.main(本机方法)

您试图在退出活动后显示一个对话框

[编辑]

这个问题是谷歌搜索android开发者的热门问题之一,
因此,从评论中添加一些重要的观点,这可能对未来的研究者更有帮助,而无需深入评论对话

答案1

您试图在退出活动后显示一个对话框

答案2

在某些情况下,此错误可能有点误导(尽管
答案仍然是完全准确的)-即在我的案例中
AsyncTask中引发了未处理的异常,这导致
活动关闭,然后打开progressdialog导致此错误
例外所以“真正的”异常出现在日志的前面一点

答案3

在退出对话框之前,对创建的对话框实例调用disclesh()
活动,例如在onPause()或onDestroy()中

发表评论