我试图使用媒体播放器在Android中播放声音但没有成功,
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String url = "https://dl.dropboxusercontent.com/u/108022472/5041046.mp3";
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mediaPlayer.setDataSource(url);
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
mediaPlayer.prepareAsync();
}
我从logcat获得这个:
prepareAsync called in state 1
上面的代码有什么不对吗?
答案 0 :(得分:1)
您已经准备好调用prepare()了。如果已经调用prepare(),则无需调用prepareAsync()。放下这两个电话中的一个。