有的时候我们需要 APP 在手机后台运行,但是会遇到手机一旦息屏或者断网,APP 无法正常运行的情况,这是因为手机屏幕关闭之后,并且其他的应用程序没有在使用 Wifi 的时候,系统大概在两分钟之后,会关闭 Wifi,使得 Wifi 处于睡眠状态。而 Wifi 锁 就是 Android 锁屏后 Wifi 不活跃的解决方案。
- public class WifiLockManage {
- //定义WifiManager对象
- private WifiManager mWifiManager;
- //定义一个WifiLock
- WifiLock mWifiLock;
-
- public WifiLockManage(Context context) {
- //取得WifiManager对象
- mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
- }
-
- // 创建一个WifiLock
- public void creatWifiLock() {
- mWifiLock = mWifiManager.createWifiLock("Test");
- }
-
- // 锁定WifiLock
- public void acquireWifiLock() {
- mWifiLock.release();
- }
-
- // 解锁 WifiLock
- public void releaseWifiLock() {
- //判断是否锁定
- if (mWifiLock.isHeld()) {