UIWebView 是不是泄漏内存?

Posted

技术标签:

【中文标题】UIWebView 是不是泄漏内存?【英文标题】:Does UIWebView leak memory?UIWebView 是否泄漏内存? 【发布时间】:2010-10-13 12:00:27 【问题描述】:

如果您的 iPhone 应用程序使用 UIWebView,并且加载了许多带有大图像的页面,您可能会发现内存泄漏。可以解决吗?

【问题讨论】:

我对类似问题的回答:***.com/a/19609252/423171 【参考方案1】:

尝试添加

[webView loadhtmlString: @"" baseURL: nil];

就在你发布 webview 之前。对于 4.2.1 中与在 UIWebView 中显示 PDF 相关的泄漏,这为我解决了大部分泄漏问题。

【讨论】:

【参考方案2】:

这是一个已知问题。

Marco Arment 在这里提到了泄漏。 http://blog.instapaper.com/post/60628543

你无能为力。 “拦截” html 的一种选择是尝试截断您不需要的部分。显然,这不太可能适用于通用 Web 视图。

与此同时,您可能只需要等待 Apple 的更新。

【讨论】:

【参考方案3】:

我有一个

收到内存警告,级别 1

然后应用程序在 Web 视图中因文本过大而崩溃。

This article 帮助我,解决了泄漏问题。使用起来非常简单直接。

【讨论】:

【参考方案4】:

我这样做了,它似乎有帮助(查看泄漏并通过模拟器运行):

MyWebViewController *myWebViewController = [[[MyWebViewController alloc] initWithNibName:@"MyWebView" bundle:[NSBundle mainBundle]] autorelease];

“自动释放”似乎有助于在我打开的每个 web 视图上泄漏都没有变大。

【讨论】:

@The-Kenny:只有当您实际上并没有立即使用视图控制器时,在这种情况下,您应该将它保存在一个强/保留属性中,而不是一个局部变量中。

以上是关于UIWebView 是不是泄漏内存?的主要内容,如果未能解决你的问题,请参考以下文章

ios UIWebView中的大量内存泄漏

使用WKWebView替换UIWebView

iPhone - 内存泄漏 - NSData dataWithContentsOfUrl & UIWebView

iOS UIWebView 允许所有三方cookie

在 uiwebview 中播放 youtube 视频。如何处理“完成”按钮?

iOS学习笔记14-网络WebView