你好,我有一个关于android的闹钟管理器的问题,我想安排一个闹钟,它会使用初始时间间隔执行,并能够由用户进行更改。我的代码是:android的闹钟管理器
long firstTime = SystemClock.elapsedRealtime();
mAlarmSender = PendingIntent.getService(mContext, 0, new Intent(mContext,AlarmService_Service.class), 0);
this.setInterval(Integer.parseInt(Interval));
configShared.edit().putInt("interval", this.getInterval()).commit();
// Schedule the alarm!
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime,this.getInterval(), mAlarmSender);
的this.getInterval()是保持间隔的方法和用于检查是否用户已经改变的时间间隔。
阅读我alarmManagers setRepeating方法的参数,说下找到的文档:
triggerAtTime时间报警应先熄灭,使用相应的时钟(取决于报警类型)
到底是什么这个?当我更改间隔时,闹钟是否取消?还有一个问题,因为我喜欢这个代码每5分钟执行一次,这将每5分钟执行+ firstinterval是否正确?
根据文档“如果已经为同一个IntentSender安排了闹钟,它将首先被取消。”这不允许你改变时间间隔,因为改变时间间隔取消了旧的闹钟,并以新的时间间隔设置了一个新的时间 – maxsap 2010-12-07 22:33:43