0

私はアラームアプリケーションをやっていますが、日付ピッカーからの日付と時刻に応じて、アラームを再生する必要があります。

私が書いたコード

        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.YEAR, year);
        cal.set(Calendar.MONTH, month);
        cal.set(Calendar.DAY_OF_MONTH, day);
        cal.set(Calendar.HOUR, hour);
        cal.set(Calendar.MINUTE, min);

        //Create a new PendingIntent and add it to the AlarmManager
        Intent intent = new Intent(this, AlarmReceiverActivity.class);
        PendingIntent pendingIntent = PendingIntent.getActivity(this,
            0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
        AlarmManager am = 
            (AlarmManager)getSystemService(Activity.ALARM_SERVICE);
        am.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(),
                pendingIntent);

cal.add(Calendar.SECOND, 5); のように値をハードコーディングする場合、カレンダーに値を設定することは別として。それはアラームを鳴らしています..もし誰かが問題を見つけるのを手伝ってください.

4

1 に答える 1

0

私はこれを使用しているので、このコードブロックを実行する必要があります。

 String str_date = "23:59:59";
            SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
            java.util.Date stringToDate = sdf.parse(str_date);
            long start_time = stringToDate.getTime();

            Intent __intent__ = new Intent(this, CleanService.class);
            PendingIntent __p_intent__ = PendingIntent.getService
                    (getApplicationContext(), 0, __intent__, 0);
            long interval_time = 86400000;

            AlarmManager alarm_manager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
            alarm_manager.setRepeating(AlarmManager.RTC_WAKEUP,
                    start_time, interval_time, __p_intent__);
于 2013-02-18T12:23:43.380 に答える