首页 > 解决方案 > Android MediaPlayer.create 失败

问题描述

所以我一直在用 MediaPlayer 尝试一些东西,如果我这样做,它会起作用:

mediaPlayer = MediaPlayer.create(this, R.raw.over);

但是,显然这只允许我启动那个文件。所以,如果我尝试这样的事情:

Uri myUri = Uri.parse("R.raw.over");
mediaPlayer = MediaPlayer.create(this, myUri);

然后不会创建 mediaPlayer。任何方法调用

mediaPlayer.start()

抛出 NullPointerException。

我的想法是,如果我让它工作,那么最终我可以从包含 URI 的 ArayList 播放文件。

标签: androidnullpointerexceptionandroid-mediaplayer

解决方案


请尝试应用此代码:

Uri myUri = ....; // initialize Uri here
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(getApplicationContext(), myUri);
mediaPlayer.prepare();
mediaPlayer.start();

推荐阅读