【问题标题】:iOS 7:UIWebView (Safari) crashes due to memory overflowiOS 7:UIWebView (Safari) 由于内存溢出而崩溃
【发布时间】:2013-10-22 14:26:27
【问题描述】:

当我尝试在 iOS7 Safari 中创建大型 JSON 对象(例如 http://yadi.sk/d/yA4hY1OEBPpLZ)时,它由于内存泄漏而崩溃。但在 iOS6 和 iOS7 模拟器中它可以工作。

有人遇到同样的问题吗?

【问题讨论】:

  • 你能举个例子吗?有多大?
  • 打开此处附加的文件link。我不知道如何测量js内存大小的精确值。在此示例中,对象逐渐增加小部分。在 ipad 上的日志中,我看到大约 350 个对象。之后浏览器崩溃。在模拟器中ios7 Profiler显示内存量在10 Mb以内,在ios7设备中为300MB

标签: javascript memory-leaks safari crash ios7


【解决方案1】:

当您加载 2MB 或更多的 HTML 时,UIWebView 必须消耗大量内存来创建 DOM 和所有控件才能实际显示页面。限制不是 HTML 大小,而是显示它所需的最终内存量。使用 Activity Monitor 在模拟器中运行它以查看内存消耗。

您需要分解您的页面或找到另一种方法来进行标记以使内存更小。请注意,如果您需要创建相同的页面,仅缩小 HTML 可能无济于事。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-09
    相关资源
    最近更新 更多