0
我试图从一个DialogFragment中发出一个触发事件一段时间后的事件的警报。为什么我的AlarmManager不工作?
下面是相关的代码,我把的onCreate():
broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context c, Intent i) {
Toast.makeText(c, "Rise and Shine!", Toast.LENGTH_LONG).show();
}
};
getActivity().registerReceiver(broadcastReceiver, new IntentFilter(ALARM_MANAGER_TAG));
pendingIntent = PendingIntent.getBroadcast(getActivity(), 0, new Intent(ALARM_MANAGER_TAG), 0);
alarmManager = (AlarmManager)(getActivity().getSystemService(Context.ALARM_SERVICE));
,然后当我按下启动按钮:
alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, timestampEnd, pendingIntent);
在这种情况下timestampEnd = System.currentTimeMillis() + 10 * 1000;
,10秒。
然后,我已重写破坏:
@Override
public void onDestroy() {
alarmManager.cancel(pendingIntent);
getActivity().unregisterReceiver(broadcastReceiver);
super.onDestroy();
}
然而,什么也没有发生因某种原因。
流逝的实时和rtc唤醒有什么区别?边际时间与绝对时间? – user8367195
甜,它工作! – user8367195
您可以阅读文档,但基本上其中一个是设备引导时从0开始的时间戳,其中一个是从1970年1月1日00:00开始的时间戳。 –