播放通知,默认的声音只(安卓) [英] Play notification default sound only (Android)
本文介绍了播放通知,默认的声音只(安卓)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何我只玩一个通知声音(兵不血刃状态栏通知)?我想通知默认的声音,准确地发挥它作为一个通知声音。是否有可能使用MediaPlayer的实现呢?
解决方案
乌里defaultRingtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
的MediaPlayer媒体播放器=新的MediaPlayer();
尝试 {
mediaPlayer.setDataSource(背景下,defaultRingtoneUri);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);
媒体播放器prepare()。
mediaPlayer.setOnCompletionListener(新OnCompletionListener(){
@覆盖
公共无效onCompletion(MediaPlayer的熔点)
{
mp.release();
}
});
mediaPlayer.start();
}赶上(抛出:IllegalArgumentException E){
e.printStackTrace();
}赶上(SecurityException异常E){
e.printStackTrace();
}赶上(IllegalStateException异常E){
e.printStackTrace();
}赶上(IOException异常E){
e.printStackTrace();
}
How can I play a notification sound only (without firing a status bar notification)? I want the notification default sound and play it exactly as a notification sound. Is it possible to achieve it using MediaPlayer?
解决方案
Uri defaultRingtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
MediaPlayer mediaPlayer = new MediaPlayer();
try {
mediaPlayer.setDataSource(context, defaultRingtoneUri);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);
mediaPlayer.prepare();
mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp)
{
mp.release();
}
});
mediaPlayer.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
这篇关于播放通知,默认的声音只(安卓)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文