package net.jessechen.alarmclock;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.RingtoneManager;
import android.net.Uri;
import android.widget.Toast;
public class AlarmReceiver extends BroadcastReceiver {
public static final int REQUEST_CODE = 1111;
MediaPlayer mMediaPlayer;
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "alarm!", Toast.LENGTH_LONG)
.show();
try {
Uri alert = RingtoneManager
.getDefaultUri(RingtoneManager.TYPE_ALARM);
if (alert == null) {
// alert is null, using backup
alert = RingtoneManager
.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
if (alert == null) { // I can't see this ever being null (as
// always have a default notification)
// but just incase
// alert backup is null, using 2nd backup
alert = RingtoneManager
.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
}
}
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(context, alert);
final AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
if (audioManager.getStreamVolume(AudioManager.STREAM_ALARM) != 0) {
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_ALARM);
mMediaPlayer.setLooping(false);
mMediaPlayer.prepare();
mMediaPlayer.start();
this.wait(500);
mMediaPlayer.stop();
}
} catch (Exception ex) {
}
// try {
// Bundle bundle = intent.getExtras();
// String pid = bundle.getString("alarm_message");
// LinkedList<CommentModel> comments = AlarmsFragment
// .readFromPost(pid);
//
// if (comments.size() > 0) {
// Toast.makeText(context, comments.get(0).getMsg(),
// Toast.LENGTH_LONG).show();
// }
//
// } catch (Exception e) {
//
// // AlertDialog.Builder builder = new AlertDialog.Builder(context);
// // builder.setMessage("don't forget class at 3!").setTitle("Alarm");
// // AlertDialog alert = builder.create();
// // alert.show();
// e.printStackTrace();
//
// }
}
}