我在iOS应用程序中使用YouTube API,问题是它在我的iPhone上加载速度非常慢,但在iOS模拟器上运行得非常好。
我在不同的网络和不同的iPhone上尝试过它,它总是一样的。在每个网络模拟器上工作得更好。
我正在使用YTPlayerView-iframe-player.html
和YTPlayerView
。
所以,问题是我可以做任何事情来加快它的速度,还是可以在加载后开始播放歌曲?
答案 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运行得更快。