每天创build通知

我想每天早上八点创build一个通知。 我在SQLite数据库中有一些数据,现在我每天都要从数据库中获取数据,并从数据库中创build一个通知。 创build新的通知是没有问题的,但是我现在怎么才能每天都显示呢?

我想我必须和一个服务部门一起工作,但是我怎么能告诉系统在特殊时刻启动这个服务呢? 我应该使用什么样的服务? 我想如果系统调用服务,它会启动一个特定的function,我可以运行我的代码连接到数据库,并创build并发送我的通知到系统?

我不明白的是,如果我在我的主要活动注册服务,为什么系统可以启动服务,如果用户closures我的应用程序? 任何人都可以解释给我? 我总是认为如果我的主要活动被破坏,服务也被破坏。

使用Alarm manager类并将通知放入NotifyService类中。 这将在每天早上8点设置闹钟:

 Intent myIntent = new Intent(Current.this , NotifyService.class); AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); pendingIntent = PendingIntent.getService(ThisApp.this, 0, myIntent, 0); Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 08); calendar.set(Calendar.MINUTE, 00); calendar.set(Calendar.SECOND, 00); alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 24*60*60*1000 , pendingIntent); //set repeating every 24 hours 

你不需要服务器。 我认为实现这个最好的方法是使用AlarmManager。

警报pipe理器示例