From c36a1ab9072bdf3b31998778cef7cfceac184425 Mon Sep 17 00:00:00 2001 From: tim Date: Sun, 13 Apr 2014 22:53:33 +0200 Subject: [PATCH] - Check for incoming phone calls and mute alarm - Run alarm at lower volume if in a phone call - Re-enable alarm noises. --- .../org/treehouse/hypoalarm/AlarmKlaxon.java | 57 +++++++++++------- .../treehouse/hypoalarm/GraceReceiver.java | 4 +- HypoAlarm/src/main/res/raw/fallbackring.ogg | Bin 0 -> 21153 bytes HypoAlarm/src/main/res/raw/in_call_alarm.ogg | Bin 0 -> 21153 bytes 4 files changed, 38 insertions(+), 23 deletions(-) create mode 100644 HypoAlarm/src/main/res/raw/fallbackring.ogg create mode 100644 HypoAlarm/src/main/res/raw/in_call_alarm.ogg diff --git a/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/AlarmKlaxon.java b/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/AlarmKlaxon.java index d8d230d..e02fd6d 100644 --- a/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/AlarmKlaxon.java +++ b/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/AlarmKlaxon.java @@ -7,6 +7,7 @@ import android.media.MediaPlayer; import android.media.RingtoneManager; import android.net.Uri; import android.os.Vibrator; +import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; import android.util.Log; @@ -18,33 +19,47 @@ public class AlarmKlaxon { private static final float IN_CALL_VOLUME = 0.125f; private static MediaPlayer mediaPlayer = null; private static TelephonyManager telephonyManager; + private static PhoneStateListener phoneStateListener; + private static int initialCallState; private static Vibrator vibrator; public static void start(final Context context) { /** * - * TODO add raw ring tone to use as fallback - * TODO add in-call ring tone + * TODO allow user to select alarm tone + * TODO add raw alarm tone to use as fallback + * TODO add in-call alarm tone * TODO lower volume if in a call * TODO cancel noise if a call comes in (add TelephonyManager listener which cancels the alert but calls the notification) * - * TODO start telephony listener - * - * TODO snooze 5 minutes on press back button or home button (new runnable) - * TODO remove back/home button and most top icons - * TODO fix glowpad/seekarc */ + vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE); vibrator.cancel(); vibrator.vibrate(vPattern, 0); - if (true) - return; // TODO remove after testing -- is mediaplayer responsible for delays? - telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); + initialCallState = telephonyManager.getCallState(); + phoneStateListener = new PhoneStateListener() { + @Override + public void onCallStateChanged(int state, String ignored) { + // The user might already be in a call when the alarm fires. When + // we register onCallStateChanged, we get the initial in-call state + // which kills the alarm. Check against the initial call state so + // we don't kill the alarm during a call. + if (state != TelephonyManager.CALL_STATE_IDLE && state != initialCallState) { + stopAudio(context); + // TODO stop alarm from snoozing or turning off? + } + } + }; + telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE); + boolean inTelephoneCall = initialCallState != TelephonyManager.CALL_STATE_IDLE; + // TODO select alarm tone? // Use the default alarm tone... Uri alarmNoise = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM); + stopAudio(context); mediaPlayer = new MediaPlayer(); mediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() { @@ -57,24 +72,21 @@ public class AlarmKlaxon { }); try { - /* - * TODO find out if we're in a call if (inTelephoneCall) { - Log.v("Using the in-call alarm"); - sMediaPlayer.setVolume(IN_CALL_VOLUME, IN_CALL_VOLUME); - setDataSourceFromResource(context, sMediaPlayer, R.raw.in_call_alarm); + Log.d("AlarmKlaxon", "Using the in-call alarm"); + mediaPlayer.setVolume(IN_CALL_VOLUME, IN_CALL_VOLUME); + setDataSourceFromResource(context, mediaPlayer, R.raw.in_call_alarm); } else { - */ - mediaPlayer.setDataSource(context, alarmNoise); - startAudio(context); - //} + mediaPlayer.setDataSource(context, alarmNoise); + startAudio(context); + } } catch (Exception ex) { // The alarmNoise may be on the sd card which could be busy right // now. Use the fallback ringtone. try { // Reset the media player to clear the error state. mediaPlayer.reset(); - //setDataSourceFromResource(this, mediaPlayer, R.raw.fallbackring); + setDataSourceFromResource(context, mediaPlayer, R.raw.fallbackring); startAudio(context); } catch (Exception ex2) { // At this point we just don't play anything. @@ -86,9 +98,8 @@ public class AlarmKlaxon { public static void stop(final Context context) { vibrator.cancel(); - if (true) - return; // TODO remove after testing stopAudio(context); + telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_NONE); } private static void startAudio(final Context context) throws IOException { @@ -118,6 +129,7 @@ public class AlarmKlaxon { mediaPlayer = null; } } + // Load ringtone from a resource private static void setDataSourceFromResource(Context context, MediaPlayer player, int res) throws IOException { AssetFileDescriptor afd = context.getResources().openRawResourceFd(res); @@ -126,4 +138,5 @@ public class AlarmKlaxon { afd.close(); } } + } diff --git a/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/GraceReceiver.java b/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/GraceReceiver.java index 2db3a08..82f7e7c 100644 --- a/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/GraceReceiver.java +++ b/HypoAlarm/src/main/java/za/org/treehouse/hypoalarm/GraceReceiver.java @@ -74,7 +74,9 @@ public class GraceReceiver extends BroadcastReceiver { private void sendText(Context context) { SmsManager sms = SmsManager.getDefault(); // TODO uncomment sendTextMessage - //sms.sendTextMessage(phoneNumber, null, message, null, null); + if (!MainActivity.HYPOALARM_DEBUG) { + sms.sendTextMessage(phoneNumber, null, message, null, null); + } Toast.makeText(context, message, Toast.LENGTH_LONG).show(); Log.d("GraceReceiver", "Sending sms to " + phoneNumber + " with message: " + message); } diff --git a/HypoAlarm/src/main/res/raw/fallbackring.ogg b/HypoAlarm/src/main/res/raw/fallbackring.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9d800377621c51700d0e01454860381ef04c3b20 GIT binary patch literal 21153 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

+I_m=pmPT*i z3lu~sHNhldS5jFx)X2bfy^}ZzK?6n9T9l0V6;|cT43asHah#SSDKrrCmS}o{tI}GX twRIZdv$JkGMX8pd6$#MNs^FiBM0HOQ^`#<{eLIVH* literal 0 HcmV?d00001 diff --git a/HypoAlarm/src/main/res/raw/in_call_alarm.ogg b/HypoAlarm/src/main/res/raw/in_call_alarm.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9d800377621c51700d0e01454860381ef04c3b20 GIT binary patch literal 21153 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

+I_m=pmPT*i z3lu~sHNhldS5jFx)X2bfy^}ZzK?6n9T9l0V6;|cT43asHah#SSDKrrCmS}o{tI}GX twRIZdv$JkGMX8pd6$#MNs^FiBM0HOQ^`#<{eLIVH* literal 0 HcmV?d00001