デバイスが Wifi に接続されている場合でも、ユーザーが 3G 状態 (オン/オフ) を切り替えられるようにしたい (ここで、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
}