- Connect to WPA/WPA2 PSK in Android programmatically
- 2 Answers 2
- Настройка оборудования
- Блог о модемах, роутерах и GPON терминалах Ростелеком
- Ошибка аутентификации при подключении к WiFi на планшете или телефоне Android
- Сохранено, защита WPA\WPA2 на Андроид
- Помогло? Посоветуйте друзьям!
- Ошибка аутентификации при подключении к WiFi на планшете или телефоне Android : 15 комментариев
Connect to WPA/WPA2 PSK in Android programmatically
trying to connect programmatically from Android to my wireless network. THe security type is WPA2, encryption AES. This does not work as expected:
private WifiConfiguration saveWepConfig(String password, String networkSSID) < WifiConfiguration conf = new WifiConfiguration(); conf.SSID = "\"" + networkSSID + "\""; // conf.wepKeys[0] = "\"" + password + "\""; conf.preSharedKey = "\"" + password + "\""; conf.wepTxKeyIndex = 0; conf.hiddenSSID = true; conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK); conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40); return conf; >
2 Answers 2
You only need to set SSID and preSharedKey . Everything else defaults to WPA/WPA2 (might not be true for really old versions of Android).
public static void saveWpaConfig(Context context, String ssid, String passphrase) < WifiConfiguration wifiConfiguration = new WifiConfiguration(); wifiConfiguration.SSID = "\"" + ssid + "\""; wifiConfiguration.preSharedKey = "\"" + passphrase + "\""; WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); int networkId = wifiManager.addNetwork(wifiConfiguration); if (networkId != -1) < wifiManager.enableNetwork(networkId, true); // Use this to permanently save this network // Otherwise, it will disappear after a reboot wifiManager.saveConfiguration(); >>
Ah. i found the solution right after i posted the question:
WifiConfiguration conf = new WifiConfiguration(); conf.SSID = "\"" + networkSSID + "\""; conf.preSharedKey = "\"" + password + "\""; // conf.hiddenSSID = true; // conf.wepTxKeyIndex = 0; // conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK); // conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40); conf.status = WifiConfiguration.Status.ENABLED; conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP); conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP); conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK); conf.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP); conf.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP); conf.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
Настройка оборудования
Блог о модемах, роутерах и GPON терминалах Ростелеком
Ошибка аутентификации при подключении к WiFi на планшете или телефоне Android
Сегодня мы с Вами поговорим о частой проблеме, сопутствующей мобильной технике на базе операционной системы Андроид — ошибке аутентификации. Казалось бы что такого — скорее всего просто ошибка при наборе пароля к сети WiFi. Но когда ключ введён несколько раз и вроде бы правильно, а подключение всё равно не проходит — система либо сразу сообщает: «проблема аутентификации», либо просто пишет — «Сохранено, защита WPA\WPA2».
Вот тут обычный пользователь начинает впадать в ступор. Особенно, если при этом рядом какой-нибудь ноутбук к этой же сети отлично подключается и работает. Попробуем вместе решить эту задачку.
Сохранено, защита WPA\WPA2 на Андроид
Перед тем, как что-либо делать, я бы советовал сделать следующее:
— просто перезагрузите роутер. Парадокс, но в 50% случаев именно это помогает решить все возникающие проблемы, в том числе и ошибку аутентификации.
— попробуйте ещё раз удалить сеть из сохраненных и подключиться заново. Для этого надо нажать на сеть и подержать. Откроется меню, где нужно выбрать пункт «Исключить сеть» или «Удалить». Иногда это помогает, как ни странно.
— обновите прошивку своего маршрутизатора с сайта производителя до самой последней версии. Случается, что причиной ошибки аутентификации является именно кривая микропрограмма домашнего маршрутизатора.
— по возможности сохраните файл с конфигурацией роутера себе на компьютер чтобы потом, в случае чего, не настраивать полностью устройство по новой.
— убедитесь, что Ваша сеть не скрытая, то есть в настройках не установлена галка «Hidden SSID».
— обязательно проверьте, что имя беспроводной сети — SSID — написано на латинице. При этом я не советую использовать спецсимволы, в т.ч. тире и дефисы.
Варианты решения проблемы я рассмотрю универсальные, которые будут актуальны для большинства моделей домашних Вай-Фай маршрутизаторов. В качестве примера буду использовать роутеры TP-Link, а в конце статьи — приведу скриншоты тех же параметров на устройствах от D-Link и ASUS.
1. Попробуйте использовать пароль на WiFi, состоящий только из цифр.
Как показывает статистика, большинство проблем с аутентификацей связаны именно со сложным паролем — кто-то ошибается в символе, или в регистре. Поставив чисто цифровой пароль, Вы исключите ошибку в наборе какого-либо символа. Сделать это можно в настройках безопасности беспроводной сети:
2. Смена типа шифрования.
Ещё один способ, который нередко помогает в случае с планшетами и смартфонами на базе операционной системы Android — смена типа шифрования. У большинства роутеров по умолчанию при выборе стандарта безопасности WPA2-PSK автоматически ставится тип шифрования — AES. И это правильно. Но только вот до сих пор встречаются старые версии Андроида, которые с AES не работают. Поэтому его можно попробовать сменить на TKIP. Делается это так же, в параметрах безопасности:
3. Пробуем использовать WPA-PSK.
Ещё один вариант, который может помочь устранить ошибку аутентификации — смена версии стандарта безопасности. Это часто спасает и в случае использования старых телефонов с Вай-Фай и при использовании новомодных Айфонов и Андроида. И если со старыми аппаратами понятно — те просто с WPA2-PSK работать не умеют. То в случае с новыми устройствами проблема чаще всего в прошивке маршрутизатора. По какой-то причине он неправильно работает с этим стандартом. Поэтому пробуем сменить его на WPA-PSK:
Если этот шаг поможет, то далее пробуйте обновлять прошивку маршрутизатора. На новой версии проблема скорее всего будет устранена.
4. Исключаем режим 802.11N
К сожалению, с самым быстрым беспроводным стандартом N300 работать умеют тоже не все устройства, что так же может усугубить ситуацию. Поэтому в настройках беспроводного модуля пробуем сменить режим «B/G» вместо «B/G/N mixed» и посмотреть результат:
Примечание: Если у Вас аутентификация всё же проходит отлично, а потом долго висит получение IP-адреса и затем пишет «Сохранено, защита WPA\WPA2» — смотрите эту инструкцию.
Если Вы используете роутер D-Link, то для тонкой настройки сети Вай-Фай Вам нужно зайти в расширенные параметры и выбрать соответствующий раздел:
Используемый стандарт, шифрование и пароль на сеть Вы можете сменить в настройках безопасности:
А вот используемый режим менять нужно уже в основных настройках:
На роутерах ASUS производитель вывел все базовые параметры в один раздел — «Общие»:
Если перечисленные выше способы не принесли результата, то Вам стоит проверить ещё одну возможную причину — не включена ли случайно на роутере фильтрация клиентов по MAC-адресам. Если она активна, а MAC устройства там не прописан, то Вы никогда к этой сети не подключитесь, хоть и пароль будет 100% верный.
Помогло? Посоветуйте друзьям!
Ошибка аутентификации при подключении к WiFi на планшете или телефоне Android : 15 комментариев
- Гость18 ноября 2014 в 22:02 У меня не проходит аутентификация, но…
-Я раздаю интернет просто с ноутбука (Использовал Connectify, сейчас использую стандартные средства винды) Хоть с чего раздаю, не помогает.
-Телефон сначала подключался. Недели три он стабильно работал. Но в один прекрасный момент просто перестал подключаться, выдавая ошибку аутентификации. В любом другом месте спокойно подключается и с паролем, и без пароля.