我是Kotlin的新手,正在尝试制作一个简单的音频管理器(包装MediaPlayer)。
我想要这个类来播放音频。
这是我的类:
package com.example.myappname
import android.media.MediaPlayer
interface AudioManagerInput {
fun startSound()
fun stopSound()
}
class AudioManager: AudioManagerInput {
// Instance variables
private var mediaPlayer: MediaPlayer? = null
// AudioManagerInput methods
override fun startSound() {
if (mediaPlayer == null) {
mediaPlayer = MediaPlayer()
mediaPlayer?.setDataSource("R.raw.songone") // ???
}
mediaPlayer?.start()
}
override fun stopSound() {
mediaPlayer?.stop()
}
}
我遇到了设置歌曲的问题。
我想要加载一个本地文件 R.raw.songone
,它是一个位于 res/raw
目录下的 .wav 文件。
如何获取一个字符串到它的路径?
我查阅了一些教程,其中提供了使用 MediaPlayer 的其他解决方案,但我遇到了一些问题,比如不知道要导入什么,无法调用 create
方法,或者找不到 context
(不知道这是什么)。