Пожалуйста, добавьте разрешение в файле манифеста
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
и в коде из this BLOG
Проверьте, чтобы увидеть, если он включен или нет:
boolean isEnabled = Settings.System.getInt(
context.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, 0) == 1;
Для переключения его:
// toggle airplane mode
Settings.System.putInt(
context.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, isEnabled ? 0 : 1);
// Post an intent to reload
Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
intent.putExtra("state", !isEnabled);
sendBroadcast(intent);
Чтобы получать уведомления о изменении состояния:
IntentFilter intentFilter = new IntentFilter("android.intent.action.SERVICE_STATE");
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.d("AirplaneMode", "Service state changed");
}
}
context.registerReceiver(receiver, intentFilter);
Спасибо за вашу помощь. –
Этот ответ работает? – theLazyFinder
если эта работа, пожалуйста, принимайте как ответ – theLazyFinder