Как запустить активный работник в фоновом режиме? - PullRequest
0 голосов
/ 24 мая 2018

У меня есть Worker Thread класс расширяет Thread, и я добавляю работников в очередь в этом классе. Я хочу запустить одного работника в фоновом режиме. Это мой сервис и методы onStartCommand

 protected WorkerThread workerThread;
 @Override
 public int onStartCommand(Intent intent, int flags, int startId) {
     if (this.looperThread.isAlive()) {
        this.looperThread.start(); }
    return Service.START_STICKY;
}

и я запускаю службу в своей функции MainActivity, но я закрываю приложение. Я получил ошибку, подобную этой looperThread.start () Исключение нулевой точки . Как я могу запустить работника в бэк-сервисе?Спасибо

1 Ответ

0 голосов
/ 24 мая 2018

Вам нужно намеренное обслуживание.Вы можете поместить весь свой код в рабочий поток внутри него.Вот пример

public class MyService extends IntentService {
    public MyService() {
        super("Cashback IntentService");
    }

    @Override
    protected void onHandleIntent(Intent intent) {
        ....Your code that is to be executed in background goes here
    }
}
...