title: postDelayed() in a Service
body: <p>I'm trying to restart service from itself in a few time. My code looks like this (inside the <code>onStartCommand(...)</code>)</p>
  
  <pre><code>Looper.prepare();
  Handler handler = new Handler();
  handler.postDelayed(new Runnable() {
              @Override
              public void run() {
                  Intent intent = new Intent(BackgroundService.this, BackgroundService.class);
                  startService(intent);
              }
          }, 3 * 60000);
  </code></pre>
  
  <p>Service is running in the foreground while this code executes, but it doesn't seem to call <code>onStartCommand(...)</code> . 
  Is there any other way to restart service from itself in a few time?</p>
  
  <p>UPD: I've found out that it actually restarts service, but not in a given time (may take up to 30 minutes instead of given 3). So now the question is how to make it restart consequently</p>