Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用MediaPlayer(Android模式)在处理过程中播放声音_Java_Android_Uri_Processing - Fatal编程技术网

Java 使用MediaPlayer(Android模式)在处理过程中播放声音

Java 使用MediaPlayer(Android模式)在处理过程中播放声音,java,android,uri,processing,Java,Android,Uri,Processing,我一直在Android模式下制作一个处理草图。我在Minim库中遇到问题,所以我决定使用MediaPlayer。 我想做的很简单,播放一个mp3文件 代码: 我知道在安卓系统中,你会生成一个Uri,比如“R.raw.m”。。。 现在,当我运行应用程序时,它不工作,我认为这是由于Uri造成的。我只是不知道该怎么做。非常感谢 不确定您想做什么,但下面是您将如何在Android中使用assets dir MediaPlayer player; void play(String trackName

我一直在Android模式下制作一个处理草图。我在
Minim
库中遇到问题,所以我决定使用
MediaPlayer
。 我想做的很简单,播放一个
mp3
文件

代码:

我知道在安卓系统中,你会生成一个Uri,比如
“R.raw.m”
。。。
现在,当我运行应用程序时,它不工作,我认为这是由于
Uri
造成的。我只是不知道该怎么做。非常感谢

不确定您想做什么,但下面是您将如何在Android中使用assets dir

 MediaPlayer player;

 void play(String trackName) {
    try {
        AssetFileDescriptor desc = getAssets().openFd(trackName);
        player = new MediaPlayer();
        player.setDataSource(desc.getFileDescriptor(),desc.getStartOffset(),desc.getLength());
        player.prepare();
        player.start();
    }
    catch (Exception e) {
        Log.d("TMS", "Error playing sound: " + trackName);
    }
}
刚刚测试了这段代码,它就工作了。如果项目中不存在assets dir,只需创建它,然后将.mp3文件放在那里。然后以mp3文件名作为参数调用此函数。如果这不是正确的答案,请更具体地说明你想做什么

也请检查此链接

 MediaPlayer player;

 void play(String trackName) {
    try {
        AssetFileDescriptor desc = getAssets().openFd(trackName);
        player = new MediaPlayer();
        player.setDataSource(desc.getFileDescriptor(),desc.getStartOffset(),desc.getLength());
        player.prepare();
        player.start();
    }
    catch (Exception e) {
        Log.d("TMS", "Error playing sound: " + trackName);
    }
}