ブログのしゅーくりーむ

技術的なメモとかライフログとか。

Android で、WiFi やBluetooth を有効にしたまま機内モードに移行する

機内モードへ移行する時は、例えば以下のようにするわけだが、機内モードに移行する際、WiFiBluetooth 通信もOFFになる。

Settings.System.putInt(context.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 1);
Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
intent.putExtra("state", true);
context.sendBroadcast(intent);

機内モードへ移行する際、WiFiBluetooth の有効状態を変更させたくない場合、以下の様にAIRPLANE_MODE_RADIOSの設定を書換える。

Settings.System.putString(context.getContentResolver(), Settings.System.AIRPLANE_MODE_RADIOS, "cell");

WiFiBluetooth の有効状態を変更させるようにする場合、以下の様にAIRPLANE_MODE_RADIOSの設定を書換えれば元に戻せる。

Settings.System.putString(context.getContentResolver(), Settings.System.AIRPLANE_MODE_RADIOS, "cell,wifi,bluetooth");