當您啓用警報時,您必須調用內置警報管理器並使用alarmmanager.set設置管理器中的警報時間。 一旦報警時間(毫秒)被給予警告管理員將通過reciever類
//creating and assigning value to alarm manager class
Intent AlarmIntent = new Intent(MainActivity.this, AlarmReciever.class);
AlarmManager AlmMgr = (AlarmManager)getSystemService(ALARM_SERVICE);
PendingIntent Sender = PendingIntent.getBroadcast(MainActivity.this, 0, AlarmIntent, 0);
AlmMgr.set(AlarmManager.RTC_WAKEUP, Alarm.getTimeInMillis(), Sender);
發送消息,您可以retrive消息對於recieving報警你必須做出延伸reciever一個新類在onrecieve你可以設置意圖的活動你想打電話報警時間,你也可以提供通知。
public class AlarmReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent)
{ //Build pending intent from calling information to display Notification
PendingIntent Sender = PendingIntent.getBroadcast(context, 0, intent, 0);
NotificationManager manager = (NotificationManager)context.getSystemService(android.content.Context.NOTIFICATION_SERVICE);
Notification noti = new Notification(android.R.drawable.stat_notify_more, "Wake up alarm", System.currentTimeMillis());
noti.setLatestEventInfo(context, "My Alarm", "WAKE UP...!!!", Sender);
noti.flags = Notification.FLAG_AUTO_CANCEL;
manager.notify(R.string.app_name, noti);
//intent to call the activity which shows on ringing
Intent myIntent = new Intent(context, Alarmring.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myIntent);
//display that alarm is ringing
Toast.makeText(context, "Alarm Ringing...!!!", Toast.LENGTH_LONG).show();
}}
如果你仍然得到的任何問題再問一遍.. :)
你,但我在努力從過去的2天 – Aerrow 2012-02-09 10:33:52
哥們,只要創建一個應用程序。首先,瞭解應用程序創建的一些小部件。並且,把時間表放在那裏。並且,將數據庫中的時間(以毫秒爲單位)存儲起來,以便提醒您。那時,只需從數據庫中調用該時間並將其檢查到當前時間(以毫秒爲單位)。在所需的時間內,只需從警報管理器或通知管理器的通知中引發警報。 – Praveenkumar 2012-02-09 10:44:22
你有這方面的任何樣品,因爲我沒有想法如何做到這一點。 – Aerrow 2012-02-09 11:31:23