如何在连接到Wifi时检查3G是否已启用?

时间:2013-08-23 09:25:22

标签: android android-wifi

我想让用户切换3G状态(ON / OFF)即使设备连接到Wifi(我读here,连接到Wifi时禁用3G节省电池)。

但是,当我检查设备连接到Wifi时的3G状态时,它总是返回断开状态。

我的代码是:

// access to mobile networtk service - 3G
ConnectivityManager connManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mobile = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

// check mobile status
NetworkInfo.State state = mobile.getState(); // returns Disconnected 
Boolean isConnected = mobile.isConnectedOrConnecting(); // returns false

if (isConnected)
{
    // Turn 3G off
}
else
{
    // Turn 3G on
}

1 个答案:

答案 0 :(得分:1)

据我所知,当连接wifi时,Android会自动禁用移动网络连接,因此如果您检查3G的状态,它将仅断开连接。您不需要以编程方式执行此操作,它已存在于Android系统中。

即使在导航面板中,您可能会看到3G已启用,但它与WiFi同时未启用。