Одно из моих действий периодически обновляет близких друзей, местоположение которых получается из службы отдыха
В настоящее время я использую postDelay:
private Runnable updateNearbyFriendsTask = new Runnable() {
@Override
public void run() {
list = api.getNearby(.....)
handler.postDelayed(this, UPDATE_RATE);
}
};
Проблема в том, что postDelayed выполняется в потоке пользовательского интерфейса, поэтому этот работающий пользовательский блок с плохим подключением к Интернету.
Как правильно делать периодические фоновые запросы на отдых от активности? Я не хочу создавать сервис для этого, потому что этот метод отдыха используется только в этом упражнении.
EDIT
В настоящее время переключено на использование ScheduledExecutor
this.scheduledExecutor.scheduleWithFixedDelay(new UpdateNearbyFriendsTask(), 0, UPDATE_RATE, TimeUnit.MILLISECONDS);
private class UpdateNearbyFriendsTask implements Runnable() {
@Override
public void run() {
list = api.getNearby(.....)
runOnUiThread(.....)
}
};