android中锁屏后代码不运行的问题

20 篇文章 0 订阅
1 篇文章 0 订阅

之前在做一个闹钟项目时,使用多线程实现的闹钟功能,测试时发现手机锁屏后后台线程不执行,google官网提供几种方案,

1、DownloadManager 

2、sync adapter 

3、repeating alarms 

4、Google Cloud Messaging 

5、PowerManager


最后选择PowerManager keep the CPU running 

PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
        "MyWakelockTag");
wakeLock.acquire();
wakelock.release();//需要在合适的地方释放
需要添加权限
<uses-permission android:name="android.permission.WAKE_LOCK" />

还有在测试华为手机时锁屏后不执行,华为手机自带的一个省电管理-耗电详情-加入屏幕关闭后保持运行即可;


有不对的地方,或者有更好的方案,欢迎指教




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值