HarmonyOS鸿蒙Next中使用AVPlayer播放音频,如何动态切换音频地址,而不用销毁重建

发布于 1周前 作者 itying888 来自 鸿蒙OS

HarmonyOS鸿蒙Next中使用AVPlayer播放音频,如何动态切换音频地址,而不用销毁重建 使用AVPlayer播放音频,如何动态切换音频地址,而不用销毁重建

4 回复

可以调用reset()重置资源,AVPlayer重新进入idle状态,允许更换资源url,参考文档:

https://developer.huawei.com/consumer/cn/blog/topic/03143745687777068

完整音乐播放案例参考示例:

https://gitee.com/harmonyos/codelabs/tree/master/MusicPlay

https://gitee.com/harmonyos/codelabs/tree/master/MultiDeviceMusic

更多关于HarmonyOS鸿蒙Next中使用AVPlayer播放音频,如何动态切换音频地址,而不用销毁重建的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


执行这两个切换不了歌曲

this.avPlayer.reset(); this.avPlayer.url = url;,

在HarmonyOS鸿蒙Next中,使用AVPlayer播放音频时,可以通过setSource方法动态切换音频地址,而不需要销毁重建AVPlayer实例。具体步骤如下:

  1. 初始化AVPlayer实例:

    let avPlayer = new media.AVPlayer();
  2. 设置初始音频源:

    avPlayer.setSource({
        uri: '初始音频地址'
    });
  3. 当需要切换音频地址时,直接调用setSource方法更新音频源:

    avPlayer.setSource({
        uri: '新的音频地址'
    });
  4. 如果需要从新的位置开始播放,可以调用play方法:

    avPlayer.play();

通过这种方式,可以在不销毁AVPlayer实例的情况下,动态切换音频地址,并继续播放。

在HarmonyOS鸿蒙Next中,使用AVPlayer动态切换音频地址而不销毁重建,可以通过调用setSource方法来实现。具体步骤如下:

  1. 创建AVPlayer实例:首先创建一个AVPlayer对象。
  2. 设置初始音频源:使用setSource方法设置初始音频源。
  3. 动态切换音频源:在需要切换音频时,再次调用setSource方法,传入新的音频地址。
  4. 播放音频:调用play方法开始播放新的音频源。

示例代码:

AVPlayer avPlayer = new AVPlayer();
avPlayer.setSource(new AVSource("初始音频地址"));
avPlayer.play();

// 动态切换音频
avPlayer.setSource(new AVSource("新音频地址"));
avPlayer.play();
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!