首页 > 代码库 > android 4.2 系统以后的飞行模式
android 4.2 系统以后的飞行模式
Android 4.2 之后 系统不予许第三方软件去设置飞行模式,除非你的app是系统应用,得到了root权限
//获取当前的飞行模式状态 需要根据不同的Android版本进行修改 @SuppressWarnings("deprecation") public boolean isAirplaneModeOn() { //4.2以下 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1) { return Settings.System.getInt(getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) != 0; } else //4.2或4.2以上 { return Settings.Global.getInt(getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 0) != 0; } }
//设置飞行模式 @SuppressWarnings("deprecation") public void setAirplaneModeOn(boolean isEnable) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1) { Settings.System.putInt(getContentResolver(), Settings.System.AIRPLANE_MODE_ON,isEnable ? 1:0); } else //4.2或4.2以上 { Settings.Global.putInt(getContentResolver(), Global.AIRPLANE_MODE_ON, isEnable? 1 : 0); } Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED); intent.putExtra("state", isEnable); sendBroadcast(intent); }
需要注意的是,在4.2上其实App是没有权限修改Setting.Global的,解决办法是把你的App放到系统的system/app目录下,然后install。这样一来,App成为system app,可以获得写Setting.Global的权限。。
android 4.2 系统以后的飞行模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。