У меня есть требование в моем приложении, в котором мое приложение всегда должно быть подключено к Интернету (только для 2G/3G). Для этого можно создать службу, которая продолжает проверять, устройство подключено к Интернету или нет. Если нет, тогда мы можем программно подключиться к Интернету (это связано с тем, что мое приложение будет работать в среде с очень небольшим взаимодействием с пользователем, поэтому большинство вещей должно происходить автоматически). «Сервисный» подход хорош, но потребляет значительную батарею из-за постоянного опроса, чего я хочу избежать.Самый эффективный подход к постоянной проверке подключения к Интернету Android.
Я недавно прочитал о трансляции под названием - CONNECTIVITY_ACTION
, что система generates.As в ДоП Изменения в связи беспроводного устройства может быть очень часто, это широковещательный срабатывает каждый раз, когда вы перемещаетесь между мобильными данными и Wi-Fi..
В моем требовании устройство будет подключаться ТОЛЬКО к 2G/3G и никогда не подключаться к Wi-Fi. Так что есть трансляция из системы, с помощью которой я могу узнать изменения в подключении (ON/OFF) к 2G/3G в одиночку? Поскольку в соответствии с приведенной выше цитатой, я заключу, что CONNECTIVITY_ACTION будет запущен только тогда, когда состояние изменится с мобильных данных (2g/3g) на Wi-Fi. Это так? (Пожалуйста, поправьте меня, если я ошибаюсь).
Также, пожалуйста, просветите меня самым эффективным подходом, который я должен использовать, чтобы проверить, что мое устройство постоянно подключено к Интернету (2g/3g) (кроме подхода, основанного на услугах), чтобы затем я мог принять меры для автоматического подключения к Интернету? Заранее спасибо !
Не говоря уже о том, что разные вкусы андроида ведут себя по-разному с этими слушателями. Добавление к тому, что у Samsung есть свой единственный стек и беспорядок вокруг этих частей кода, до такой степени, что поведение на HTC и Samsung сильно отличается. Добавление к усложнению тестовой матрицы. Я тоже переосмыслил свою стратегию. – taxeeta
Вау, спасибо, что выделили разных людей! Я поцарапаю свой мозг для различных подходов :) – Basher51
Да, кодирование - это одна из проблем, тестирование может быть кошмаром. Представьте себе 10 ошибок в неделю только по этой проблеме подключения. Представьте себе атаку DOS на сервере, и вы не узнаете, пока не воспроизведете ее. Соединения DONT для подключения к серверу (с отметками времени). Представьте себе целую 3-дневную попытку исправить атаку DOS, вызванную вашим собственным приложением у одного клиента, который был в лифте. :) Я недавно столкнулся с этим дерьмом. Samsung сделал невозможным сделать что-то в Android из-за их плохой настройки каркаса. – Siddharth