私の IntentService クラスの onHandleIntent で、20 秒後に実行する必要がある runnable を含むハンドルを作成しました。残念ながら、私のサービスはこの期間の前にスリープ状態になるか、破棄されます。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);
//...
}
//...
}