Frage

ich brauche große Datenmengen (Bilddateien) durch die Post in einem WebView zu senden, so dass ich NSMutableURLRequest mit setHTTPBody: bin mit.

. Problem: wenn die Datengröße mehr als etwa 3 MB ist die App plötzlich beginnt riesige Mengen an Speicher zu essen und bekommt Hund langsam mit allen Funkruf

Ich habe schon versucht, diese zu ändern:

[request setHTTPBody:[NSData dataWithBytes:post.Get() length:post.Size()]];

.. folgt aus:

[request setHTTPBodyStream:[NSInputStream inputStreamWithData:
    [NSData dataWithBytes:post.Get() length:post.Size()]]];

.. aber dann scheint nichts zu passieren und die Anfrage einfach mal aus. Ich erhalte keine der normalen Callbacks (wie WebViewProgressEstimateChangedNotification) und die Daten scheinen nicht Satz zu erhalten.

So, wie ich (a) mache den NSData Ansatz keinen Speicher Schwein oder (b) sein, um den Strom Ansatz Arbeit (vorausgesetzt, es ist eine gute Abhilfe)?

War es hilfreich?

Lösung

endete ich es zu lösen, indem NSURLConnection mit dem Upload manuell zu tun, und dann das Ergebnis in die WebView Fütterung. Als Bonus erhalte ich viel besser Upload-Fortschritt aktualisiert diese Art und Weise.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top