【问题标题】:Set alarm for 1 min but it called after 5 minutes设置闹钟 1 分钟,但 5 分钟后响起
【发布时间】: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

【问题讨论】:

    标签: android alarmmanager alarm android-alarms


    【解决方案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 分钟一次就可以正常工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多