Я занимался некоторыми исследованиями и видел некоторые споры о том, использовать ли приемник вещания или диспетчер сигналов тревоги, я не уверен, что использовать, но вот что я пытаюсь сделать и сделал.Проверьте Интернет в фоновом режиме - Android
У меня есть метод, который проверяет наличие интернет-соединения. А затем обновляет интерфейс.
public void isNetworkAvailable() {
ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = manager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
mLayout.removeView(noInternetView);
checkInternetViewOpen = false;
} else {
if (!checkInternetViewOpen) {
checkInternetViewOpen = true;
mLayout.addView(noInternetView, params);
}
}
}
И в то время как я нахожусь в деятельности, которая будет использовать Интернет, я хочу, чтобы запустить этот раз каждые несколько секунд, чтобы убедиться, что Интернет все еще активен. Как это
while (usingInternet) {
//I need to make it wait
isNetworkAvailable();
}
Я также должен быть не в главном потоке для этого, так что я могу сделать его подождать, а потом я отрегулирует обновление части пользовательского интерфейса на основном протектором.
Так как я могу сделать это на фоновом потоке? И какой вариант использовать?
Спасибо за помощь заранее.
Одно можно сказать наверняка, если вы хотите обновить интерфейс, вы не сможете сделать это из фонового потока. – Nabin
@Nabin Да, я знаю это, я сказал, что буду редактировать это в будущем. –
Чтобы сделать повторное действие, используйте класс Handler – Nabin