diff options
author | Ayaz Ahmad <aahmad@codeaurora.org> | 2013-09-12 17:04:29 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2013-09-13 01:56:26 -0700 |
commit | 594e34a0251b1f54f9cef9dc1c71c609dc378e5c (patch) | |
tree | 4ad1b227559af7a43e23122eac0b2b76e55fb787 /fmapp2/src/com/caf/fmradio/FMRadioService.java | |
parent | cd4bbb4f8e74be388a7d99dea1ca58c87ca19193 (diff) | |
download | android_hardware_qcom_fm-594e34a0251b1f54f9cef9dc1c71c609dc378e5c.tar.gz android_hardware_qcom_fm-594e34a0251b1f54f9cef9dc1c71c609dc378e5c.tar.bz2 android_hardware_qcom_fm-594e34a0251b1f54f9cef9dc1c71c609dc378e5c.zip |
fm: Sleep timer does not stop after force stop
Sleep timer in fm app continues to show up even after
force stop of FM process.Save the sleep timer status
information in FM Service
Change-Id: I921ae2ca9e366083c75dd1d0390df2b44717e2d1
CRs-Fixed: 535274
Diffstat (limited to 'fmapp2/src/com/caf/fmradio/FMRadioService.java')
-rw-r--r-- | fmapp2/src/com/caf/fmradio/FMRadioService.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java index 5ecb5be..b162627 100644 --- a/fmapp2/src/com/caf/fmradio/FMRadioService.java +++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java @@ -100,6 +100,7 @@ public class FMRadioService extends Service private BroadcastReceiver mSdcardUnmountReceiver = null; private BroadcastReceiver mMusicCommandListener = null; private BroadcastReceiver mSleepExpiredListener = null; + private boolean mSleepActive = false; private BroadcastReceiver mRecordTimeoutListener = null; private BroadcastReceiver mDelayedServiceStopListener = null; private boolean mOverA2DP = false; @@ -649,7 +650,7 @@ public class FMRadioService extends Service @Override public void onRebind(Intent intent) { mDelayedStopHandler.removeCallbacksAndMessages(null); - cancelAlarms(); + cancelAlarmDealyedServiceStop(); mServiceInUse = true; /* Application/UI is attached, so get out of lower power mode */ setLowPowerMode(false); @@ -663,7 +664,7 @@ public class FMRadioService extends Service // make sure the service will shut down on its own if it was // just started but not bound to and nothing is playing mDelayedStopHandler.removeCallbacksAndMessages(null); - cancelAlarms(); + cancelAlarmDealyedServiceStop(); setAlarmDelayedServiceStop(); } @@ -1475,6 +1476,10 @@ public class FMRadioService extends Service { return (mService.get().getRecordingStartTime()); } + public boolean isSleepTimerActive() + { + return (mService.get().isSleepTimerActive()); + } } private final IBinder mBinder = new ServiceStub(this); @@ -2892,12 +2897,14 @@ public class FMRadioService extends Service PendingIntent pi = PendingIntent.getBroadcast(this, 0, i, 0); Log.d(LOGTAG, "delayedStop called" + SystemClock.elapsedRealtime() + duration); am.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + duration, pi); + mSleepActive = true; } private void cancelAlarmSleepExpired() { Intent i = new Intent(SLEEP_EXPIRED_ACTION); AlarmManager am = (AlarmManager)getSystemService(Context.ALARM_SERVICE); PendingIntent pi = PendingIntent.getBroadcast(this, 0, i, 0); am.cancel(pi); + mSleepActive = false; } private void setAlarmRecordTimeout(long duration) { Intent i = new Intent(RECORD_EXPIRED_ACTION); @@ -2939,6 +2946,10 @@ public class FMRadioService extends Service public long getRecordingStartTime() { return mSampleStart; } + + public boolean isSleepTimerActive() { + return mSleepActive; + } //handling the sleep and record stop when FM App not in focus private void delayedStop(long duration, int nType) { int whatId = (nType == STOP_SERVICE) ? STOPSERVICE_ONSLEEP: STOPRECORD_ONTIMEOUT; |