java - Android 应用:另一个 youtube 网址不加载视频
问题描述
当我第一次调用此方法时,我会加载 youtube 视频。但是当我第二次调用该方法时,我的旧 youtube 视频仍然存在。看起来它没有再次初始化。
private void showRoomInformations(final RoomDTO room){
//Verify if the number of connections is the same
if (room != null){
YouTubePlayer.OnInitializedListener mOnInitializedListener;
YouTubePlayer.PlayerStateChangeListener mPlayerStateChangeListener;
YouTubePlayerView mYouTubePlayerView;
mRoomDTO = room;
TextView roomDescription = (TextView) ((Activity)mContext).findViewById(R.id.textDescription);
TextView textRoomName = (TextView) ((Activity)mContext).findViewById(R.id.textRoomName);
mYouTubePlayerView = (YouTubePlayerView) ((Activity)mContext).findViewById(R.id.view_youtube);
textRoomName.setText(room.getName());
roomDescription.setText(room.getDescription());
mOnInitializedListener = new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
Log.d(TAG, "onClick: Done initializing.");
youTubePlayer.cueVideo(getYouTubeUrl(room.getMedia()));
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
Log.d(TAG, "onClick: Failed to initialize.");
}
};
mYouTubePlayerView.initialize(YouTubeConfig.getApiKey(), mOnInitializedListener);
}
}
private String getYouTubeUrl(String youTubeUrl){
return youTubeUrl.replace("https://youtu.be/", "");
}
你能告诉我我做错了什么吗?如何再次初始化 YouTubePlayer?
解决方案
您只需初始化播放器一次。之后,您应该使用YouTubePlayer.loadVideo()
or YouTubePlayer.cueVideo()
。
推荐阅读
- xml - Extract delimited data
- jasmine - 如何使用 jasmine-protractor 自动化 amcharts?
- xcode - 拖动 NSSegmentedControl 时文本混乱
- c# - C#如何获得具有多个级别的Json计数
- netbeans - 在 Netbeans 中登录
- sql - 在查询中使用 NVL 优于 OR 的优势
- java - Android Java 应为 BEGIN_ARRAY,但在第 1 行第 11 列路径 $.total 为 BEGIN_OBJECT
- c++ - Compiler Explorer (godbolt) 如何安全运行代码?
- c - 内存不足杀
- nuxt.js - 如何在 Nuxt.js 上使用自定义域设置 Auth0