Too*_*fan 5 video android onerror android-youtube-api
我正在尝试构建一个播放视频列表的应用.它是基于API样本的非常基本的实现.
使用player.loadVideos方法加载播放列表(video_ids数组).使用实现来跟踪玩家状态的变化PlayerStateChangeListener.
一切都很好,视频背靠背(如预期的那样).
当播放视频时出现错误(例如YouTubePlayer.ErrorReason.NOT_PLAYABLE)时,会以onError方法的形式捕获PlayerStateChangeListener,我player.next()会在那里调用以继续播放下一个视频.
但是,player.next在出现错误后不起作用 - 基本上一旦出现错误,我就无法跳过该视频并播放在播放列表中排队的下一个视频.
当 YouTubePlayer 播放播放列表时发生播放器错误时,调用 next() 不起作用。我相信这是因为 YouTubePlayer 中的错误是不可恢复的。解决方案是使用下一个播放列表索引重新加载播放列表。
因此,要跟踪当前的播放列表索引,
@Override // YouTubePlayer.PlaylistEventListener
public void onPrevious()
{
mPlaylistIndex--;
}
@Override // YouTubePlayer.PlaylistEventListener
public void onNext()
{
mPlaylistIndex++;
}
Run Code Online (Sandbox Code Playgroud)
然后,在 onError() 中,
@Override // YouTubePlayer.PlayerStateChangeListener
public void onError(YouTubePlayer.ErrorReason errorReason)
{
Log.d(TAG, "YouTubePlayer error: " + errorReason);
// Check if the mContentId is of kind video or playlist,
// if video, there is nothing you can do, end playback.
// Check if the mPlaylistIndex is the last video in playlist,
// if so, there is nothing you can do, end playback.
mPlaylistIndex++;
mYouTubePlayer.loadPlaylist(mContentId, mPlaylistIndex, 0);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
875 次 |
| 最近记录: |