设置闹钟 1 分钟,但 5 分钟后响起
Posted
技术标签:
【中文标题】设置闹钟 1 分钟,但 5 分钟后响起【英文标题】:Set alarm for 1 min but it called after 5 minutes 【发布时间】:2016-08-10 06:35:04 【问题描述】:我设置了 1 分钟的闹钟,但每隔 5 分钟就会响一次。
AlarmManager alarmManager = (AlarmManager)getActivity().getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(getActivity(), MyBroadcastReceiver.class);
intent.setAction("com.example");
PendingIntent pendingIntent = PendingIntent.getBroadcast(getActivity(), 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); //pending intent
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, new Date().getTime(), 60000, pendingIntent); //time duration is 60 seconds
【问题讨论】:
【参考方案1】:使用 alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, new Date().getTime(), 60000, pendingIntent); //持续时间是60秒而不是 alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, new Date().getTime(), 60000, pendingIntent); //持续时间为60秒
【讨论】:
这两种方法有什么区别?你能解释一下吗? setInexactRepeating 比传统上由 setRepeating 提供的严格重复更节能 但是 setInexactRepeating 不完全报警 我稍后检查了它,它在 sumsung 设备中 5 分钟后调用。在我的联想设备中,每 1 分钟一次就可以正常工作。以上是关于设置闹钟 1 分钟,但 5 分钟后响起的主要内容,如果未能解决你的问题,请参考以下文章