Min*_*con 2 android broadcastreceiver alarmmanager
我有以下几行
alarm.setExact(AlarmManager.RTC_WAKEUP,10000,pintent);
Run Code Online (Sandbox Code Playgroud)
根据我的理解,我应该在10秒后收到来自AlarmManager的电话到我的广播接收器的onReceive.我的Logs如何显示它立即到达onReceive方法.这是正常的吗?在上面的setExact方法中指定的时间之后触发了什么方法?
改变这一行
alarm.setExact(AlarmManager.RTC_WAKEUP,10000,pintent);
Run Code Online (Sandbox Code Playgroud)
成
alarm.setExact(AlarmManager.RTC_WAKEUP,System.currentTimeMillis()+10000,pintent);
Run Code Online (Sandbox Code Playgroud)
所以它会在10秒后达到
编辑:
来自docs的setExact()会耗尽更多的电池set()
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.SECOND, 10);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pintent);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1218 次 |
| 最近记录: |