Как подключиться к определенному Wi-Fi-соединению в Android?

Я хочу включить/отключить конкретное соединение Wi-Fi из доступных сетей Wi-Fi. Мне указан этот URL-адрес: как программно подключиться к определенной сети Wi-Fi в Android. Но WifiManager.addNetwork(WifiConfiguration) всегда возвращает -1.

Нужно ли отключать текущий Wi-Fi перед попыткой подключения к определенному?

Почему это соединение всегда терпит неудачу?

Как я могу подключиться и включить/отключить определенную сеть Wi-Fi с помощью ssid?

Заранее спасибо,


person Devu Soman    schedule 20.12.2012    source источник


Ответы (1)


По сути, addNetwork вернет -1 в двух случаях:

  • wifiConfiguration имеет значение null
  • удаленное исключение при попытке добавить сеть (хорошо... не очень полезно)

Одна вещь, на которую вы можете посмотреть, это значение поля wifiConfiguration.disableReason (после попытки подключения).

Вот допустимые значения для этого поля:

public static final int DISABLED_UNKNOWN_REASON                         = 0;
public static final int DISABLED_DNS_FAILURE                            = 1;
public static final int DISABLED_DHCP_FAILURE                           = 2;
public static final int DISABLED_AUTH_FAILURE                           = 3;
person ben75    schedule 20.12.2012
comment
Как получить wifiConfiguration.disableReason? - person Devu Soman; 20.12.2012
comment
это общедоступное поле: wifiConfiguration.disableReason - person ben75; 20.12.2012