NSURLConnection ilerleme elde yardımcı

1 Cevap php

Uygulama sunucusu tarafından oluşturulan bir dosya (Plist) indiriyor. Sunucu dosyası oluşturmak için çoooook zaman alır, bu yüzden ilerleme göstermek mümkün olmak istiyorum (muhtemelen UIProgressView görmek, ama bu önemli değil).

Ben indiriyorum dosya isteğin başında henüz oluşturulmadı yana, biz expectedContentLength bilmiyorum. Ancak, [PHP] komut kendisinden ilerleme güncelleştirmelerini sağlamak için araçlara sahip. Ben bir tarayıcıda gayet güzel çalışıyor ki, bunu yapmak için dosyadaki her satır için ob_flush() kullanıyorum.

Ben app istek yaptığınızda o kadar kullanım değil yani komut, yürütme bittikten sonra, ben sadece connection:didReceiveData: bir çağrı alıyorum.

So my question boils down to this:
How can I tap into the progress of such a php script from my app?

Ben gerçek dosyayı indirmek için başka bir zaman bunu yaparken güncelleştirmeleri dosyası oluşturur ve sağladığı birinci, ve, sunucu 2 istekleri gönderme sakıncası olmaz.

Istek tamamlanıncaya kadar benim NSURLConnection delege yöntemlerin hiçbiri denir ediliyor beri, benim senaryom bu yöntemleri tetiklemek için ne gerekiyor?

1 Cevap

Senin sorunun sunucu üzerinde en çok muhtemeldir. Bu işlenir gibi sunucu veri gönderiyor ve bu işlem zaman önemli miktarda alır, muhtemelen connection:didReceiveData: birden fazla bildirim almalısınız.

There is some discussion that might be relevant in the PHP manual. http://php.net/manual/en/function.ob-flush.php

Ben beklediğiniz gibi sunucu aslında artan verileri gönderen bir paket çözümleyicisi kullanarak doğrulamak olacaktır.