Вы можете использовать ScheduledExecutorService для создания и запуска запланированных событий, а затем настроить их следующим образом:
private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(2);
final Runnable r1 = new Runnable() {
@Override
public void run() {
Log.i("TestStuff", "r1 ran at " + new Date());
}
};
final Runnable r2 = new Runnable() {
@Override
public void run() {
Log.i("TestStuff", "r2 ran " + new Date());
}
};
scheduler.schedule(r1, 5, TimeUnit.SECONDS);
scheduler.schedule(r2, 60, TimeUnit.SECONDS);
Обратите внимание, что потоки ничего не могут сделать в интерфейсено вы упомянули «единый сервис», поэтому я предполагаю, что вы все равно делаете все, что не связано с пользовательским интерфейсом.