经过查看网上的资料,知道在手机屏幕关闭之后,并且其他的应用程序没有在使用wifi的时候,系统大概在两分钟之后,会关闭wifi,使得wifi处于睡眠状态。
这样的做法,有利于电源能量的节省和延长电池寿命等。
Android为wifi提供了一种叫WifiLock的锁,能够阻止wifi进入睡眠状态,使wifi一直处于活跃状态。这种锁,在下载一个较大的文件的时候,比较适合使用。
WifiLock Allows an application to keep the Wi-Fi radio awake.
一、创建一个wifiLock
1.
-
-
-
-
-
-
- public WifiLock createWifiLock(String lockName)
- {
- wifiLock = wifiManager.createWifiLock(lockName);
- return wifiLock;
-
- }
2.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public WifiLock createWifiLock(String lockName, int lockType)
- {
- wifiLock = wifiManager.createWifiLock(lockType, lockName);
- return wifiLock;
- }
二、给wifi添加锁
-
-
-
- public void lockWifi()
- {
- wifiLock.acquire();
- }
三、给wifi释放锁
-
-
-
- public void releaseLock()
- {
- if (wifiLock.isHeld())
- {
- wifiLock.release();
- }
- }
四、判断wifi是否被lock锁持用
-
-
-
-
-
- public boolean isHeld()
- {
- return wifiLock.isHeld();
- }