Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript iOS7 webkit经常崩溃-没有释放内存?_Javascript_Cordova_Ios7_Mobile Safari - Fatal编程技术网

Javascript iOS7 webkit经常崩溃-没有释放内存?

Javascript iOS7 webkit经常崩溃-没有释放内存?,javascript,cordova,ios7,mobile-safari,Javascript,Cordova,Ios7,Mobile Safari,我注意到我的Phonegap应用程序在iOS7上出现了一些iOS6上没有出现的内存问题 包含许多图像的长列表 显示手机相册(9mp)中的图像会在您查看多个相册后崩溃 对于#1,这在iOS6上从来都不是问题,不管是什么设备 对于#2,我正在重新使用相同的DIV元素来显示下一张图片,因此上一张图片似乎没有被清除 本文中提到的技术在iOS7中似乎不再有效: 我找到的解决此问题的最佳方案是以下代码: var img = document.getElementById('imageID'); img.pa

我注意到我的Phonegap应用程序在iOS7上出现了一些iOS6上没有出现的内存问题

  • 包含许多图像的长列表
  • 显示手机相册(9mp)中的图像会在您查看多个相册后崩溃
  • 对于#1,这在iOS6上从来都不是问题,不管是什么设备

    对于#2,我正在重新使用相同的DIV元素来显示下一张图片,因此上一张图片似乎没有被清除

    本文中提到的技术在iOS7中似乎不再有效:

    我找到的解决此问题的最佳方案是以下代码:

    var img = document.getElementById('imageID');
    img.parentNode.removeChild(img);
    img.src = 'data:image/gif;base64,' + 
          'R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=';
    setTimeout(function() {
    img = null;
    }, 60000);
    
    这会将src属性设置为一个很小的gif,然后等待足够长的时间,以便最终进行垃圾收集

    见:


    这应该对你有用。我可以通过使用Xcode工具来验证内存是否已释放。不幸的是,这个解决方案似乎不适用于我正在使用的主屏幕应用程序。

    我遇到了类似的问题。我的应用程序在iOS 6上运行良好,现在在iOS 7.0.3中也会崩溃,因为图像内存没有得到正确处理。我正在使用与您的链接中描述的技术类似的技术。你发现了什么新情况吗?您是否已经提交了一个bug?7.0.4遇到了相同的问题。我们使用phonegap+主干+铆钉。我在每个视图的近处都这样做了,这有一点帮助。我也将尝试在铆钉的数据绑定中实现这一点,但这是我所知道的最不可能有帮助的地方。我的问题似乎在iOS 7.0.4中得到了解决。今天还有一个7.1测试版。你的意思是这不适用于ios 7+?上次我检查时没有。你有这个问题吗?