2011-08-03 15 views
3

私はiPhone開発には初めてです。私はPHPのWebサービスを使用してサーバーからファイルをダウンロードしているiphoneアプリケーションを開発しています。だから私はエンコードされたバイトとして応答を取得していると私は応答をデコードし、iphoneのファイルとして格納しています。Webサービスiphoneから大きなファイルをダウンロードするには?

2 MBまでの小さなサイズのファイルに適しています。しかし、それ以上のファイルでは、ダウンロードとデコードに時間がかかります。

いずれかが

は、Webサービスから大きなファイルをダウンロードするために利用できる任意の迅速な方法があります。..大きなファイルのためにそれを行う方法を教えてください?

答えて

2

ASIHTTPRequestを使用してファイルをダウンロードしてみてください。あなたのダウンロードを速くするかどうかは言えませんが、確かに簡単にするはずです。

+0

感謝を実装..私はこれを試してみて、あなたが知っているだろう... – itdeeps

+0

更新:ASIHTTPRequestを使用しないでください。作者によって現在管理されていません。 –

2

ASIHTTPRequestライブラリを使用することをおすすめします。ファイルの背景をダウンロードするだけで、プログレスバーを有効にしてユーザーに表示することができます。あなたが大規模なファイルをWAN経由でダウンロードするはずではないため、アプリケーションが拒否することがありますので注意してください

(Appleは5分のアクティビティにつき4.5メガバイトを超えないようにアドバイスしています。 [一般] - > [使用方法]メニューを選択して統計情報を消去してから、アプリを5分間実行してこの画面に戻り、統計情報の内容を確認します。

アップル社は、iPhone 3Gの無線ダウンロードの制限をわずか10MBから20MBに静かに倍増しました。これには、すべてのアプリケーション、音楽、ポッドキャスト、およびその他のものが含まれています。 more

+0

返信いただきありがとうございます...アプリの拒否を避けるための最大ダウンロードサイズは? – itdeeps

1
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; 
[request setDownloadDestinationPath:@"/Users/ben/Desktop/my_file.txt"]; 

ASIHTTPRequest

3

NSURLRequest* request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0]; 

を使用して試してみても、デリゲートメソッドをあなたの返信用

1. - (void)connection:(NSURLConnection *)theConnection didReceiveData:(NSData *)incrementalData; 

2. - (void)connection: (NSURLConnection*) connection didReceiveResponse: (NSHTTPURLResponse*) response; 

3. - (void) connection:(NSURLConnection *)connection didSendBodyData:(NSInteger)bytesWritten totalBytesWritten:(NSInteger)totalBytesWritten totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite; 
関連する問題