0

私は Android でアプリケーションに取り組んでおり、キャンセルするまで毎日 09:00 から 22:00 (1 時間に 1 回または 2 時間に 1 回) に実行されるリマインダーを作成する必要があります。以下のコードで、指定された正確な日付と指定された ID でリマインダーを作成します。そのため、後で定義された ID を使用してリマインダーをキャンセルできます。

それを行う方法はありますか?

    public void setAlarm(Context context, Calendar calendar, int alarmId) {
        Intent intent = new Intent(context, AlarmReceiver.class);           
        PendingIntent sender = PendingIntent.getBroadcast(context, alarmId, intent, 0);
        // Get the AlarmManager service
        AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
        am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender);
    }
4

1 に答える 1

2

私があなたの質問を正しく理解していれば、BroadcastReceiver でアラームを受信したときに、1 時間後に別のアラームを設定するか、任意の間隔で設定してください。次のアラームが 22:00 を超える場合は、翌日の 09:00 に設定します。繰り返しアラームはあなたが提案したものでは機能しないので、あなたが示した例のように set を使用してください。

于 2012-10-13T13:39:45.117 に答える