2016-08-24 19 views
-1

Я хочу периодически выполнять задачу, которая должна запускаться каждые 30 секунд. поэтому я использую ScheduledThreadPoolExecutor или TimerРазница при запуске таймера внутри службы и активности

ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1); 
     executor.scheduleWithFixedDelay(new MyTask(), 0, 30000, TimeUnit.MILLISECONDS); 

class MyTask implements Runnable { 
     @Override 
     public void run() { 
     }   
} 

Вот Timer

Timer timer = new Timer(); 
     timer.schedule(new TimerTask() { 
      @Override 
      public void run() { 
       // do something here 
      } 
     }, 0, 30000); 

Мой вопрос: есть ли какие-либо различия, если я начну выше кода внутри службы/IntentService или внутри одного вида деятельности. Эти действия будут такими же или начнутся внутри службы.

+0

Возможный дубликат [Таймер Android? Как?] (Http://stackoverflow.com/questions/4597690/android-timer-how) – karan

ответ

0

Если вы хотите, чтобы выполнить эту задачу, даже если ваше приложение в Backgroud Затем вы должны использовать service или если вы хотите работать только тогда, когда ваше приложение находится в передней, так что вы можете использовать его в activity

 Смежные вопросы

  • Нет связанных вопросов^_^