iOS应用中的YouTube iframe速度太慢

时间:2015-10-10 09:39:43

标签: ios objective-c youtube youtube-api ytplayerview

我在iOS应用程序中使用YouTube API,问题是它在我的iPhone上加载速度非常慢,但在iOS模拟器上运行得非常好。

我在不同的网络和不同的iPhone上尝试过它,它总是一样的。在每个网络模拟器上工作得更好。

我正在使用YTPlayerView-iframe-player.htmlYTPlayerView

所以,问题是我可以做任何事情来加快它的速度,还是可以在加载后开始播放歌曲?

2 个答案:

答案 0 :(得分:2)

无法加速您的网络。您可以做两件事来改善用户体验:隐藏播放器直到视频加载,并尽快开始播放视频(自动播放)。

将自动播放键添加到您的playervars字典:

NSDictionary *playerVars = @{
                             @"playsinline" : @1,
                             @"autoplay" : @1, // <- here
                             @"showinfo" : @0,
                             @"rel" : @0,
                             @"modestbranding" : @1,
                             };

[self.playerView loadWithVideoId:videoId playerVars:playerVars];

// hide the player view until it is ready
self.playerView.hidden = YES;

准备好后取消隐藏播放器:

// unhide and play
- (void)playerViewDidBecomeReady:(YTPlayerView *)playerView { 
    self.playerView.hidden = NO;
}

- (void)playerView:(YTPlayerView *)playerView didChangeToState:(YTPlayerState)state {
    if (state == kYTPlayerStatePlaying) {
        self.playerView.hidden = NO;
    }
}

答案 1 :(得分:1)

切换为使用WKWebView而不是旧的UIWebView。因为WKWebView支持本机Safari Turbo JavaScript渲染引擎,我认为这会使你的iframe运行得更快。