我想播放一个通知声音,我的问题是声音永远循环,它应该只响一次.

我尝试了两种方法:

notification.sound = Uri.parse("content://media/internal/audio/media/38");

mMediaPlayer = new MediaPlayer();

mMediaPlayer.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);

mMediaPlayer.setDataSource(this, Uri.parse("content://media/internal/audio/media/38"));

mMediaPlayer.setLooping(false);

mMediaPlayer.prepare();

mMediaPlayer.setOnPreparedListener(new OnPreparedListener() {

@Override

public void onPrepared(MediaPlayer mp) {

Log.v(Utils.TAG, "onprepared");

mp.start();

}

});

mMediaPlayer.setOnCompletionListener(new OnCompletionListener() {

@Override

public void onCompletion(MediaPlayer mp) {

Log.v(Utils.TAG, "end, we should release");

mp.stop();

mp.release();

}

});

在第二种情况下,我从未看到跟踪"结束,我们应该释放",音频一遍又一遍地播放.

任何的想法?

非常感谢你

更新:

我尝试了两种设备:

它在ICS 4.0.4的Galaxy Nexus上永远循环

它适用于HTC Hero 2.2.1

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