我在Stacktrace中有WindowManager:android.view.WindowLeaked,我必须处理它。
我知道出现的原因,但修复它会花费太多时间。
所有我需要捕捉它像典型的例外,例如:
try {} catch (WindowLeaked e) {}
但这并不是肯定的,因为它不是Exception
。
有什么办法吗?
我不会问 如何修复或什么是WindowLeaked 。
问题是:我怎么知道WindowLeak发生了?
答案 0 :(得分:1)
您的问题的答案是您的申请无法“知道”何时发生。尽管它具有非常规名称,但android.view.WindowLeaked
是Java例外。但是,它是无法捕获的,因为它不会在调用堆栈上没有应用程序代码的任何上下文中抛出。
(显然,它根本没有被抛出。相反,它似乎被用作捕获堆栈跟踪以进行日志记录的方法。这看起来很奇怪,因为堆栈跟踪并没有告诉你太多...给出了它上面没有应用程序代码!)
你(程序员)可以知道它已经发生了(通过阅读logcat!)但你无能为力......除了追查根本原因并修复它。
答案 1 :(得分:0)
窗口泄漏异常通常发生在用户打开视图但未关闭视图时。