我对 iOS 开发很陌生,所以不知道这是否是一个已知问题,或者我为什么会看到这个问题。我的应用程序中有一个屏幕,可以一遍又一遍地播放视频。在上一个屏幕上,用户通过按下不同的按钮来选择哪个视频,这些按钮设置处理播放视频的屏幕的视图控制器的 videoURL 属性。这就是 viewDidLoad 方法的样子:
- (void)viewDidLoad
{
[super viewDidLoad];
player = [[MPMoviePlayerController alloc] initWithContentURL: self.videoURL];
player.repeatMode=MPMovieRepeatModeOne;
player.controlStyle =MPMovieControlStyleNone;
[player prepareToPlay];
[player.view setFrame: self.videoView.bounds]; // player's frame must match parent's
[self.videoView addSubview: player.view];
[player play];
}
这在模拟器中效果很好。视频按预期循环播放。但是一旦我将它部署在某些硬件上,它就不会循环播放,只播放一次。我在两款不同的 iPhone 4 上试用过,一款是 iOS 6.1.3,另一款是 iOS 7.0.3。
任何想法为什么我会看到这种行为?
编辑: 我注意到这段代码在 iPhone5 硬件上按预期工作,但在 iPhone4 硬件上却没有。无法在 iPhone4S 或任何新的 5s 或 5c 上进行测试。