从后台服务android触发的应用内通知

时间:2014-11-27 18:15:21

标签: android database notifications background-service

最近我正在开发应用程序的一些新功能。我的应用程序是关于显示在特定时间和特定位置发生的不同事件。 现在我希望用户能够保存他喜欢的事件,这意味着他可能想要参加那个特定的事件。当用户将事件标记为收藏事件时,事件的时间以及地点,名称,描述等其他详细信息将存储在设备上。现在,我遇到一些困难的部分是通知部分。

我想要做的是,当事件开始前1小时,必须触发通知,以告知用户该事件将在一小时内开始。如果我将其与议程通知进行类比。

现在的问题是以正确的方式实施它。我知道如何在Notification中使用Android,我也知道如何使用background services。我已经学过很多教程,例如:http://www.tutorialspoint.com/android/android_services.html,但我不知道哪种教学是正确的。

一种方法是将数据存储在数据库中,并运行后台服务以定期检查手机的时间是否是触发事件通知的权利。但是这可以说服务将无限期地运行的背景。

我还考虑过在数据库中使用一些存储过程来检查存储在那里的值,当时间到来时,它会触发触发通知的服务。

我不知道我是否遵循了正确的方式,在进行之前我需要澄清这些。

是否有任何教程可以帮助我或任何其他有助于我实现相同目标的想法。

1 个答案:

答案 0 :(得分:0)

  

一种方法是将数据存储在数据库中,并运行后台服务以定期检查手机的时间是否是触发事件通知的权利。但是这可以说服务将无限期地运行的背景。

这很浪费。是编程相当于汽车吟唱的后座儿童#34;我们在那里吗?我们在那里吗?"。

  

我还考虑过在数据库中使用一些存储过程来检查存储在那里的值,当时间到来时,它会触发触发通知的服务。

Android不支持此功能。

  

或帮助我实现同样目标的任何其他想法

Use AlarmManager告诉Android在您的活动开始前一小时给您控制权。您与PendingIntent一起使用的AlarmManager可以在您的应用中触发可以提升BroadcastReceiver的{​​{1}}。