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

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

благодаря

android,android-emulator,

7

Ответов: 2


8 принят

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

Изменить: вызывая функцию getConnectionInfo () класса WifiManager, вы получите объект WifiInfo

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

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

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


0

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

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;
    }
}
андроид, андроид-эмулятор,
Похожие вопросы