通过WebView泄露MainActivity

Dav*_*lez 9 android webview

我有一个应用程序,其 Activity 有一个带有 webView 的片段。如文档所示,此 webView 正在使用 Activity 上下文进行实例化。

问题在于,当“不保留活动”标志打开时,我们导航到另一个活动并返回。该活动已重新实例化,但查看堆转储时,我看到绑定到该活动的内存泄漏。

查看引用痕迹,被引用了, WebView类OnscreenContentProvider中使用的一个类。

该类又使用ClassLoaderContextWrapperFactory,其中包含对上下文的两个静态引用。

这似乎表明存在错误并且正在泄漏上下文。有谁知道可能发生什么甚至重现它?

mar*_*inj 2

我遇到了类似的问题,对我有帮助的是添加:

webView.removeAllViews();
webView.destroy();
Run Code Online (Sandbox Code Playgroud)

Activity.onDestroy()webView.removeAllViews我认为,之前打电话很重要webView.destroy()