在 Android 中激活闹钟声音

Activate alarm sound in Android

我的闹钟在没有静音和振动模式的情况下也能正常工作。当我的 phone 处于静音和振动模式时,我如何 运行 闹钟。还有,我怎么知道闹钟或音乐结束了。

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();
    }
}

一般来说,如果用户决定将他的 phone 静音,最好让它保持静音。但是,如果您正在制作供自己使用的应用程序,您可以像这样简单地调高音量:

AudioManager mgr=(AudioManager)getSystemService(Context.AUDIO_SERVICE); mgr.setStreamVolume(AudioManager.STREAM_ALARM, mgr.getStreamMaxVolume( AudioManager.STREAM_ALARM), AudioManager.FLAG_PLAY_SOUND);