Служба Android не перезапускается на Android 8.1 - PullRequest
0 голосов
/ 05 октября 2018

У меня есть класс, расширяющий класс обслуживания.Я запускаю свой сервис из MainActivity, но сервис не перезапускается при закрытии приложения на Android 8.1

. В моем классе обслуживания у меня есть следующий код:

 @Override
public int onStartCommand(Intent intent, int flags, int startId) {

//some code

    return Service.START_STICKY;
}

, и я запускаю свойслужба, подобная этой:

  MyService myService = new myService();

    final Intent seriviceIntent = new Intent(this, myService.getClass());

    if (!isMyServiceRunning(myService.getClass())) {

        new Thread(new Runnable() {
            @Override
            public void run() {
                this.startService(seriviceIntent);
            }
        }).start();

    }
    else {

        Log.e("service_log", "service is already running");
    }

У меня также есть эта запись в моем файле манифеста

На Android 7 он работает нормально, но не на Android 8.1

Я уже пытался запустить этот сервис без потока или с помощью пользовательского интерфейса, но оба они тоже не работали

1 Ответ

0 голосов
/ 06 октября 2018

Начиная с Oreo, существуют некоторые ограничения на услуги, поэтому вы можете обратиться к этому руководству для перехода на Oreo:

https://developer.android.com/about/versions/oreo/background

или

ИмеетеПосмотрите на этот блог:

https://android.jlelse.eu/keep-those-background-services-working-when-targeting-android-oreo-sdk-26-cbf6cc2bdb7f

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...