заставить IntentService не спать, пока он не выполнит управляемый runlerable handler.postDelayed

В onHandleIntent моего моего класса IntentService я создал дескриптор, содержащий исполняемый файл, который должен быть выполнен через 20 секунд. К сожалению, моя служба спит или разрушена до этого периода. Я пытался также с CountDownTimer, но у меня была такая же проблема. У кого-нибудь есть идеи, я могу сделать ожидание onHnadleIntent? Спасибо!

Это код:

 public class MyService extends IntentService {
    //...
    @Override
    protected void onHandleIntent(Intent workIntent) {
        Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
        @Override
        public void run() {
            Log.i("20 seconds later","I am here");
            }
        }, 20000);
        //...
   }
   //...
}

Ответы на вопрос(2)

Ваш ответ на вопрос