1.核心代码如下:

public static void openAirplaneModeOn(Context context,boolean enabling) {      Settings.Global.putInt(context.getContentResolver(),                       Settings.Global.AIRPLANE_MODE_ON,enabling ? 1 : 0);  Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);  intent.putExtra("state", enabling);  context.sendBroadcast(intent);} 

2.AndroidManifest.xml权限

   

3.说明如下

public static void setAirplaneModeOn(Context context,boolean enabling) {      Settings.System.putInt(context.getContentResolver(),                           Settings.System.AIRPLANE_MODE_ON,enabling ? 1 : 0);      Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);      intent.putExtra("state", enabling);      context.sendBroadcast(intent);  } 
之前用上述的代码,始终报这样的错误:java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.intent.action.AIRPLANE_MODE from pid=25190, uid=10081,后来查看了系统源码 ,终于发现了端倪,原来AIRPLANE_MODE_ON 从Setting.System下移到了Settings.Global下。所以在4.2以上的版本app没有权限修改Setting.Global的,解决的办法就是把应用放到源码中去编译,并且加上
权限。

更多相关文章

  1. Android(安卓)DownloadManager下载并安装apk
  2. Android(安卓)10 文件读写权限申请
  3. 开源分享!2021年最新 Android(安卓)资料汇总,从小白到大佬的进阶之
  4. Android(安卓)NDK 实现视音频播放器源码
  5. android 两个apk之间恭喜数据SharedPreferences
  6. android studio 读取短信
  7. android 6.0权限全面详细分析和解决方案
  8. 改变 Android(安卓)EditText 的边框
  9. Android(安卓)Activity设置全屏

随机推荐

  1. 在android 中使用og4j
  2. Android(安卓)SharedPreferences本地缓存
  3. ❤️烦恼?头疼?不知所措?Android的ANR问题,一剂
  4. Android(安卓)富文本编辑器 - ListItemSp
  5. android TV-Working with Channel Data
  6. Android编译相关
  7. Android的菜单栏Menu用法详解(超详细)
  8. Android:BroadcastReceiver
  9. scrollView的fillviewport
  10. android自定义样式