我有一个我想要的应用程序,一旦开始,就会播放一些背景音乐(opa gangam风格!)(来自SD卡)。我使用代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MediaPlayer mp = new MediaPlayer();
String filePath = Environment.getExternalStorageDirectory().getPath() + "/mymusic/gangamstyle.mp3";
try {
mp.setDataSource(filePath);
} catch (IOException e) {
e.printStackTrace();
}
try {
mp.prepare();
} catch (IOException e) {
e.printStackTrace();
}
mp.start();
但是当我测试它时,没有播放音乐。我看到一切都很好。我该怎么办?非常感谢
答案 0 :(得分:1)
您必须使用setOnPreparedListener才能知道媒体播放器何时可以播放:
MediaPlayer player = new MediaPlayer();
player.setDataSource(filePath);
player.setVolume(100, 100);
player.setLooping(false);
player.setOnPreparedListener(new OnPreparedListener()
{
@Override
public void onPrepared(MediaPlayer mp)
{
mp.start();
}
});
player.prepare();
答案 1 :(得分:0)
您的文件路径中存在一些问题。当文件路径不正确时,媒体播放器会出现此类错误。因此,请检查您的文件路径,然后尝试。