Android app后台运行休眠仍然可以运行的方法(确保一直运行)
2023-09-14 09:05:07 时间
在播放器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 onresume函数,Android界面跳转时候onDestroy和onResume的调用顺序
- 74款android开机动画,修改Android系统开机动画
- android androidmanifest需要检测的安全问题
- 适用于 Android™ 的 Windows 子系统 Magisk + LSPosed 指南
- Android n_android 反编译
- 2018最新苹果APP上架App Store流程(超详细)
- 一步步了解iOS APP上架流程,让你的APP顺利进入App Store的大门
- 【错误记录】Flutter / Android 报错 ( AAPT: error: attribute android:requestLegacyExternalStorage not found )
- 【错误记录】Android Studio 编译报错 ( Could not find com.android.tools.build:gradle:4.2.1. )
- 【Android UI】Path 测量 PathMeasure ⑤ ( PathMeasure#getSegment 函数 | 圆形进度条示例 )
- 【Android Gradle 插件】组件化中的 Gradle 构建脚本实现 ⑤ ( 优化 Gradle 构建脚本 | 构建脚本结构 | 闭包定义及用法 | 依赖配置 | android 块配置 )
- [android] socket在手机上的应用详解手机开发
- Android 进程回收之LowMemoryKiller原理篇详解手机开发
- NCR 发布基于 Android/Linux 的 ATM 终端机
- 轻松上手,Oracle入门App就在你身边(oracle入门app)
- 利用Oracle云App,体验极致科技享受(oracle云app)
- Android版Chrome“隐身模式”可能很快就会推出
- 代号“Passport”:Android 12代码显示Google正开发可折叠手机
- 解析Android应用启动后自动创建桌面快捷方式的实现方法
- android音乐播放器监听电话状态实现代码
- android检查手机和无线是否连接的方法