LibAudioPlayer

LibAudioPlayer Github Maven Central

1. 功能简介

基于 SoundPool 封装的音频播放组件,专注于短音效播放。

核心特性:

  • 短音效播放(适合 < 1MB 的音频文件)
  • 支持文件路径和资源 ID
  • 音量和播放速度控制
  • 循环播放支持
  • 简单易用的 API

2. 组件信息

引用仓库

引用仓库可以参考 组件使用 中添加依赖的部分

组件使用

implementation 'com.bihe0832.android:lib-audio-player:+'

3. 组件功能

3.1. AudioPlayerManager

音频播放管理器,基于 SoundPool 封装。

核心功能:

  • 添加并播放音频
  • 支持文件路径和资源 ID
  • 支持设置音量和播放速度
  • 支持循环播放

使用示例:

// 1. 播放资源文件中的音频
AudioPlayerManager.playAudio(context, R.raw.notification_sound)

// 2. 播放本地文件
AudioPlayerManager.playAudio(context, "/sdcard/audio.mp3")

// 3. 设置音量和速度
AudioPlayerManager.playAudio(
    context = context,
    audioPath = "/sdcard/music.mp3",
    volume = 0.8f,   // 音量 0.0-1.0
    rate = 1.5f      // 播放速度 0.5-2.0
)

// 4. 循环播放
AudioPlayerManager.playAudio(
    context = context,
    resId = R.raw.background_music,
    loop = true      // 循环播放
)

// 5. 停止播放
AudioPlayerManager.stop()

// 6. 释放资源
AudioPlayerManager.release()

4. 最佳实践

4.1. 1. 播放短音效

// 适用于通知音、按键音等短音效
AudioPlayerManager.playAudio(context, R.raw.click_sound)

4.2. 2. 背景音乐

// 循环播放背景音乐
AudioPlayerManager.playAudio(
    context = context,
    resId = R.raw.background_music,
    volume = 0.5f,
    loop = true
)

// 停止背景音乐
AudioPlayerManager.stop()

4.3. 3. 资源释放

// Activity/Fragment onDestroy()
override fun onDestroy() {
    super.onDestroy()
    AudioPlayerManager.release()
}

5. 注意事项

  1. SoundPool 限制:适合播放短音效(< 1MB),不适合长音乐
  2. 音频格式:支持 MP3、WAV、OGG 等常见格式
  3. 资源释放:使用完毕后及时调用 release() 释放资源
  4. 音量范围:音量参数范围 0.0-1.0
  5. 播放速度:速度参数范围 0.5-2.0

6. 相关组件

Copyright © zixie all right reserved,powered by Gitbook最后修改: 2025-11-27 16:42:13

results matching ""

    No results matching ""