简体   繁体   中英

iOS7 webkit crashes frequently - not freeing up memory?

I'm noticing my Phonegap app is having some memory issues on iOS7 that weren't happening on iOS6 .

  1. long iScroll lists with many images
  2. displaying images from the phone's album (9mp) will crash after you view several

For #1, this was never an issue on iOS6, regardless of device.

For #2, I am re-using the same DIV element to display the next picture, so it seems that the previous image is not being cleared.

The techniques mentioned in this post no longer appear to work in iOS7: iPad/iPhone browser crashing when loading images in Javascript

The best solution for this problem I found is the following code:

var img = document.getElementById('imageID');
img.parentNode.removeChild(img);
img.src = 'data:image/gif;base64,' + 
      'R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=';
setTimeout(function() {
img = null;
}, 60000);

This sets the src attribute to a tiny gif and then waits long enough for garbage collection to happen eventually.

See: http://www.fngtps.com/2010/mobile-safari-image-resource-limit-workaround/

This should work for you. I could verify that the memory is released by using the Xcode instruments. Unfortunately this solution doesn't seem to work for homescreen apps which I am using.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM