2011-12-17 3 views
0

AlarmManagerでいくつかのイベントを設定しています。以下はコードです。AlarmManagerイベントをデータベースに保存する方法は?

AlarmManager AM =(AlarmManager)getSystemService(Context.ALARM_SERVICE); 
    Intent intent = new Intent(); 
    intent.setAction(Constants.ALARM_ACTION); 
    intent.putExtra(Constants.EXTRA_DATA1, data[0]); 
    intent.putExtra(Constants.EXTRA_DATA2, data[1]); 
    long selectedTime = Long.parseLong(data[2]); 
    PendingIntent pi = PendingIntent.getBroadcast(mContext, 0, intent,0); 
    AM.set(AlarmManager.RTC,selectedTime, pi); 

各イベントをデータベースに保存します。ユーザーがアプリからのイベントの履歴を見たいときは、すべてのイベントを表示することができます。ユーザーが1つのイベントを選択すると、そのイベントを削除/リセットすることができます。

+0

データベースに 'data [0]'と 'data [1]'と 'data [2] – CommonsWare

答えて

0

この保留中のitentに渡しているこの自己保存データを解決し、getBroadcastメソッドの2番目のパラメータであるリクエストコードを取得し、次にトリガーされたイベントを取り消したいときにデータベースから取得しますAlarmManager.cancelメソッド。 すべてのイベントに対して一意のリクエストコードを使用することで、リクエストコードでイベントをリセットまたはキャンセルできます。

関連する問題