如何播放安卓通知声音

问题描述

如果有人仍在寻找解决方案,我在How to play ringtone/alarm sound in Android 中找到了答案

try {
    Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
    Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification);
    r.play();
} catch (Exception e) {
    e.printStackTrace();
}

您可以将 TYPE_NOTIFICATION 更改为 TYPE_ALARM,但您需要跟踪您的铃声 r 以停止播放…例如,当用户单击按钮或其他内容时。

解决方法

我想知道如何在不通过媒体流播放的情况下播放通知声音。现在我可以通过媒体播放器做到这一点,但是我不希望它作为媒体文件播放,我希望它作为通知、警报或铃声播放。这是我的代码现在的示例:

MediaPlayer mp = new MediaPlayer();
mp.reset();
mp.setDataSource(notificationsPath+ (String) apptSounds.getSelectedItem());
mp.prepare();
mp.start();

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...