1
我正在開發一個Android應用程序,其中我正在檢查2G,3G和4G移動數據網絡的類型。我正在使用下面的代碼。確定網絡類型是2G,3G還是4G
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
int netType = info.getType();
int netSubType = info.getSubtype();
我正在使用下面的代碼檢查2G連接。
if (netType == ConnectivityManager.TYPE_MOBILE && netSubType == TelephonyManager.NETWORK_TYPE_EDGE)
{
Log.e("2G enabled","2G enabled");
}
並使用下面的代碼檢查3G連接。
else if (netType == ConnectivityManager.TYPE_MOBILE && netSubType == TelephonyManager.NETWORK_TYPE_HSPA)
{
Log.e("3G enabled","3G enabled");
}
上述代碼對於3G無法正常工作。我也嘗試使用下面的代碼。
TelephonyManager.NETWORK_TYPE_HSUPA
TelephonyManager.NETWORK_TYPE_HSPA
TelephonyManager.NETWORK_TYPE_HSDPA
還是無法檢測到3G的可用性。沒有得到我要去的地方錯了!請幫忙!謝謝!
看到此鏈接http://stackoverflow.com/questions/2802472/detect-network-connection-type-on-android希望這會幫助你。 –