Android系统开关
来源:互联网 发布:esp8266 51单片机 编辑:程序博客网 时间:2024/06/11 15:18
一、
亮度调节:
/** * 判断是否开启了自动亮度调节 * * @param contentResolver * @return */public static boolean isAutoBrightness(Context context) {boolean automicBrightness = false;try {automicBrightness = Settings.System.getInt(context.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS_MODE) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;} catch (SettingNotFoundException e) {e.printStackTrace();}return automicBrightness;}/** * 获取当前屏幕亮度 * * @param activity * @return */public static int getScreenBrightness(Context context) {int nowBrightnessValue = 0;ContentResolver resolver = context.getContentResolver();try {nowBrightnessValue = Settings.System.getInt(resolver,Settings.System.SCREEN_BRIGHTNESS);} catch (SettingNotFoundException e) {e.printStackTrace();}return nowBrightnessValue;}/** * 设置亮度 * * @param activity * @param brightness */public static void setBrightness(Activity activity, int brightness) {WindowManager.LayoutParams lp = activity.getWindow().getAttributes();lp.screenBrightness = Float.valueOf(brightness) * (1f / 255f);activity.getWindow().setAttributes(lp);}/** * ̬保存亮度设置状态 * * @param resolver * @param brightness */public static void saveBrightness(Activity activity, int brightness) {ContentResolver resolver = activity.getContentResolver();Uri uri = android.provider.Settings.System.getUriFor("screen_brightness");Settings.System.putInt(resolver, "screen_brightness", brightness);resolver.notifyChange(uri, null);}/** * ͣ 停止亮度自动调节 * * @param activity */public static void stopAutoBtightness(Activity activity) {Settings.System.putInt(activity.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS_MODE,Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);}/** * 开启亮度自动调节 * * @param activity */public static void startAutoBtightness(Activity activity) {Settings.System.putInt(activity.getContentResolver(),Settings.System.SCREEN_BRIGHTNESS_MODE,Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);}二、
飞行模式:
/** * 开启手机飞行模式设置页面 * * @param context */@SuppressWarnings("deprecation")public static void setAirplaneModeOn(Context context) {if (getSystemVersion() >= 17) {Intent startActivityIntent = new Intent(Settings.ACTION_AIRPLANE_MODE_SETTINGS);startActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);if (startActivityIntent.resolveActivity(context.getPackageManager()) != null&& !CommonUtil.isLenoveK900()) {//Modified by wangyanpeng适配联想K900,通过上面的Intent跳转界面错误,所以直接跳转到设置界面context.startActivity(startActivityIntent);} else {Intent intent = new Intent(Settings.ACTION_SETTINGS);intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);if (intent.resolveActivity(context.getPackageManager()) != null) {context.startActivity(intent);}}} else {boolean enable = false;if (getAirplaneMode(context)) {enable = false;} else {enable = true;}Settings.System.putInt(context.getContentResolver(),Settings.System.AIRPLANE_MODE_ON, enable ? 1 : 0);Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);intent.putExtra("state", enable);context.sendBroadcast(intent);}}/** * 判断手机是否是飞行模式 * * @param context * @return true:是 false:否 */public static boolean getAirplaneMode(Context context) {int isAirplaneMode = Settings.System.getInt(context.getContentResolver(), Settings.System.AIRPLANE_MODE_ON,0);return (isAirplaneMode == 1) ? true : false;}
<span style="white-space:pre"></span>/**<span style="white-space:pre"></span> * 获取当前系统版本号<span style="white-space:pre"></span> * @return<span style="white-space:pre"></span> */<span style="white-space:pre"></span>public static int getSystemVersion() {<span style="white-space:pre"></span>int version = android.os.Build.VERSION.SDK_INT;<span style="white-space:pre"></span>return version;<span style="white-space:pre"></span>}
三、
WIFI开关:
/** * 获取WIfimanager对象 * * @param context * @return */private static WifiManager getWifiManager(Context context) {WifiManager wifiManager = (WifiManager) context.getSystemService(Service.WIFI_SERVICE);return wifiManager;}/** * 设置WIFI状态״̬ * * @param context */public static void setWIFIState(Context context) {try {WifiManager wifiManager = getWifiManager(context);if (wifiManager.isWifiEnabled()) {wifiSwitchVisible = false;wifiManager.setWifiEnabled(false);} else {wifiSwitchVisible = true;wifiManager.setWifiEnabled(true);}} catch (Exception e) {}}/** * 获取当前手机是否连接到网络的状态 * * @param context * @return */public static boolean checkNetworkState(Context context) {boolean flag = false;ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo activeNetworkInfo = manager.getActiveNetworkInfo();if (activeNetworkInfo != null) {flag = activeNetworkInfo.isAvailable();}return flag;}/** * 获取״WIFI的状态 * * @param context * @return */public static boolean isWifiEnabled(Context context) {WifiManager wifiManager = getWifiManager(context);return wifiManager.isWifiEnabled();}
四、
移动数据:
public static void setMobileDataStatus(Context context) {if (getSystemVersion() >= 21) {Intent intent = new Intent("/");ComponentName cm = new ComponentName("com.android.settings","com.android.settings.Settings$DataUsageSummaryActivity");intent.setComponent(cm);intent.setAction(CommonDefine.SYS_ACTION_BROWSER);intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(intent);return;}ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);Class<?> cmClass = connManager.getClass();Class<?>[] argClasses = new Class[1];argClasses[0] = boolean.class;// 反射ConnectivityManager中hide的方法setMobileDataEnabled,可以开启和关闭GPRS网络Method method;try {method = cmClass.getMethod("setMobileDataEnabled", argClasses);if (getMobileDataStatus(context, "getMobileDataEnabled")) {method.invoke(connManager, false);} else {method.invoke(connManager, true);}} catch (Exception e) {e.printStackTrace();}}
<span style="white-space:pre"></span>/**<span style="white-space:pre"></span> * 获取移动数据开关状态<span style="white-space:pre"></span> * <span style="white-space:pre"></span> * @param context<span style="white-space:pre"></span> * @param getMobileDataEnabled<span style="white-space:pre"></span> * @return<span style="white-space:pre"></span> */<span style="white-space:pre"></span>public static boolean getMobileDataStatus(Context context,<span style="white-space:pre"></span>String getMobileDataEnabled) {<span style="white-space:pre"></span>ConnectivityManager cm;<span style="white-space:pre"></span>cm = (ConnectivityManager) context<span style="white-space:pre"></span>.getSystemService(Context.CONNECTIVITY_SERVICE);<span style="white-space:pre"></span>Class cmClass = cm.getClass();<span style="white-space:pre"></span>Class[] argClasses = null;<span style="white-space:pre"></span>Object[] argObject = null;<span style="white-space:pre"></span>Boolean isOpen = false;<span style="white-space:pre"></span>try {<span style="white-space:pre"></span>Method method = cmClass.getMethod(getMobileDataEnabled, argClasses);<span style="white-space:pre"></span>isOpen = (Boolean) method.invoke(cm, argObject);<span style="white-space:pre"></span>} catch (Exception e) {<span style="white-space:pre"></span>e.printStackTrace();<span style="white-space:pre"></span>return false;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>return isOpen;<span style="white-space:pre"></span>}
五、
蓝牙:
/** * 蓝牙开关 */public static void bluetoothSwitch() {try {BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();if (isBluetoothOpen()) {bluetoothAdapter.disable();} else {bluetoothAdapter.enable();}} catch (Exception e) {}}/** * 判断蓝牙是否开启 * * @return */public static boolean isBluetoothOpen() {BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();return bluetoothAdapter.isEnabled();}
六
GPS设置页面:
/** * 打开GPS设置页面 * * @param context */public static void gpsSwitch(Context context) {Intent startActivityIntent = new Intent("android.settings.LOCATION_SOURCE_SETTINGS");startActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);if (startActivityIntent.resolveActivity(context.getPackageManager()) != null) {context.startActivity(startActivityIntent);}}/** * 判断GPS是否打开 * * @param context * @return */public static boolean isGPSOpen(Context context) {LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);}
七、
WIFI热点:
public static boolean setWifiApUnabled(Context context) {WifiManager wifiManager = getWifiManager(context);//wifiManager.setWifiEnabled(false);try {Method method = wifiManager.getClass().getMethod("setWifiApEnabled", WifiConfiguration.class, Boolean.TYPE);return (Boolean) method.invoke(wifiManager, null, false);} catch (NoSuchMethodException e) {e.printStackTrace();} catch (IllegalArgumentException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();}return false;}八、
旋转卡关:
/** * 获取旋转开关状态 * * @param context * @return */public static int getRotationStatus(Context context) {int status = 0;try {status = Settings.System.getInt(context.getContentResolver(),Settings.System.ACCELEROMETER_ROTATION);} catch (SettingNotFoundException e) {e.printStackTrace();}return status;}
0 0
- android系统键盘开关
- Android系统开关
- Android 系统快捷开关
- android 系统功能开关调用
- Android原生滑动开关适用主流系统
- android 中常用的系统默认开关
- 开关系统
- android自定义滑动开关控件,适合所有的android系统
- android自定义滑动开关控件,适合所有的android系统
- android自定义滑动开关控件,适合所有的android系统
- android自定义滑动开关控件,适合所有的android系统
- Android系统SVC命令(命令行WIFI开关、GPRS移动数据开关)
- 自定义的滑动开关适用所有的Android系统
- android-----开关ActionBar,开关状态栏
- Android快捷开关实现 Wifi开关、蓝牙开关、GPS开关、同步开关、亮度设置开关
- 系统开关,wifi、手电筒等的开关
- 【Android进阶】Android自定义滑动开关控件,适合所有的android系统
- android应用内获取系统权限,来设置一些系统开关
- metasploit - browser_autopwn2
- MATLAB神经网络学习
- yii中事件的了解
- ListView 和RecyclerView的比较
- 算法0介绍 排序
- Android系统开关
- 华为机试 单词查找、排序、去重
- PHP二维数组排序(sort_array)
- 全局变量与局部变量在内存中的区别详细解析
- MCU低功耗设计(二)实践
- 九度oj 1449
- shell学习
- .net配置authentication实现全局验证
- 黑马程序员-----java基础之数据类型和运算符