Android的提醒应用

问题描述:

我需要根据从数据库的日期和时间创建的提醒应用程序(例如:31-08-2011 10:30,05-09-2011 14:40,等等),即使应用程序没有运行..数据库将包含许多带有时间的日期。如果时间到了,我需要显示通知。我该怎么做。请提供您应该使用AlarmManager这方面的任何样品或建议Android的提醒应用

+0

您可以使用报警管理器。 http://developer.android.com/reference/android/app/AlarmManager.html – Samuel

+0

写的教程。通知提醒:http://blog.blundell-apps.com/notification-for-a-user-chosen-time/ – Blundell

AlarmManager mgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); 
Intent i = new Intent(context, OnAlarmReceiver.class); 
PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0); 
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 
SystemClock.elapsedRealtime(), PERIOD, pi); 

PERIOD是您在OnAlarmReceiver中执行某些事情的时间。 接着,就实施方法

@Override 
public void onReceive(Context context, Intent intent) { 
    NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE); 
    Notification notification = new Notification(); 
    notification.tickerText = "10 Minutes past"; 
    nm.notify(0, notification); 
} 

而且还看到这里,

http://developer.android.com/reference/android/app/AlarmManager.html

编辑:A小调代码问题解决!

+0

什么的onReceive?它是广播接收器吗?你能解释一下吗? – Dharmendra

+0

yes,当BroadcastReceiver正在接收Intent广播时调用此方法。详细内容点击这里http://developer.android.com/reference/android/content/BroadcastReceiver.html#onReceive%28android.content.Context,%20android.content.Intent%29 – Randroid

+0

我知道广播接收器,但我想知道我们如何为闹钟管理员注册广播接收机意味着当挂起的意图触发时它将如何呼叫? – Dharmendra

把这段代码,无论你需要..

new CountDownTimer(diff, 1) //Constructor for CountDownTimer class (milliseconds,difference); 
{ 
public void onTick(long millisUntilFinished) 
{ 
// DO NOTHING 
} 

public void onFinish() { 
sendSMS(phoneNo,message); 
} 
}.start(); 
+1

了一下,可能的注意事项,肯定是为了。 – vonbrand