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