2016-02-13 82 views
-1

我一直在Android模式下处理草图。我有Minim库问题,所以我决定使用MediaPlayer。 我想要做的事很简单,播放一个mp3文件。使用MediaPlayer处理声音(Android模式)

代码:

import android.media.MediaPlayer; 
import android.media.AudioManager; 
import android.net.Uri; 
MediaPlayer p; 

void setup() 
{ 
    //Uri needed for the create Method 
    Uri u = Uri.parse("m.mp3");//The file is in the data folder 
    p = MediaPlayer.create(this, u); 
    p.start(); 
} 

我知道,在Android的你作出乌里像"R.raw.m" ... 现在,应用程序并不当我运行它,我认为是由于Uri工作。我只是不知道如何使它工作。非常感谢。

回答

0

不确定你想要做什么,但这里是你将如何从Android资产目录中玩。

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); 
    } 
} 

刚刚测试了这个代码,它的工作原理。只要创建资产目录,如果它不存在于你的项目,并把你的.mp3文件。然后用mp3文件名作为参数调用该函数。如果这不是正确的答案,请更具体地说明你想做什么。

另请查看此链接Play notification audio by URI