タブの1つでライブテレビチャンネルをストリーミングしているアプリがあります。私はMPMoviePlayerViewController
を使用しています。私は自分のヘッダファイルに私のMPMoviePlayerViewController
を宣言し、それを私の実装ファイルに合成しました。数秒後にMPMoviePlayerViewControllerが停止する
- (void)viewDidAppear:(BOOL)animated
{
NSURL *movieURL = [[NSURL alloc]initWithString:@"http://mysuperURL"];
moviePlayerController = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];
[self checkIt];
}
そして、私のcheckIt機能
- (void) checkIt {
if ([[moviePlayerController moviePlayer] loadState] == MPMovieLoadStateUnknown) { // before you wreck yourself
[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(checkIt) userInfo:nil repeats:NO];
} else {
[moviePlayerController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[self presentModalViewController:moviePlayerController animated:YES];
}
}
ビデオが2秒後にフリーズするとアプリが応答を停止しかし:
は、ここに私のviewDidAppearです。
? – Maulik
なぜ[NSTimer scheduledTimerWithTimeInterval:0.1ターゲット:セルフセレクタ:@selector(checkIt)userInfo:nil repeats:NO];? – iMOBDEV
checkitメソッドは、ムービーが再生可能な状態にあるかどうかを制御します。ムービーが再生可能な状態にない場合は、1秒(nstimer)待機し、再度checkitメソッドを呼び出します。 –