Я хочу запустить эту услугу в определенное время суток, но она не ответит. Любые причины, почему это происходит?Alarm Manager работает в определенное время дня
String time = sharedPrefs.getString("change_time", "");
String[] parts = time.split(":");
int chosenHour = Integer.parseInt(parts[0]);
int chosenMinute = Integer.parseInt(parts[1]);
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, chosenHour);
cal.set(Calendar.MINUTE, chosenMinute);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
Intent i = new Intent(this, SmsService.class);
PendingIntent pIntent = PendingIntent.getService(this, 0, i, 0);
AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarm.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 86400000, pIntent);
return super.onStartCommand(intent, flags, startId);
Service.StartService()? и где я это ставлю? –
Да, это API. «Где я могу сказать?» => В зависимости от ваших потребностей, например. если вы хотите немедленно начать свою службу, поместите его в «Application # onCreate()» или вы хотите вызвать его на основе какого-либо события/действия, а затем вызвать метод, когда происходит событие/действие. Но, как я сказал ранее, вы должны поместить код в «Приложение № onCreate()», а не внутри службы. –