Android底层对于无论是软件系统还是硬件系统的控制能力都是非常好的,接口定义也十分明确,我们可以很方便的拿来做自己想要的控制,于是近期在项目中就有做个快速设置的功能,要求一键wifi开闭,移动网络开闭,电池设置,飞行模式,一键打开应用(应用本来就是一键打开的哈),一键拨号……………………各种各种的功能,于是经过一个星期的奋战,这个功能初步完成了编码与测试,不慎完善,至少能用,呵呵,第一次写这个,架构考虑的不全面,以后继续改进,这篇文章呢就贴几段功能实现的代码,由于用到的接口太多,实在不方便写博客了。我打了压缩包,开放源码,想要的童鞋可以去下载,纯手打代码,大家多多支持。
一:自动亮度的开启与关闭
/**
* �?��亮度自动调节
*
* @param activity
*/
public void startAutoBrightness(Activity activity) {
Settings.System.putInt(activity.getContentResolver(),
Settings.System.SCREEN_BRIGHTNESS_MODE,
Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
}
/**
* 停止自动亮度调节
*/
public void stopAutoBrightness(Activity activity) {
Settings.System.putInt(activity.getContentResolver(),
Settings.System.SCREEN_BRIGHTNESS_MODE,
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
}
二:飞行模式的开闭
/**
* 打开关闭飞行模式
*/
public void OpenAirplane(Context context, ImageView childImageView) {
boolean isEnabled = Settings.System.getInt(
context.getContentResolver(), Settings.System.AIRPLANE_MODE_ON,
0) == 1;
if (isEnabled) {
Settings.System.putInt(context.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, 0);
childImageView.setImageDrawable(getResources().getDrawable(
R.drawable.action_airplane_off_default));
} else if (!isEnabled) {
Settings.System.putInt(context.getContentResolver(),
Settings.System.AIRPLANE_MODE_ON, 1);
childImageView.setImageDrawable(getResources().getDrawable(
R.drawable.action_airplane_default));
}
Intent i = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
i.putExtra("state", !isEnabled);
context.sendBroadcast(i);
}
三:蓝牙开闭
/**
* 打开关闭蓝牙
*
*/
public void OpenorCloseBluetooth(Context context, ImageView childImageView) {
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
if (adapter.isEnabled()) {
adapter.disable();// 关闭蓝牙
childImageView.setImageDrawable(getResources().getDrawable(
R.drawable.action_bluetooth_off_default));
Toast.makeText(QuickSettingActivity.this,
getString(R.string.close_bluetooth), Toast.LENGTH_SHORT)
.show();
} else {
adapter.enable();// 打开蓝牙
childImageView.setImageDrawable(getResources().getDrawable(
R.drawable.action_bluetooth_default));
Toast.makeText(QuickSettingActivity.this,
getString(R.string.open_bluetooth), Toast.LENGTH_SHORT)
.show();
}
}
下面再贴一些要用到的权限
<!-- 一键打开wifi -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!-- 设置屏幕亮度 -->
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<!-- 设置蓝牙 -->
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<!-- 设置振动 -->
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="com.sec.android.app.factorymode.permission.KEYSTRING" />
<!-- 调用相机闪光灯 -->
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!-- 改变网络 -->
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<!-- GPS -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
太多了,暂时搞这几个,对大家有用的话,可以去下源码。
开发过程中非常需要注意的是,随着sdk版本的提升,有的系统设置接口有些改变,需要做些调整,还有这个与系统设置关系较为密切,拉取系统服务与数据的时候要及时try And catch,以防报错。下载地址:http://download.csdn.net/user/beiminglei。由于是从项目中扣下来的代码,比较乱,如有兴趣体验比较完整的版本,可以试试我们的项目,https://play.google.com/store/apps/details?id=com.launcher.GTlauncher2&feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5sYXVuY2hlci5HVGxhdW5jaGVyMiJd。
分享到:
相关推荐
Android WiFi设置代理端口一键配置工具,支持一键关闭,一键开启。方便快捷。
Android端app调用系统功能完成电池监控…………………………………………………………………………………………
Android App实现切换网络模式 4G网络 3G网络 2G网络 飞行模式
设置手机WiFi便携热点,并且监听热点打开与关闭,详情请参见我的博客http://blog.csdn.net/u011520181/article/details/46496377
13 Android Code Challenge……………… 14 创建Android 应用程序…………………15 剖析一个Android 应用程序……………………… 15 Activity…………………………………………………………………15 Intent ...
Android Wifi开发的Demo程序,包括Wifi的搜索、连接、数据的传输。
小结 ………………………………………………………………………………………… 163 第 C= 与 Web服 努器的交互 … … ¨ ¨ … … … … … … … ¨ … … … … … … … … … 164 61 建立服务器 …¨…¨……...
1.1 课题背景………………………………………………………………………………………...1 1.2 国内外研究现状…………………………………………………………………………….....2 1.3 发展趋势…………………………...
android一键锁屏源码,强调了一些常见的问题
第一章 前言 ……………………………………………………………………………………………… 2 第二章 可行性论证 …………………………………………………………………………………… 3 第三章 运行环境及开发工具...
用eclipse写的简单计算器app, 闲来无事,用android做一个计算器玩玩,想着做一个私密空间,表面是计算器,按下原先设定的算式后可以跳转到私密界面,当想想有些费事,以后若还有闲散时间,再来实现。
【拯救电源键】最详尽的android开发一键锁屏实例 源码
实现了一键开关的架构,里面包涵WIFI,蓝牙,GPRS,供大家一起学习。。。
本文是【Android开发】wifi开关与wifi连接(密码连接)【地址:http://blog.csdn.net/jingleye/article/details/50416890】博文的demo,这个demo包含了wifi的开关,wifi信息的获取,wifi扫描,wifi有无密码的连接
我自己做android开发找来的实例,有很不错的效果,拿来与大家分享。
Android一键清理后台代码实现,有动画及桌面小部件。 虚拟机环境为Android 4.4 ,API 19
两部手机连接wifi后,通过socket进行数据传输 说明: 测试需要两部安卓手机A,B。A手机创建WIFI热点作为服务器,B手机连接A手机WIFI热点,作为客户端。 //A手机服务器 接收数据步骤:1点击创建Wifi热点2点击"turn_on_...
第2话 android开发之道 7 搭建开发环境 7.1 准备所需软件 7.1.1 android开发需要的工具 7.2 安装所需的软件 7.2.1 安装jdk 7.2.2 安装eclipse 7.2.3 安装eclipse插件(adt) 7.2.4 安装androidsdk...
5 3.3数据库逻辑构造设计………………………………………………………………………………7 3.4 数据库和数据库表创立语法……………………………………………………………………8 四 详细设计〔代码〕………………...
一步一步教你如何实现金山清理大师一键加速快捷方式动画 博客地址: http://blog.csdn.net/ruils/article/details/16922557 以及添加快捷方式到桌面的两种方式 http://blog.csdn.net/ruils/article/details/16923201