private void startAlarm() { if (alarm.getAlarmTonePath() != "") { mediaPlayer = new MediaPlayer(); if (alarm.getVibrate()) { vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); long[] pattern = {1000, 200, 200, 200}; vibrator.vibrate(pattern, 0); } try { mediaPlayer.setVolume(1.0f, 1.0f); mediaPlayer.setDataSource(this, Uri.parse(alarm.getAlarmTonePath())); mediaPlayer.setAudioStreamType(AudioManager.STREAM_ALARM); mediaPlayer.setLooping(true); mediaPlayer.prepare(); mediaPlayer.start(); } catch (Exception e) { mediaPlayer.release(); alarmActive = false; } } }