Я пытаюсь запустить таймер процесса, чтобы он работал в фоновом режиме на андроиде (начинается с нажатия кнопки).Фоновый процесс таймера на android
Таймер должен находиться на 30 секунд и должен продолжать расти в фоновом режиме (с кнопкой дома и выключением питания/экрана).
Как это сделать? Я попытался с обслуживанием и обработчиком, но не работает ...
EDIT
Моя служба отслеживания (процесс с 30 сек)
public class TrackingService extends IntentService {
private Handler mHandler;
private Runnable mRunnable;
public TrackingService() {
super("TrackingService");
}
public TrackingService(String name) {
super(name);
}
@Override
protected void onHandleIntent(Intent intent) {
long timer = 30000;
mHandler = new Handler();
mRunnable = new Runnable() {
@Override
public void run() {
//TODO - process with update timer for new 30 sec
mHandler.postDelayed(this, timer);
}
};
mHandler.postDelayed(mRunnable, timer);
}
}
Мой щелчок кнопки:
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//TODO - start first time and it continued every 30 seconds and continue in the background
startService(Intent intent = new Intent(this, TrackingService.class));
}
});
Добро пожаловать в StackOverflow! Если вы ищете ответ на свой вопрос, вам следует сначала дать нам свой подход, чтобы мы могли помочь вам понять, что вы делаете неправильно/что делать. – YounesM
Вы не можете запускать что-либо на выключенном устройстве. Кроме этого, проверьте «AlarmManager» и/или «JobScheduler» – F43nd1r
Что-то, что нужно помнить о том, чтобы что-то запускать в фоновом режиме, ОС Android оставляет за собой право убить фоновый процесс в любое время, если сочтет это необходимым. Если это критический таймер, который нужно назвать, вы можете пересмотреть свой подход. –