安卓开发中如何设置Notification的提醒时间
如题,举个例子,想要自己设定一个时间和Notification提醒,到了设定的时间跳出已设定的Notification提醒,现在不知道如何将设定的时间和Notificat...
如题,举个例子,想要自己设定一个时间和Notification提醒,到了设定的时间跳出已设定的Notification提醒,现在不知道如何将设定的时间和Notification关联。小生菜鸟,还望各位大哥大姐指点。
展开
2个回答
展开全部
设定时间时记录下Notification提醒的内容等信息,当时间到时,发送Notification
PendingIntent notiPend = PendingIntent.getActivity(context, 0 , intent , PendingIntent.FLAG_CANCEL_CURRENT);
notification = new Notification(android.R.drawable.stat_notify_sync, notifyScroll, System.currentTimeMillis());
notification.setLatestEventInfo(context, notifyTitle, notifyContent, notiPend);
notifiMgr.notify(notifyId, notification);
PendingIntent notiPend = PendingIntent.getActivity(context, 0 , intent , PendingIntent.FLAG_CANCEL_CURRENT);
notification = new Notification(android.R.drawable.stat_notify_sync, notifyScroll, System.currentTimeMillis());
notification.setLatestEventInfo(context, notifyTitle, notifyContent, notiPend);
notifiMgr.notify(notifyId, notification);
更多追问追答
追问
你好,Notification我已经设置了,Notification现实不是问题。现在困扰我的问题是如何判断系统时间与我设定的时间相同。因为系统时间一直在变,如果要进行判断的话,是否应该时刻对系统时间进行获取?如果需要的话该如何不断获取?用一个线程?关于这些我有点混乱,望指点,谢谢。
追答
这是定时问题,可以用AlarmManager设定定时时间,时间到会发送intent,可以定时的开启一个Activity,发送一个BroadCast,或者开启一个Service,无需获取系统时间做判断比较。
//操作:发送一个广播,广播接收后Toast提示定时操作完成
Intent intent =new Intent(Main.this, alarmreceiver.class);
intent.setAction("short");
PendingIntent sender=
PendingIntent.getBroadcast(Main.this, 0, intent, 0);
//设定一个五秒后的时间
Calendar calendar=Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 5);
AlarmManager alarm=(AlarmManager)getSystemService(ALARM_SERVICE);
alarm.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender);
Toast.makeText(Main.this, "五秒后alarm开启", Toast.LENGTH_LONG).show();
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设定时间时记录下Notification提醒的内容等信息,当时间到时,发送Notification
PendingIntent notiPend = PendingIntent.getActivity(context, 0 , intent , PendingIntent.FLAG_CANCEL_CURRENT);
notification = new Notification(android.R.drawable.stat_notify_sync, notifyScroll, System.currentTimeMillis());
notification.setLatestEventInfo(context, notifyTitle, notifyContent, notiPend);
notifiMgr.notify(notifyId, notification);
PendingIntent notiPend = PendingIntent.getActivity(context, 0 , intent , PendingIntent.FLAG_CANCEL_CURRENT);
notification = new Notification(android.R.drawable.stat_notify_sync, notifyScroll, System.currentTimeMillis());
notification.setLatestEventInfo(context, notifyTitle, notifyContent, notiPend);
notifiMgr.notify(notifyId, notification);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询