android 管理类Manager

android 管理类Manager(最近在总结这个,不全,待续)

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

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

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

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

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

           ps:一些相关的flag

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

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

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

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


      权限获得:

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


2WifiManager:无限管理相关的,获得wifi链接名字,判断是否链接,开关等一些和无线相关


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

    获得wifimanager后调用

  1. WifiInfo info = manager.getConnectionInfo();  

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

  1. String ssId = info.getSSID();  

    还有控制wifi开关

  1. manager.setWifiEnabled(true);//打开wifi  
  2. manager.setWifiEnabled(false);// 关闭wifi<span style="font-family: 'Microsoft YaHei', 微软雅黑, SimHei, tahoma, arial, helvetica, sans-serif;">  </span>  

    获得相关权限有:

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


3、ConnectivityManager:主要管理网络连接相关操作


  1. ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);  
  1. NetWorkInfo netinfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI)  

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

  1. int code = netinfo.getState();  
  2. if (wifiState == State.CONNECTED || wifiState == State.CONNECTING)            
  3.       return 200;// 连接成功      
  4. else          
  5.       return 500// 连接失败  

    获得权限:

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


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


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

     通过activityManager可以获得很多相关信息:通过名字就可以看出相关信息

  1. <span style="font-family: 'Microsoft YaHei', 微软雅黑, SimHei, tahoma, arial, helvetica, sans-serif;">MemoryInfo mi = new MemoryInfo();  
  2. am.getMemoryInfo(mi);  
  3. am.getRunningAppProcesses();  
  4. am.getRunningServices();  
  5. am.getDeviceConfigurationInfo();  
  6. am.killBackgroundProcessed(PackageName);  
  7. am.restartPackage(PackageName);  
  8. </span>…… 


5、TelephonyManager主要是设计到和手机相关的操作,获得手机一些相关信息,硬件信息,产地等很多信息


  1. TelephonyManager telephone = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);  
  2. String imei = telephone.getDeviceId();  
  3. String model = Build.MODEL;  
  4.    String manufactrer = Build.MANUFACTURER;  
  5.    String id = Build.ID; 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值