如何检测声音文件何时完成?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何检测声音文件何时完成?相关的知识,希望对你有一定的参考价值。
我在广播接收器活动中使用此代码播放声音文件:
notification.sound = Uri.parse("android.resource://emad.app/raw/seven_chimes");
我想检测这个文件何时播放完毕。
我尝试了这样的循环,但我认为这对媒体播放器只有好处,因为即使我确定声音文件仍在播放,它总是=假:
/*
* Stay here until the chime sound is finished.
*/
while (manager.isMusicActive())
你能告诉我应该用什么代替manager.isMusicActive()
吗?
答案
您可以使用MediaPlayer类并添加一个完成侦听器,以便在声音播放完毕时激活
MediaPlayer mp = MediaPlayer.create(this,Uri.parse("android.resource://emad.app/raw/seven_chimes"));
mp.setOnCompletionListener(new OnCompletionListener()
@Override
public void onCompletion(MediaPlayer mp)
performOnEnd();
);
mp.start();
另一答案
尝试使用服务播放音乐..播放一次后,然后停止服务,你可以在onDestroy()服务方法上添加你的程序..希望它有帮助:)
以上是关于如何检测声音文件何时完成?的主要内容,如果未能解决你的问题,请参考以下文章
如何检测 Cordova WebView 何时完全完成加载?
如何检测 UINavigationController 动画何时完成?