2015-09-15 2 views
1

Я пытаюсь интегрировать Youtube iframe API на Xbox One, чтобы иметь возможность воспроизводить видео Youtube из приложения, но пока не удалось заставить его работать. Возможно ли это?Youtube API iframe на Xbox One?

Похоже, что приложения для приложений в Windows накладывают множество ограничений по сравнению с веб-приложением (по очень понятным причинам безопасности).

Первой проблемой при переносе веб-приложения является локальный контекст/веб-контекст. Там, кажется, два варианта там:

  1. захватить версию коды Youtube (по крайней мере, та часть, которая загружает библиотеку) и интегрировать его в приложение (таким образом, мы контролируем большую часть кода во время сертификации, но в конечном итоге он может не синхронизироваться с остальной частью веб-кода)
  2. загружает весь код Youtube из Интернета в веб-контексте (помещая YT.player внутри другого iframe), а затем выполняет прокси-сервер в локальном контекст для отправки сообщений в эквивалентный веб-контекст.

Какой метод рекомендуется?

Вторая проблема заключается в том, что IE в приложении загружает видео YouTube во Flash, потому что он жалуется на то, что ActiveX не существует. Я получаю следующую ошибку:

Exception was thrown at line 328, column 376 in 
https://s.ytimg.com/yts/jsbin/www-embed-player-new-vflRnMsMv/www-embed-player-new.js 
0x800a1391 - JavaScript runtime error: 'ActiveXObject' is undefined 

Есть ли способ заставить приложение загружать видео в HTML5 вместо вспышки? Я попытался установить html5 = 1 в playerVars, как в следующем коде (как это было предложено в http://jsfiddle.net/rocha/eMAU5/), но это не помогло:

player = new YT.Player('player', { 
     height: '390', 
     width: '640', 
     videoId: 'OEoXaMPEzfM', 
     playerVars: { 
      html5: 1, 
     } 

Или, может быть, я не правильно интерпретировать причину загрузки этого ActiveX? Я знаю, что ActiveX деактивируется в приложениях для хранения окон (и приложений X1). Во всяком случае, как я могу сделать эту работу (если вообще возможно)?

Спасибо

ответ

1

Это не поддерживается. ActiveX не поддерживается в приложениях ADK, но загрузка в удаленном коде против XR-010. Я предлагаю запускать браузер с URL видео на YouTube с помощью Launcher.LaunchUriAsync:

// The URI to launch 
var uriToLaunch = "https://www.youtube.com/user/xbox"; 

// Create a Uri object from a URI string 
var uri = new Windows.Foundation.Uri(uriToLaunch); 

// Launch the URI 
Windows.System.Launcher.launchUriAsync(uri).then( 
    function (success) { 
     if (success) { 
      // URI launched 
     } else { 
      // URI launch failed 
     } 
    }); 

Наконец, пожалуйста, оставьте свои Xbox конкретные вопросы на соответствующих форумах Xbox. Я буду рад ответить на них там и более подробно. Информация, защищенная программой NDA, не должна обсуждаться на открытом форуме.

Смежные вопросы