HarmonyOS鸿蒙Next中获取到本地文件夹中的视频文件后,如何调用系统的播放器进行播放?

HarmonyOS鸿蒙Next中获取到本地文件夹中的视频文件后,如何调用系统的播放器进行播放? 需要跳出应用,跳转到系统播放器进行播放

3 回复

建议使用组件(Video)或者媒体(AVPlayer)进行播放读取的视频文件。

更多关于HarmonyOS鸿蒙Next中获取到本地文件夹中的视频文件后,如何调用系统的播放器进行播放?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,获取到本地文件夹中的视频文件后,可以通过AVPlayer类来调用系统的播放器进行播放。首先,使用File类获取视频文件的路径,然后通过AVPlayersetSource方法设置视频源,最后调用prepareplay方法开始播放。

示例代码如下:

import media from '@ohos.multimedia.media';
import fileio from '@ohos.fileio';

// 获取视频文件路径
let filePath = '/storage/emulated/0/Download/sample.mp4';

// 创建AVPlayer实例
let avPlayer = media.createAVPlayer();

// 设置视频源
avPlayer.setSource({ filePath: filePath });

// 准备播放
avPlayer.prepare((err) => {
    if (err) {
        console.error('Prepare failed:' + err.message);
    } else {
        console.log('Prepare success');
        // 开始播放
        avPlayer.play();
    }
});

这段代码首先导入了mediafileio模块,然后获取视频文件的路径,创建AVPlayer实例,设置视频源,并在准备完成后开始播放视频。

在HarmonyOS鸿蒙Next中,获取到本地文件夹中的视频文件后,可以通过Intent调用系统的播放器进行播放。首先,使用File类获取视频文件的URI,然后创建一个Intent对象,设置ActionIntent.ACTION_VIEW,并通过setDataAndType方法指定文件的URI和MIME类型。最后,调用startActivity启动系统播放器。示例代码如下:

File videoFile = new File("/path/to/your/video.mp4");
Uri videoUri = Uri.fromFile(videoFile);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(videoUri, "video/mp4");
startActivity(intent);

确保在config.json中声明了相应的权限,如ohos.permission.READ_MEDIA

回到顶部