一、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. Java IO详解(六)------序列化与反序列化(对象流)

    File 类的介绍:http://www.cnblogs.com/ysocean/p/6851878.html Java IO 流的分类介绍:http://www.cnblogs.com/ysocea ...

  2. Linux学习第二步(Java环境安装)

    jdk版本:jdk-8u131-linux-x64.rpm 注:以下操作在root用户或具有root权限的用户下操作 一.将 dk-8u131-linux-x64.rpm拷贝到/home目录下 cp ...

  3. C#超简单方法实现两个richtextbox控件滚动条同步滚动

    此文章属于作者原创,转载请注明,谢谢 有时候我们需要实现对照文章等,往往将文本放到两个richtextbox控件中,但是,如果我们需要同步滚动查看,来达到更好的观看效果. 当然,传统的方法重载控件或者 ...

  4. iOS Regex匹配关键字并修改颜色

    引入第三方框架RegexKitLite /** * 根据传入的文字返回一个符合规则的富文本 * * @param title 匹配的文字 * * @return 创建的富文本 */ -(NSAttri ...

  5. [原创]CentOS下Mysql的日志回滚

    一.    环境: a)        Centos-6.5-x64位操作系统. b)        安装mysql.命令:yum install mysql* 二.    配置 a)        ...

  6. python爬虫从入门到放弃(三)之 Urllib库的基本使用

    官方文档地址:https://docs.python.org/3/library/urllib.html 什么是Urllib Urllib是python内置的HTTP请求库包括以下模块urllib.r ...

  7. LINUX 硬盘分区及文件系统

    一,top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. 1. 第一行是任务队列信息 2. 第二.三行为进程和CPU的信息 3. 第 ...

  8. 打印杨辉三角--for循环

    要求打印7行直角杨辉三角 杨辉三角特点: 第1行和第2行数字都为1: 从第三行开始,除去开头和结尾数字为1,中间数字为上一行斜对角两个数字的和. 如下图: 打印结果: 代码如下: package 杨辉 ...

  9. [Leetcode] Sort, Hash -- 274. H-Index

    Given an array of citations (each citation is a non-negative integer) of a researcher, write a funct ...

  10. 使用OTP动态口令(每分钟变一次)进行登录认证

    GIT地址:https://github.com/suyin58/otp-demo 在对外网开放的后台管理系统中,使用静态口令进行身份验证可能会存在如下问题: (1) 为了便于记忆,用户多选择有特征作 ...