Моя задача - запустить сервис, даже если приложение закрыто.запустить сервис, даже если приложение Android закрыто
Мой класс обслуживания:
public class MyService extends Service {
public int onStartCommand(Intent intent, int flags, int startId) {
AudioManager am;
am= (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
if(am.getRingerMode() == AudioManager.RINGER_MODE_NORMAL)
am.setRingerMode(AudioManager.RINGER_MODE_SILENT);
else
am.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
Minute minute = new Minute();
Calendar cal = Calendar.getInstance();
AlarmManager alarms ;
Intent activate = new Intent(this, MyService.class);
PendingIntent alarmIntent = PendingIntent.getService(this, 0, activate, 0);
alarms = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE);
cal.set(Calendar.HOUR_OF_DAY, 00);
cal.set(Calendar.MINUTE, minute.minute);
cal.set(Calendar.SECOND, 00);
alarms.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), alarmIntent);
Toast.makeText(this, "checkOnStart", Toast.LENGTH_LONG).show();
return Service.START_STICKY;
}
}
В моей деятельности:
Intent activate = new Intent(this, MyService.class);
startService(activate);
я пытаюсь использовать службы переднего плана это не помогает мне Но когда я убиваю приложение службы закрыто, то, что я должен сделать, чтобы служба работала после того, как приложение было убито?
Это код всего обслуживания? Метод запуска выполняется, а затем возвращается ... Я не понимаю, почему он должен оставаться в живых. Кажется, что он закончился, потому что он выполнил свои задачи ... – W0rmH0le
, но я возвращаюсь Service.START_STICKY –
Вы правы. Процесс должен быть перезапущен. Кроме того, вы внедрили onStartCommand(), поэтому вы несете ответственность за остановку службы (а не системы). В любом случае, не могли бы вы поделиться всем кодом? И как вы обнаружили, что служба была уничтожена? У меня также есть сервис. В моем случае у меня есть приемник Broadcast, и они продолжают получать сообщения даже после уничтожения Main Thread ... Поделитесь всем кодом или объясните, что вы пытаетесь сделать в этой службе ... Я увидел, что вы запустили диспетчер аварийных сообщений. – W0rmH0le