如何使用 FileOpenPicker 控件打开本地媒体文件 (HTML)

[ 本文适用于编写 Windows 运行时应用的 Windows 8.x 和 Windows Phone 8.x 开发人员。如果你要针对 Windows 10 进行开发,请参阅 最新文档 ]

使用 FileOpenPicker 播放用户计算机上的音频或视频文件,以访问并打开这些文件。

说明

在采用 JavaScript 的 Windows 应用商店应用中,你可以通过使用 HTML5 AudioVideo 媒体元素实现音频和视频播放。在 src 属性中,音频或视频文件被指定为 URL。

相同的方法可用于播放用户电脑上的媒体文件。唯一的不同是你需要为本地文件创建 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