2013-10-03 11 views
5

Ich merke, dass meine Phonegap-App Speicherprobleme auf iOS7 hat, die nicht auf iOS6 passiert sind.iOS7 Webkit stürzt häufig ab - Speicher wird nicht freigegeben?

  1. lange iScroll Listen mit vielen Bildern
  2. Bilder aus dem Telefon Album (9MP) Anzeigen abstürzen, nachdem Sie

Für 1 # mehrere zu sehen, dies auf iOS6 nie ein Thema war, unabhängig davon, Gerät.

Für # 2 verwende ich das gleiche DIV-Element erneut, um das nächste Bild anzuzeigen, so scheint es, dass das vorherige Bild nicht gelöscht wird.

Die in diesem Beitrag genannten Techniken erscheinen nicht mehr in iOS7 arbeiten: iPad/iPhone browser crashing when loading images in Javascript

+0

Ich habe ein ähnliches Problem. Meine Applikation, die unter iOS 6 lief, stürzt nun auch in iOS 7.0.3 ab, da der Image-Speicher nicht richtig entsorgt wird. Ich verwende eine ähnliche Technik wie in Ihrem Link beschrieben. Hast du etwas Neues darüber herausgefunden? Hast du schon einen Fehler eingereicht? –

Antwort

3

Die beste Lösung für dieses Problem fand ich die folgenden Code:

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

Dieses das src-Attribut legt zu ein winziges gif und wartet dann lange genug, bis die müllsammlung irgendwann passiert.

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

Dies sollte für Sie arbeiten. Ich konnte überprüfen, dass der Speicher freigegeben wird, indem Sie die Xcode-Instrumente verwenden. Leider scheint diese Lösung nicht für Homescreen-Apps zu funktionieren, die ich verwende.

+0

7.0.4 erfährt das gleiche Problem. Wir verwenden Phonegap + Backbone + Nieten. Ich tat dies bei jeder Sicht, es half ein kleines bisschen. Ich werde versuchen, dies auch bei der Datenbindung von Nieten zu implementieren, aber das ist der letzte Ort, den ich kenne, der helfen könnte. – Krym

+0

Meine Probleme scheinen in iOS 7.0.4 behoben zu sein. Es gibt heute auch eine 7.1 Beta. –

+0

meinst du, das ist nicht anwendbar auf ios 7+? – jujule

Verwandte Themen