如何直接播放 res/raw 文件夹中的音频文件?
我在 res/raw
文件夹中有多个音频文件。我显示包含音频文件名的 ListView
。我想在用户选择ListView
时播放相应的音频文件。我已经使用了setDataSource(path)
,但在播放时显示错误。如何直接播放该文件夹中的音频文件?或者还有其他办法吗?
I have multiple audio files in res/raw
folder. I showing ListView
that contains audio files name. I want to play the corresponding audio file when user select into the ListView
. I have used setDataSource(path)
, but it showing error while playing. How play the audio files directly from that folder? Or Is there any other way?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
在 onItemClickListener 中添加此代码。
add this code in onItemClickListener.
尝试从原始播放::
清单文件中的权限::
更新::
try this for playing from raw ::
permission in manifest file ::
Update::
将音频文件放在 res/raw 文件夹中,并从 MediaPlayer 的 create 方法中调用它。
MediaPlayer.create(this, R.raw.audio_file_name).start();
例如:
Place your audio file in the res/raw folder and call it from the create method of MediaPlayer.
MediaPlayer.create(this, R.raw.audio_file_name).start();
Eg:
要播放原始文件夹中的音频,请调用此方法。就我而言,我的文件名是 notificaion.mp3:
这是 AudioPlayer 类:
To play audio from the raw folder call this method. In my case my file name was notificaion.mp3:
Here is the AudioPlayer class:
在 onItemClickListener 中添加此代码,还有一个信息是您无法播放 mp3 以外的任何文件,并且 mp3 文件必须是原始扩展名文件。
add this code in onItemClickListener and one more information is you can't play any file other than mp3 and the mp3 file must be the original extension as file.