android - 用动态文件填充MediaPlayer

标签 android audio

美好的一天,
我有一个小应用程序,它有一个按钮。
每当我按下按钮时,都会使用MediaPlayer发出声音。
问题是我找不到如何使同一媒体播放器播放其他声音,

例如:
我有10种声音的列表,每当我单击我的按钮时,它都会随机选择1到10之间的数字,然后获取相应的声音,其中随机生成的数字是列表中的位置并播放它。

问题是,在粗体区域应该向我的MediaPlayer提供什么?
MediaPlayer mpfn = MediaPlayer.create(getActivity(), R.raw.number1 );

我是android的新手,如果您的问题伤害了您的感情,请提前抱歉。
提前致谢。

最佳答案

假设媒体文件存储在原始文件夹中,则可以通过以下方式随机播放歌曲:

首先使用Math.random()生成随机数。然后以这种方式播放相应的音乐:

    Random ran = new Random();
    int x = ran.nextInt(3);
    if(x==0)
    {
        mPlayer = MediaPlayer.create(this,R.raw.fst);
    }
    else if(x==1)
    {
        mPlayer = MediaPlayer.create(this,R.raw.sec);
    }
    else if(x==2)
    {
        mPlayer = MediaPlayer.create(this,R.raw.thd);
    }
    length = 0;
    try{mPlayer.prepare();}catch (Exception e){}

这显示了如何从3个媒体文件中随机播放,10个文件的处理没有什么不同。准备就绪后,您可以使用mPlayer.start();播放它

关于android - 用动态文件填充MediaPlayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41778503/

相关文章:

android - ViewModel 中的 ObservableField 值不会使用数据绑定(bind)更新 UI

java - 如何在 Android 上选中复选框时将项目添加到 List<Integer> 中

ios - 通过套接字连接在iOS上播放音频

c# - 使用 C#、DirectX 和 XNA 播放音频和最终用户的要求

javascript - 如何在 python 中处理 JavaScript blob?

android - 无法运行安卓应用

android - 尝试使用 Window.FEATURE_CUSTOM_TITLE 但得到 Exception :You cannot combine custom titles with other title feature. 。

android - 通过 UDP 数据包延迟提交音频

node.js - 提取音频文件元数据,而无需使用fileStream在nodejs中上传

android - 如何将 Android 的导航架构组件与 Bazel 一起使用?