Android Nexus 7平板电脑上的网络类型未知

时间:2013-08-08 07:39:27

标签: android android-networking telephonymanager sim-card

我制作了一个简单的应用程序,显示设备上当前的网络类型。我有Nexus 7英寸平板电脑,显示的值是未知。我知道Nexus 7不是GSM设备,但它不需要SIM卡即可运行。但我从wifi路由器上网,这意味着必须有网络类型。

为什么它给了我未知的价值?

我检查了我的代码,因此它不能成为一个错误,因为仿真的Nexus 7提供了UTMS类型。我使用this page作为参考。

1 个答案:

答案 0 :(得分:2)

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还是蜂窝网络。