I would like to turn off the airplane mode if num>50, I implemented this code (from Toggle airplane mode in Android) but when executed I get a force close, can any one help here?
if(num>50){
// read the airplane mode setting
boolean isEnabled = Settings.System.getInt(
getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, 0) == 1;
// toggle airplane mode
Settings.System.putInt(
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);
}
o.k. I implemented the premonitions but i would like to change the if statement:
if num>=50 and airplane mode=on toggle it off
if airplane mode=off and num<50 toggle it on
Can some one help me writing the new code? (I'm a newbie)
You most likely did not add WRITE_SETTING
permissions to your AndroidManifest.xml
:
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
Also note that code:
Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
intent.putExtra("state", !isEnabled);
sendBroadcast(intent);
Is not supposed to work, because according to documentation on ACTION_AIRPLANE_MODE_CHANGED
:
This is a protected intent that can only be sent by the system.
And even though you can currently send this broadcast without System permissions, it may change in future releases of Android.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With