ASIHttpRequest を使用してビデオ ファイルをダウンロードしています。ダウンロードの完了後、ダウンロードしたファイルを宛先パスに取得できます。しかし、私の要件として、現在ダウンロードされているビデオを を使用して再生したいのですが、現在ダウンロードされているバイトを で再生するフォーマットMPMoviePlayerController
で取得するにはどうすればよいですか?NSData
MPMoviePlayerController
つまり、ビデオが 200 MB で、既に 50 MB をダウンロードしている場合、残りのビデオをダウンロードしている間に 50 MB のビデオを再生することもできます。
ファイルをダウンロードする私のコードは次のとおりです。
NSURL *url = [NSURL URLWithString:urlString];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request setTag:tag];
[request setTimeOutSeconds:60.f];
[request setShowAccurateProgress:YES];
[request setDownloadProgressDelegate:progressView];
[request setDidFinishSelector:@selector(requestFinished:)];
[request setDidFailSelector:@selector(requestFailed:)];
// These delgates won't working
// [request setDidReceiveResponseHeadersSelector:<#(SEL)#>]
// [request setDidStartSelector:<#(SEL)#>]
[request setDownloadDestinationPath:downloadPath];
[request setAllowResumeForFileDownloads:YES];
[request setShouldContinueWhenAppEntersBackground:YES];
[request startAsynchronous];
//this will not call because I set UIProgressView to show downloading progress, to call it I need to set `self`
-(void)request:(ASIHTTPRequest *)request didReceiveBytes:(long long)bytes
運が良ければ?他の解決策は?