【问题标题】:(lots of) UIWebView memory leaks(很多)UIWebView 内存泄漏
【发布时间】:2011-09-19 07:00:54
【问题描述】:

我从其他帖子中看到 UIWebView 存在内存泄漏问题。 但是,由于我泄漏的对象数量众多,我不得不怀疑我是否做错了什么。 'Leaks' 报告了关于打开 UIWebView、加载页面和关闭(它是 Facebook 登录页面)的 60 次泄漏。我已经检查了这些对象中的每一个的堆栈跟踪,它们从未接触过我的代码。它们要么都在一个单独的线程中(我只使用主线程),要么从“主”转到一堆灰色的内部方法。这是 UIWebView 预期的吗?我正在运行最新的固件,我认为他们现在已经修复了这个问题。 顺便说一句,我在设备上看到了这个。 我也尝试在苹果网站上检查错误,但除了通过问题 ID 之外没有其他方法可以搜索..?

肖恩

这是泄漏的捕获:

【问题讨论】:

    标签: iphone memory-leaks uiwebview


    【解决方案1】:

    很抱歉这么快就回答了我自己的问题,但我刚刚发现了问题。

    如果您为委托方法返回 NO:

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
    

    然后释放 UIWebView,它会像上面描述的那样泄漏。返回 YES 可以解决问题。至少对我来说,到目前为止的所有固件版本(4.3.3)都会发生这种情况。我正在向 Apple 提交错误。

    【讨论】:

      【解决方案2】:

      同学们! 我知道这有点晚了%) 研究了这个主题一段时间,找到了最适合我的解决方案 - 使用 WKWebView 它不会泄漏! 就是这样 - 如此简单。

      【讨论】:

        猜你喜欢
        • 2015-04-08
        • 1970-01-01
        • 2013-11-13
        • 2010-10-13
        • 2011-04-08
        • 2011-09-26
        • 2012-08-02
        • 2010-09-21
        相关资源
        最近更新 更多