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后台运行休眠仍然可以运行的方法(确保一直运行)相关推荐
- Android app 后台被杀恢复
android 模拟应用因内存不足被后台杀死命令 https://www.jianshu.com/p/effb4546b9aa adb shell am kill-all 应用通过home键已经停留 ...
- android app后台收不到消息,不打开智能关怀App收不到手表发的消息
不打开智能关怀App手机收不到手表发的聊天消息.进出安全区域.开关机.视频通话.奖励等消息通知.一般是由于智能关怀App 的后台保护设置及消息通知权限设置未正确设置导致的,以下为常见机型智能关怀App ...
- 视频播放的方法Android,详解Android App中使用VideoView来实现视频播放的方法
通过VideoView播放视频的步骤: 1.在界面布局文件中定义VideoView组件,或在程序中创建VideoView组件 2.调用VideoView的如下两个方法来加载指定的视频 (1)setVi ...
- Android App后台、锁屏运行,百度定位不实时定位。未解问题,求大神指教?
细节描述: 功能需要实现:App 一直给后台上传经纬度.(正常运行,后台运行,锁屏运行) 问题描述:红米Note 5A. 在A点,App 锁屏,走到B 点,然而在A---B之间一直上传的是A点锁屏前的 ...
- Android app本地图片转换成Drawable对象的方法
app开发中把app的res下drawable的图片转换成drawable对象 也是常有的功能 下面就记录下两种转换的方法 第一种 方法 借助ContextCompat 转换方法 Drawable d ...
- Android APP 保持屏幕常亮的三种方法
方法一:持有WakeLock 首先获取WakeLock相关权限: <uses-permission android:name="android.permission.WAKE_LOCK ...
- Android app应用开发高级进阶系列专栏解读
1.前言 在从事android app开发的几年里,最开始接触做android 都是从app开发开始做的,在做app的这几年中把积累下来的做的一些功能,都整理出来了作为自己的技术资料,在以后开发类似的 ...
- 使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决
在工程ndk22/bin/classes中 运行javah com.cn.ndk22.Ndk22.Activity ,出现了.h文件 我在bin/classes目录中 ,就是无法访问, : 错误:无 ...
- 新建Application 报错android.app.Application cannot be cast
我在开发APP的时候重新使用了一个类,继承了android.app.Application.但是在运行的时候提示java.lang.ClassCastException: android.app.Ap ...
最新文章
- c语言编写二次方程求根程序,一元二次方程求解程序完整代码
- Java加载sklearn训练好的模型进行预测(无法搞定)
- python将dataframe写入csv_Pandas dataframe数据写入文件和数据库
- Redis持久化(转载)
- pycharm console日志如何输出到txt_日志记录——logging模块
- linux “命令行自动补全”功能用命令
- 特斯拉涨价:Model 3价格上调1万元 Model Y上调2.1万
- 服务器重置密码后无法启动不了怎么办,Windows Server 2008 R2 忘记密码的处理方法...
- DRAM知识整理系列(三):部分时序参数整理
- 数据分析在网络营销中的意义有哪些
- 程序猿生存指南-7 相亲之路(下)
- 教你如何做一个三角形
- 主板知识详解:主板结构
- eclipse 编译Android,如何用eclipse编写android程序
- 苹果手机怎么投屏到电脑,手机投屏电脑的方法
- CIC-IDS-2018数据集分析笔记
- matlab编写扫雷,【matlab编程】Matlab版扫雷
- J2EE Development without EJB
- JSP基础教程:熟悉JSP服务器
- 计算并输出sin(x)、cos(x)、|x|、ex、xy的值