Как узнать устройство подключено к Wi-Fi или 3G, программно - PullRequest
7 голосов
/ 11 августа 2010

Как узнать, что устройство подключено к Wi-Fi или 3G, программно

Спасибо

Ответы [ 2 ]

8 голосов
/ 11 августа 2010

вы можете использовать класс WifiManager, как упомянуто здесь

Edit: вызвав функцию getConnectionInfo () класса WifiManager, вы получите WifiInfo object

WifiInfo имеет функцию getBSSID (), которая дает вам имя подключенной точки доступа

если его значение равно нулю, это означает, что он не подключен ни к одной точке доступа через Wi-Fi (Wi-Fi не включен)

Кстати, ища дополнительную информацию, я нашел этот , который должен ответить на все ваши вопросы о мобильной связи и Wi-Fi

0 голосов
/ 24 июня 2016

вот мой рабочий образец:

public boolean isNetworkTypeMobile() {
    final ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    return (cm!=null && cm.getActiveNetworkInfo()!=null && isNetworkTypeMobile(cm.getActiveNetworkInfo().getType()));
}

public static boolean isNetworkTypeMobile(int networkType) {
    switch (networkType) {
        case ConnectivityManager.TYPE_MOBILE: //0
        case ConnectivityManager.TYPE_MOBILE_MMS: //2
        case ConnectivityManager.TYPE_MOBILE_SUPL: //3
        case ConnectivityManager.TYPE_MOBILE_DUN: //4
        case ConnectivityManager.TYPE_MOBILE_HIPRI: //5
        case 10:
        case 11:
        case 12:
        case 14:
            return true;
        default:
            return false;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...