Поделиться через


Как открывать локальные файлы мультимедиа с помощью элемента управления FileOpenPicker (HTML)

[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. В случае разработки приложений для Windows 10 см. раздел последняя документация]

Воспроизводите звуковые или видеофайлы на компьютере пользователя, используя FileOpenPicker для получения доступа к файлу и его открытия.

Инструкции

В приложении Магазина Windows на JavaScript вы можете реализовать воспроизведение звука и видео с помощью HTML5 Audio и элементов мультимедиа Video. Звуковой или видеофайл задается как URL-адрес в атрибуте src.

Такой же подход применим и для воспроизведения файлов мультимедиа, расположенных на компьютере пользователя. Единственная разница в том, что необходимо создать URL-адрес для локального файла:

  1. Вызовите метод FileOpenPicker, чтобы выбрать файл мультимедиа.
  2. Вызовите метод URL.createObjectURL, чтобы создать объект URL-адреса для файла мультимедиа.
  3. Присвойте атрибуту src элемента мультимедиа значение, равное объекту URL-адреса.
  4. Вызовите метод play элемента мультимедиа, чтобы запустить воспроизведение.

Возможности

FileOpenPicker не требует специальных возможностей для доступа к файлам в локальной файловой системе, таким как папки Music или Видео пользователя, поскольку пользователь может полностью контролировать, к какому файлу выполняется доступ. С точки зрения безопасности и конфиденциальности лучше свести к минимуму число возможностей, используемых приложением.

Но если приложению нужен доступ без взаимодействия с пользователем к папкам Music или Видео (например, если вы перечисляете все файлы музыки и видео в коллекции пользователя и отображаете их в своем приложении), то необходимо декларировать возможности Music Library и библиотеки видеозаписей. Подробнее: Объявления возможностей приложения.

Пример

В следующем примере используется FileOpenPicker для получения и воспроизведения файла мультимедиа из видеозаписей пользователя.

Приложения Магазина Windows Phone должны использовать pickSingleFileAndContinue.

function playVideo() {
    var openPicker = new Windows.Storage.Pickers.FileOpenPicker();
    openPicker.pickSingleFileAsync().then(function (fileItem) {
        if (fileItem) {
            var video = document.getElementById("myVideo");
            video.src = URL.createObjectURL(fileItem);
            video.play();
        }
    });
}

Связанные разделы

Образец воспроизведения мультимедиа

Video

Audio