Android app后台运行休眠仍然可以运行的方法(确保一直运行)

在播放器app中由于需要用后台service 来播放音乐,所以一旦进入休眠状态时,就有可能被杀掉进程
所以需要让service 一直运行不被杀掉进程

在android 中WakeLock的相关 API可以确保应用程序中后台任务一直运行,使应用程序有能力控制APP的休眠状态。

WakeLock锁机制

当应用申请了WakeLock权限调用相关api后,WakeLock会阻止APP挂起,系统无法进入休眠,即使在灭屏的状态下,应用要执行的任务依然不会被打断。当所有WakeLock被释放(解锁/超时),系统会挂起启动休眠机制进入休眠。

首选申请权限:

<!--WakeLock需要的权限-->
<uses-permission android:name="android.permission.WAKE_LOCK"/>

WakeLock的分类和Flag

1.分类

PARTIAL_WAKE_LOCK: 灭屏,关闭键盘背光的情况下,CPU依然保持运行。
PROXIMITY_SCREEN_OFF_WAKE_LOCK: 基于距离感应器熄灭屏幕。最典型的运用场景是我们贴近耳朵打电话时

你可能感兴趣的:(Android高级进阶,app后台运行不休眠,app休眠服务依然运行)