Тип сети неизвестен на планшете Android Nexus 7

Я сделал простое приложение, которое показывает тип сети в настоящее время на устройстве. У меня Nexus 7-дюймовый планшет, и показанное значение неизвестно. Я знаю, что Nexus 7 не является устройством GSM, т.е. ему не нужна SIM-карта для работы. Но я получаю интернет от маршрутизатора Wi-Fi, что означает, что должен быть тип сети.

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

Я хорошо проверил свой код, поэтому он не может быть ошибкой, так как на эмулированном Nexus 7 выдается тип UTMS. Я использовал эту страницу в качестве ссылки.

1 ответ

Решение

TelephonyManager используется только для проверки сотовой связи. Ваше устройство не использует никаких (так как у него нет SIM-карты), таким образом, неизвестное возвращаемое значение.

Если вы хотите проверить соединение WiFi:

ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

if (info != null && info.isConnected()) {
    // device is using WiFi connection
}

Или просто сдайтесь с TelephonyManager и используйте исключительно ConnectionManager:

NetworkInfo info = connManager.getActiveNetworkInfo();
if (info != null && info.isConnected()) {
  // device is using some connection
}

Приведенный выше код проверит наличие подключения любого типа, будь то WiFi или сотовая связь.

Другие вопросы по тегам