我正试图找出一个只出现在iPhone5上的问题,这个问题与播放视频的AVPlayer有关。问题是,除了5s 64bit型号外,电影将在我测试过的所有设备上播放。
我的理论是它与64位有关,但我无法将它与任何东西联系起来。我发现另一个stackoverflow帖子涉及一个类似的问题,修复与使用autolayout绑定。但是,我没有使用autolayout。
此代码在5s之前一直很好用:
-(void)viewWillAppear:(BOOL)animated
{
self.player = [[AVPlayer alloc] initWithURL:[NSURL URLWithString:@"http://www.somemovieurlhere.mp4"]];
AVPlayerLayer *playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
playerLayer.frame = self.view.bounds;
playerLayer.backgroundColor = [UIColor orangeColor].CGColor;
[self.view.layer addSublayer:playerLayer];
[self.player play];
}
我知道添加了图层,因为如果你设置它在视图中显示的背景颜色,但是没有电影可以播放。在我的项目中,我可以通过注销“currentTime”属性来判断电影正在播放:
float time = CMTimeGetSeconds([player currentTime]);
这是iphone4s中的电影图像以及我在iphone5s中看到的内容。我也用原装iphone5进行了测试,效果很好。
关于可能导致此问题的任何想法?提前感谢您的帮助。
答案 0 :(得分:0)
看起来Apple的最新更新7.0.4解决了这个问题。他们的更新今天刚刚公布。
谢谢!