gpt4 book ai didi

android - Youtube YouTubePlayerSupportFragment 无法正常工作(总是加载?)

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:37:33 25 4
gpt4 key购买 nike

我在使用 YouTube 时遇到问题(总是加载)。

显然“但只是第一次”正常工作,我想说,第一个实例(第一次运行)正常工作并正确地水平和垂直加载,但是当更改 fragment 时 -> fragmentManager.beginTransaction() 在我的 MainActivity 中(我在所有 fragment 上都有调用此方法到 beginTransaction 的函数),在我转到 -> beginTransaction YouTube -> 视频总是加载:

例子:

第一步

第一次->MainActivity->beginTransaction YouTube->点击->加载正确

第 2 步

第二次->MainActivity->beginTransaction YouTube->点击->始终加载

关闭应用程序(菜单)并重复步骤 1 和 2。

这是我的代码:

public void youtube(){

youTubePlayerFragment = YouTubePlayerSupportFragment.newInstance();

youTubePlayerFragment.initialize(API_KEY, new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean wasRestored) {
if (!wasRestored) {
youTubePlayer.cueVideo(VIDEO_ID);
youTubePlayers=youTubePlayer;
}
// Toast.makeText(getActivity(), "1", Toast.LENGTH_SHORT).show();
youTubePlayer.setOnFullscreenListener(new YouTubePlayer.OnFullscreenListener() {
@Override
public void onFullscreen(boolean b) {
if(b){
//Toast.makeText(getActivity(), "1", Toast.LENGTH_SHORT).show();
MainActivity.isYoutubeReadyHoritzontal=true;
knowIfPortraitAndBackManyally=0;
}else {
//Toast.makeText(getActivity(), "2", Toast.LENGTH_SHORT).show();
getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
knowIfPortraitAndBackManyally=1;
MainActivity.countIFexit=0;
//MainActivity.isYoutubeReadyHoritzontal=false;
}
}
});
}

@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult errorReason) {
if (errorReason.isUserRecoverableError()) {
errorReason.getErrorDialog(getActivity(), RECOVERY_DIALOG_REQUEST).show();
} else {
String errorMessage = String.format("YouTube Error (%1$s)",
errorReason.toString());
Toast.makeText(getActivity(), errorMessage, Toast.LENGTH_LONG).show();
}
}

});


android.support.v4.app.FragmentManager fragmentManager = getChildFragmentManager();
fragmentManager.beginTransaction().replace(R.id.youtube_fragment,youTubePlayerFragment).commit();
MainActivity.isYoutubeReadyHoritzontal=true;

}

XML

<FrameLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="fill_parent"

android:id="@+id/youtube_fragment" >

最佳答案

我有同样的问题,这是由于未能正确处理以前的播放器实例引起的。确保在不再需要时调用 youTubePlayer.release()

关于android - Youtube YouTubePlayerSupportFragment 无法正常工作(总是加载?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32966683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com