需要您的帮助,我检查按下按钮时的音频流还是按下按钮时程序启动且音频流不可用,则不会发生,音乐无法播放且没有任何响应从程序中不,我希望您意识到如何做这样的响应吗?
启动代码媒体播放器:
public void playMain() {
releaseMP();
Log.d(LOG_TAG, "start Stream");
mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
if(pdaStream.isChecked()){
Main_stream = "http://145.255.233.204:58000/radio_pda";
}else{
Main_stream = "http://145.255.233.204:58000/radio";
}
mediaPlayer.setDataSource(Main_stream);
} catch (IOException e) {
e.printStackTrace();
}
Log.d(LOG_TAG, "prepareAsync");
mediaPlayer.prepareAsync();;
mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
}
最佳答案
最好的办法就是在创建MediaPlayer的对象之前启动进度对话框,然后在mMediaPlayer.start()之后关闭该对话框。
试试这个,让我知道。
protected void onPreExecute() {
//start you progress dialog here
}
@Override
protected Void doInBackground(Void... arg0) {
try {
mMediaPlayer
.setAudioStreamType(AudioManager.STREAM_MUSIC);
mMediaPlayer.setDataSource(
getApplicationContext(),
mMediaPlayer.prepareAsync();
return null;
}
@Override
protected void onPostExecute(Void result) {
mMediaPlayer.start();
// dismiss your dialog here
}
}
};
task.execute();