Создать фоновый таймер для загрузки данных:
AsyncLoaderTimer bgTimer = new AsyncLoaderTimer(); //новое поле класса MainActivity
class AsyncLoaderTimer extends AsyncTask<Long, Void, Void> {//класс фонового таймера
@Override
protected Void doInBackground(Long... longs) {
while (isCancelled()) {
try {
Thread.sleep(longs[0]);
} catch (InterruptedException e) {
e.printStackTrace();
}
publishProgress();
}
return null;
}
@Override
protected void onProgressUpdate(Void... values) {
getWeb();
}
}
@Override
protected void onStart() {
super.onStart();
bgTimer.execute(2_000L); //интервал миллисекунд
}
@Override
protected void onStop() {
super.onStop();
bgTimer.cancel(false);
}
То как Вы хотите реализовать обновление данных - не лучшая практика. Вам лучше посмотреть как реализовывать такие клиент-серверные решения.