我的数据库里有很多格式为base64的短音频。我想在按钮被点击时播放音频。基本上,我写了这段代码,但它不起作用。(如果可能的话,最好不要将文件写入存储,因为这个过程会有延迟)
playButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try{
String url = "data:audio/mp3;base64,"+base64FormattedString;
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(url);
mediaPlayer.prepare();
mediaPlayer.start();
}
catch(Exception e){
e.printStackTrace();
}
}
});
以下是堆栈跟踪信息:https://gist.github.com/AliAtes/aa46261aba3d755fbbd1eba300356a5f
MediaPlayer
的角度来看,它不是一个有效的数据源 -"path String: 文件路径,或您要播放的流的 http/rtsp URL"
。 - pskink