try {
mp.setDataSource(text);
mp.prepare();
mp.setVolume(0.4f, 0.4f);
}
catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
catch (InterruptedException e)
{
e.printStackTrace();
}
catch (IllegalMonitorStateException e)
{
e.printStackTrace();
}
final Handler hlr = new Handler();
final Runnable looper = new Runnable() {
@Override
public void run()
{
if(mp!=null)
{
if(mp.isPlaying())
{
mp.stop();
}
}
mp.start();
}
};
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp)
{
hlr.postDelayed(looper, 5000);
}
});
以上代码行是警报活动的一部分,我的目标是循环音频文件,延迟为5000
ms。但是,代码似乎没有任何影响。无法播放音频。我究竟做错了什么?请帮我解决这个问题。任何帮助将不胜感激。