一、PowerManager

主要是用来控制电源状态,设置屏幕状态,和电池待机状态

PowerManager  pm = ((PowerManager)getSystemService(POWER_SERVICE));

这里我需要保持屏幕长期唤醒,不被锁屏,所以我调用WakeLock。

WakeLock wake = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK |powerManager.ON_AFTER_RELEASE, **Activity.class );

wake.acquire();//请求执行

相关的flag:

PARTIAL_WAKE_LOCK : 保持CPU 运转,屏幕和键盘灯有可能是关闭的。

SCREEN_DIM_WAKE_LOCK:保持CPU 运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯

SCREEN_BRIGHT_WAKE_LOCK:保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯

FULL_WAKE_LOCK  : 保持CPU 运转,保持屏幕高亮显示,键盘灯也保持亮度

权限获得:

<uses-permission android:name="android.permission.WAKE_LOCK" /  >

二、WindowManager

调用window,设置window里面screenBrightness参数的值,但却短暂设置屏幕亮度的亮度,在某个activity下面才可以生效。

/**

* 设置屏幕亮度

*/

private void setWindowScreen(){

Window localWindow = getWindow();

WindowManager.LayoutParams localLayoutParams = localWindow.getAttributes();

float f = 5 / 255.0F;

localLayoutParams.screenBrightness = f;

localWindow.setAttributes(localLayoutParams);

}

获得权限:

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

发现只有在当前activity下生效,需要改动系统文件下面的相关数值,调用Uri(类似链接)方法。

/**

* 保存屏幕亮度最低

* save light state

**/

public  void saveBrightness(ContentResolver resolver) {

Uri uri = android.provider.Settings.System.getUriFor("screen_brightness");

android.provider.Settings.System.putInt(resolver, "screen_brightness", 0);

resolver.notifyChange(uri, null);

}

三、WifiManager

就是无限管理相关的,类似获得wifi链接名字,判断是否链接,开关等一些和无线相关。

WifiManager manager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);

WifiInfo info = manager.getConnectionInfo();

wifiinfo里面包含很多东西,无限的IP,名字,ISSID,物理地址等很多信息,这里我需要获得查看是否链接实验室的无线获得无线的名字,名字是SSID。

String ssId = info.getSSID();

manager.setWifiEnabled(true);//打开wifi

manager.setWifiEnabled(false);// 关闭wifi

相关权限:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

四、ConnectivityManager

主要管理网络连接相关操作。

ConnectivityManager connManager = (ConnectivityManager)

context.getSystemService(Context.CONNECTIVITY_SERVICE);

NetWorkInfo netinfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI)

NetWorkInfo里面就包括网络连接的信息,包括连接状态,网络是否可用等相关操作

int code = netinfo.getState();

if (wifiState == State.CONNECTED || wifiState == State.CONNECTING)

return 200;// 连接成功

else

return 500; // 连接失败

相关权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

五、ActivityManager

是与系统中所有运行着的Activity交互提供了接口,主要的接口围绕着运行中的进程信息,任务信息,服务信息等。

ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);

MemoryInfo mi = new MemoryInfo();

am.getMemoryInfo(mi);

am.getRunningAppProcesses();

am.getRunningServices();

am.getDeviceConfigurationInfo();

am.killBackgroundProcessed(PackageName);

am.restartPackage(PackageName);

