首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >android提醒

android提醒
EN

Stack Overflow用户
提问于 2013-02-06 18:00:27
回答 3查看 1.3K关注 0票数 0

我是android编程的新手,我正在开发提醒应用程序。现在,我已经将包括日期和时间在内的所有信息存储到SQLlite数据库中。我的问题是如何将存储在数据库中的警报与android上的当前时间进行匹配

EN

回答 3

Stack Overflow用户

发布于 2013-02-06 18:03:58

与日历比较查询数据库

代码语言:javascript
复制
Calendar c = Calendar.getInstance();
c.set(Calendar.MONTH, Calendar.MARCH);
c.set(Calendar.DAY_OF_MONTH, 3);
long time2=   c.getTimeInMillis();
c.set(Calendar.MONTH, Calendar.AUGUST);
  c.set(Calendar.DAY_OF_MONTH, 8);   
   long time3=   c.getTimeInMillis();
   if(time>time2){
 //Logic
 if(time>time3){
     //Logic
 }
 }
票数 1
EN

Stack Overflow用户

发布于 2013-02-06 18:04:05

您需要做的是首先创建您需要安排的意图。然后获取该意图的pendingIntent。您可以安排活动、服务和广播。要计划活动,请执行以下操作: MyActivity:

代码语言:javascript
复制
  Intent i = new Intent(getApplicationContext(), MyActivity.class);
  PendingIntent pi = PendingIntent.getActivity(getApplicationContext(),3333,i,
  PendingIntent.FLAG_CANCEL_CURRENT);

将此pendingIntent提供给alarmManager:

代码语言:javascript
复制
//getting current time and add 5 seconds in it
  Calendar cal = Calendar.getInstance();
  cal.add(Calendar.SECOND, 5);
  //registering our pending intent with alarmmanager
  AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
  am.set(AlarmManager.RTC_WAKEUP,cal.getTimeInMillis(), pi);

现在,无论您停止您的应用程序或设备进入睡眠状态(由于RTC_WAKEUP选项),MyActivity都将在应用程序启动5秒后启动。您可以阅读完整的示例代码Scheduling activities, services and broadcasts #Android

票数 1
EN

Stack Overflow用户

发布于 2013-02-06 18:39:45

或者倒计时,而不是使用日历或相对电话时间。我自己做了一个类似的应用程序,它似乎减少了由于手机时间关闭或重置等原因而产生的变化。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14726177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档