У меня проблема с YouTube (всегда загружается).Youtube YouTubePlayerSupportFragment не работает правильно (загрузка всегда?)
Очевидно, что работает правильно «но только в первый раз», я хочу сказать, что первый экземпляр (первый запуск) работает правильно и правильно загружается горизонтально и вертикально, но когда фрагмент изменения ->fragmentManager.beginTransaction()
в моей MainActivity (у меня есть функция на всех фрагменты вызывает этот метод beginTransaction
), и после того, как я иду -> BeginTransaction YouTube -> видео-ролика всегда нагрузка:
Пример:
Шаг 1
Первый раз -> MainActivity -> beginTransacti на YouTube -> нажмите - -> Load правильно
Шаг 2
Второй раз -> MainActivity -> BeginTransaction YouTube -> нажмите - -> Load всегда
Закрыть App (Меню) и повторите шаги 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" >
Я перехожу к мероприятию http://javatechig.com/android/youtubeplayerview-example-in-android-using-youtube-api, но horitzontal не работает –
Я так же поступаю с сегодняшнего дня –