Android各种Manager的更多相关文章

  1. Android SDK Manager 更新代理配置

    转自:http://www.cnblogs.com/tao560532/p/4483067.html 出现问题: 消除SDK更新时,有可能会出现这样的错误:Download interrupted: ...

  2. eclipse不显示Android SDK Manager标签

    新版的eclipse配置好android开发环境后没有显示在window菜单里显示Android SDK Manager,也没有在工具栏里出现android的工具图标.但可以通过android sdk ...

  3. Android SDK Manager中不显示未下载的api解决方案

    Android SDK 在线更新镜像服务器资源用户评价:  / 14 Android SDK 在线更新镜像服务器资源:大连东软信息学院镜像服务器地址:http://mirrors.neusoft.ed ...

  4. 解决Android SDK Manager更新、下载速度慢

    hosts文件里面原来的内容不做修改,只是添加内容 方法/步骤 先看看如何加快更新速度,再说如何更新. 首先更新host文件,如图,打开目录 C:\Windows\System32\drivers\e ...

  5. Android SDK Manager无法更新的解决

    只需要配置一下hosts文件,在文件的末尾添加下面一句: 74.125.237.1 dl-ssl.google.com windows系统中hosts文件的位置为:C:\Windows\System3 ...

  6. Android SDK Manager国内更新代理

    在Android SDK Manager Setting 窗口设置HTTP Proxy server和HTTP Proxy Port这个2个参数,分别设置为: HTTP Proxy server:mi ...

  7. 常用开源镜像站整理android sdk manager

    http://www.cocoachina.com/programmer/20151023/13852.html http://android-mirror.bugly.qq.com:8080/inc ...

  8. Android SDK Manager 无法下载更新,或者更新速度超慢,或者待安装包列表不显示

    解决方法: 转自 http://www.cnblogs.com/tc310/archive/2012/12/21/2828450.html http://jingyan.baidu.com/artic ...

  9. Android SDK Manager 中如果没有相应的镜像ARM XX Image

    Android SDK Manager 中如果没有相应的镜像ARM XX Image 处理做法是:先更新 相应版本Android SDK Tools 然后出现 ARM XX Image

  10. android sdk manager 无法更新解决方法

    因为在开始->运行->cmd 中敲入 ping dl-ssl.google.com -t 始终ping不通 ,关闭cmd后 首先需要下载一个代理服务器下载地址 http://pan.bai ...

随机推荐

  1. ActionBar 通用方法

    自定义actionBar布局:标题居中,左边有返回按键 <?xml version="1.0" encoding="utf-8"?> <Rel ...

  2. UITextField关闭自动联想功能

    在textField输入内容时,如果内容为英文,输入的英文如果不正确的单词就是有红色的线报警,关闭英文自动联想功能 self.autocorrectionType = UITextAutocorrec ...

  3. Mac上面用来录屏的软件(录制gif图片或者mov)

    1.如果是录制视频可以使用Mac自带的QuckTime Player,可以录制电脑桌面也可以录制手机界面 默认是录制电脑左面, 选择录制iPhone,连接上手机,就可以录制界面的内容了 2.如果有需求 ...

  4. ftp服务器可以连接但不能传输数据(proftpd)

    问题:在客户端连接FTP服务器(proftpd)时可以正常连接,但是无法正常传输数据 ftp> ls530 Please login with USER and PASSPassive mode ...

  5. LiteIDE灰调配色方案

    说明 本文写于2017-04-03,使用LiteIDE X31(基于Qt 4.8.5),操作系统为Windows. 使用 LiteIDE下载后解压即可使用.配色方案的所有配置文件都位于liteide/ ...

  6. Unity运动残影技能

    残影实现: 1.List<DrawMesh> list,此list中包含某一帧动画模型网格.材质 2.每过一段时间就将运动物体的模型add到list中(优化:未实现,网格合并) 3.Lat ...

  7. python unittest 测试笔记(一)

    测试最基本的原理就是比较预期结果是否与实际执行结果相同,如果相同则测试成功,否则测试失败. python 单元测试官方文档: [Python: 2.7] (https://docs.python.or ...

  8. python学习第三个坑

    ##########################python 第三章 ################################这一章呢,主要是文件的操作,还有涉及到函数的一部分. PS:整 ...

  9. UVALive-5731

    UVALive-5731 题意 一颗 n - 1 条边的有向树,要求整棵树成为强连通图,一次操作即构建一条路(一笔画), 限制: 新建的路上的所有边必须与原有的边逆向,即构建的路必须在原有的边和点上, ...

  10. apache和nginx支持SSI配置

    今天发现了一种新的语言格式:.shtml 一. 前言 SSI是一种类似于ASP的基于服务器的网页制作技术.将内容发送到浏览器之前,可以使用"服务器端包含 (SSI)"指令将文本.图 ...