更改静音模式以发出警报

change silent mode for alert

我在我的应用程序中使用警报。如果启用静默模式,则警报不起作用。如何更改警报的静音模式。另外,我怎样才能知道警报(音乐等)是否完成。提前致谢。

private void mediaPlayerStart()
{
    try
    {
        Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
        if(alert == null)
        {
            alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
            if(alert == null)
            {
                alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
            }
        }
        ringtone = RingtoneManager.getRingtone(getApplicationContext(), alert);
        ringtone.play();
    }

    catch (Exception e)
    {
        e.printStackTrace();
    }
}

setStreamType 解决了我的问题。

 ringtone = RingtoneManager.getRingtone(getApplicationContext(), alert);
 ringtone.setStreamType(AudioManager.STREAM_ALARM);
 ringtone.play();