需求:在客戶apk啓動後,設置的鬧鐘要取消掉。
當鬧鐘要響起時會發送一些廣播,這些廣播是在AlarmService.java中處理的,包括:
ALARM_ALERT_ACTION 、ALARM_DISMISS_ACTION 、ALARM_SNOOZE_ACTION、CHANGE_STATE_ACTION
所以,要阻斷鬧鐘需要在 public int onStartCommand()方法中取消掉stopCurrentAlarm;
case AlarmStateManager.CHANGE_STATE_ACTION:
AlarmStateManager.handleIntent(this, intent);
// If state is changed to firing, actually fire the alarm!
final int alarmState = intent.getIntExtra(
AlarmStateManager.ALARM_STATE_EXTRA, -1);
+ if(XXXX){
+ stopCurrentAlarm();
+ stopSelf();
+ break;
+ }