Android WifiManager.WifiLock 简介

经过查看网上的资料,知道在手机屏幕关闭之后,并且其他的应用程序没有在使用wifi的时候,系统大概在两分钟之后,会关闭wifi,使得wifi处于睡眠状态。

这样的做法,有利于电源能量的节省和延长电池寿命等。

android为wifi提供了一种叫WifiLock的锁,能够阻止wifi进入睡眠状态,使wifi一直处于活跃状态。这种锁,在下载一个较大的文件的时候,比较适合使用。

WifiLock Allows an application to keep the Wi-Fi radio awake.

一、创建一个wifiLock

1. 

[java]  view plain copy
  1. /** 
  2.  *  
  3.  * @param lockName 
  4.  *            锁的名字 
  5.  * @return wifiLock 
  6.  */  
  7. public WifiLock createWifiLock(String lockName)  
  8. {  
  9.     wifiLock = wifiManager.createWifiLock(lockName);  
  10.     return wifiLock;  
  11.   
  12. }  
 2. 

[java]  view plain copy
  1. /** 
  2.      *  
  3.      * @param lockName 
  4.      *            锁的名称 
  5.      * @param lockType 
  6.      *  
  7.      *            WIFI_MODE_FULL == 1 <br/> 
  8.      *            扫描,自动的尝试去连接一个曾经配置过的点<br /> 
  9.      *            WIFI_MODE_SCAN_ONLY == 2 <br/> 
  10.      *            只剩下扫描<br /> 
  11.      *            WIFI_MODE_FULL_HIGH_PERF = 3 <br/> 
  12.      *            在第一种模式的基础上,保持最佳性能<br /> 
  13.      * @return wifiLock 
  14.      */  
  15.     public WifiLock createWifiLock(String lockName, int lockType)  
  16.     {  
  17.         wifiLock = wifiManager.createWifiLock(lockType, lockName);  
  18.         return wifiLock;  
  19.     }  

二、给wifi添加锁

[java]  view plain copy
  1. /** 
  2.  * 加上锁 
  3.  */  
  4. public void lockWifi()  
  5. {  
  6.     wifiLock.acquire();  
  7. }  

三、给wifi释放锁

[java]  view plain copy
  1. /** 
  2.  * 释放锁 
  3.  */  
  4. public void releaseLock()  
  5. {  
  6.     if (wifiLock.isHeld())  
  7.     {  
  8.         wifiLock.release();  
  9.     }  
  10. }  

四、判断wifi是否被lock锁持用

[java]  view plain copy
  1. /** 
  2.  * 判断wifi的锁是否持有 
  3.  *  
  4.  * @return 
  5.  */  
  6. public boolean isHeld()  
  7. {  
  8.     return wifiLock.isHeld();  
  9. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值