Подтвердить что ты не робот

Можно ли отключить полный экран для youtube api в android?

Как говорится в заголовке: возможно ли отключить полный экран с помощью API Youtube в Android?

У меня есть приложение с фрагментами, и внутри этих фрагментов у меня есть макет рамки, в который я добавляю YouTubePlayerSupportFragment. Но когда я нажимаю полный экран, это исключение вызывается:

java.lang.RuntimeException: не удается запустить Activity ComponentInfo {com.example.xxx/com.example.xxx.MainActivity}: java.lang.IllegalArgumentException: для id 0x7f040039 (com.example.xxx:id/frame_youtube) для фрагмента YouTubePlayerSupportFragment {4282a068 # 11 id = 0x7f040039}

4b9b3361

Ответ 1

Я столкнулся с той же проблемой и нашел способ справиться с этим, что сработало для меня. В OnInitializedListener() для фрагмента я делаю это:

@Override
public void onInitializationSuccess(Provider arg0,
final YouTubePlayer player, boolean arg2) {
//Tell the player you want to control the fullscreen change
player.setFullscreenControlFlags(YouTubePlayer.FULLSCREEN_FLAG_CUSTOM_LAYOUT);
//Tell the player how to control the change
player.setOnFullscreenListener(new OnFullscreenListener(){
@Override
public void onFullscreen(boolean arg0) {                    
// do full screen stuff here, or don't. I started a YouTubeStandalonePlayer 
// to go to full screen
}});

}});

И у меня все еще есть ошибка, так как я использовал YouTubeStandalonePlayer для обработки моего полноэкранного режима, поэтому я решил, что, позвонив

finish(); 

в моей OnPause() для активности. Просто помните, что вы не вернетесь туда, где вы остановились, если ваш пользователь нажимает кнопку "Назад". Вы также можете отправить пользователя в приложение YouTube с намерением, это не требовало finish() в OnPause, когда я его тестировал, но не соответствовал моим потребностям, а также автономному игроку.

Изменить: Если вы хотите удалить полноэкранную кнопку, вы также можете просто установить стиль плеера следующим образом:

PlayerStyle style = PlayerStyle.MINIMAL;
player.setPlayerStyle(style);

Ответ 2

Или вы можете просто отключить его по 1 строке:

player.setShowFullscreenButton(false);