Привет, я хочу отправлять данные на сервер каждые семь часов каждый день. Для этого я назвал эту функцию в своей деятельности.Запланировать задачу каждые 7 вечера
private void startTimer() {
Intent alarmIntent = new Intent(getApplicationContext(), LocTimer.class);
pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, alarmIntent, 0);
AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
int interval = 1000*60*60*24;
c = Calendar.getInstance();
c.setTimeInMillis(System.currentTimeMillis());
c.set(Calendar.HOUR_OF_DAY, 19);
c.set(Calendar.MINUTE, 00);
manager.setRepeating(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), interval, pendingIntent);
}
В способе приема класса LocTimer я отправляю данные на сервер. Но в первый раз, когда активность загружается, startTimer отправляет данные на сервер. После этого каждые 24 часа он записывает данные. Я пытаюсь прекратить отправку данных в первый раз, когда активность загружается и отправляется только на 7 вечера.
Он ясно упомянул в сообщении, что он хочет каждый день планировать задание в 7 вечера, поэтому использование manager.setRepeating в этом случае является правильным. – TMS
Да, вы правы, @TMS работает нормально, но всякий раз, когда я начинаю свою деятельность, он автоматически запускается и в то же время. И в 7 часов вечера он также запускается. –
Благодарим вас за очистку @TMS. Если это так, тогда вы можете опубликовать код сокрытия для текущей деятельности? –