检测铃声是否完成播放

时间:2015-04-28 22:41:51

标签: java android ringtone

我想检测铃声何时播放,但Android Ringtone类没有OnCompletionListener类的MediaPlayer。 具体而言,在实践中,我正在通过以下方式播放铃声:

Ringtone r = RingtoneManager.getRingtone(
                getApplicationContext(), soundUri);
r.play();

我想抓住铃声播放器的完成事件(如果它甚至发起这个事件......)就像MediaPlayer类一样。我知道Ringtone类提供了方法isPaying,但我不喜欢定期检查它直到它返回false的解决方案...另一方面,{{1}通过设置MediaPlayer回调,我们可以通过更简洁的方式检测玩家是否已经完成了某些内容的播放:

OnCompletionListener

那么,我怎样才能使用铃声管理器呢?它甚至可能吗?或者是定期检查final MediaPlayer player = new MediaPlayer(); player.setDataSource(filepath); player.setOnCompletionListener(new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { player.release(); } }); player.prepare(); player.start(); 的解决方案,直到它返回false,最好的一个???

0 个答案:

没有答案