Розробка android додатки з використанням wifi мережі, sidstudio

У цій статті ми розглянемо невеликий приклад, як можна дивитися стану включення / вимикання мережі. А також з'ясуємо, як програмно підключитися до мережі.

Для початку проведемо деякі підготовчі роботи. Створимо порожній проект в Android Studio і створимо клас додатки.

Пропишемо його в маніфесті

Отже, в першу чергу нам необхідно отримати від нашої системи сигнал про те, що в системі відбулися якісь події, в нашому випадку це включення і виключення WiFi.

Для цього нам необхідний приймач таких повідомлень. У android є такий компонент як BroadcastReceiver. Він дозволяє слухати зовнішні події і робити реакцію на них. Даний компонент починає виконувати дії з отримання Intent.

Нам необхідно створити клас і пронаследоваться від BroadcastReceiver. назвемо його NetworkMonitor.

Тепер розберемо, що тут написано. Спочатку ми отримуємо об'єкт класу ConnectivityManager. який стежить за станом мережі і потім об'єкт класу NetworkInfo для отримання опису стану мережі. Після цього перевіряємо: ми підключаємося або відключаємося. І потім перевіряємо якщо це Wifi чи ні.

Відмінно. Але як нам тепер його використовувати? Для цього нам необхідно об'єкт цього класу зареєструвати в системі, використовуючи фільтр Intent, в якому будемо вказувати, які події нам необхідно отримувати.

Залежно від завдання, ми можемо реєструвати і відключати в будь-який момент. Давайте ж його запустимо при старті нашого застосування і відключимо, коли наше додатки завершить свою роботу.

Для цього повернемося в клас App та перевизначити наступні методи:

Для того, щоб наш додаток мало доступ до Wifi. пропишемо відразу всі дозволи які нам знадобляться

Якщо запустити наш додаток і подивитися на лог, то побачимо, як ми ловимо сигнал про включенні і виключенні мережі.

Розробка android додатки з використанням wifi мережі, sidstudio

Для пошуку мережі нам необхідно піти за таким же принципом.

Створюємо клас і наслідуючи від BroadcastReceiver:

Ми знаходимо все мережі і просто виводимо інформацію по мережах.

Створимо кнопку, після натискання якої буде проводитися пошук.

Натискаючи на кнопку, ми реєструємо наш об'єкт і проводимо пошук.

Якщо запустимо наш додаток, то побачимо всі доступні мережі в радіусі.

У чледущей частини ми розглянемо, як програмно переключаться між різними мережами з додатком.