如何在没有R.raw或某种文件的情况下在Android中初始化MediaPlayer?
如果我没有用某个文件初始化MediaPlayer,我将在运行时获得空指针异常。但是当程序启动时,没有文件路径可供使用,因为用户尚未按下按钮从SD卡中选择mp3文件。
初始化媒体播放器时,还有另一个探测器。它只需要一个R.raw类型的文件,而不是SD卡中文件的路径。如果我在R.raw目录中没有任何文件,那么我就不能用文件初始化。您似乎需要本地R.raw文件夹中的音频文件才能执行此操作。
Mediaplayer player = MediaPlayer.create(this, R.raw.sample_music);
有一个名为“setDataSource”的方法允许我设置文件的路径,但是我必须先初始化MediaPlayer。
player.setDataSource(selectedAudioPath);
初始化MediaPlayer的其他任何方式?
答案 0 :(得分:8)
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(filepath);
答案 1 :(得分:1)
这篇文章对我有帮助,下面的代码也适用:
Mediaplayer player = MediaPlayer.create(this, Uri.parse(File.getAbsolutePath()));