AlarmManager熄屏无效

TanHuoPeng 2017-09-28 09:49:48
我在实现一个定时提醒的功能,用的是AlarmManager,现在出现了个问题,就是在手机不熄屏的情况下,闹钟是有效的,但如果中途熄屏闹钟就无效了,加了一些进程保活措施,可还是无效,我现在没有思路如何解决这个问题,或者通过什么方法,途径找到解决的办法。我测试的手机是华为EMUI4.1(android6.0)如果是因为手机功能定制的原因,而我又得适配这个机型,有啥好的思路哟!!!
代码如下:
private void startTimeTask() {
AlarmManager alarmManager = AlarmManagerUtil.getAlarmManager(this);
int limtTime = LIMT_TIME;
long triggerAtTime = SystemClock.elapsedRealtime() + limtTime;
Intent intent = new Intent(ConstantValues.ACTION_TIME_OVER);
PendingIntent pi = PendingIntent.getBroadcast(this, 0, intent, 0);
if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.M)
{
alarmManager.setExactAndAllowWhileIdle(AlarmManager.ELAPSED_REALTIME_WAKEUP,triggerAtTime,pi);
}else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){
alarmManager.setExact(AlarmManager.ELAPSED_REALTIME_WAKEUP,triggerAtTime,pi);
}else{
alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,triggerAtTime,pi);
}
}
...全文
517 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
h7key 2018-04-10
  • 打赏
  • 举报
回复
这个应该是华为手机的问题,他们应该是修改了AlarmManager,测试其他手机就没发现这个问题
TanHuoPeng 2017-10-01
  • 打赏
  • 举报
回复
可以呀,不过只要中途熄屏了,即便时间到了再让它亮屏也是无效的
xiaxiao_new 2017-09-30
  • 打赏
  • 举报
回复
那你可不可以在时间到的时候让它亮屏呢?
魔爱 2017-09-29
  • 打赏
  • 举报
回复
换一种alarmManager的参数类型的,有的参数可能不支持休眠状态计时。 我一般都采用这种参数 mAlarmManager.set(AlarmManager.RTC_WAKEUP,System.currentTimeMillis()+20000,idleIntent);
TanHuoPeng 2017-09-29
  • 打赏
  • 举报
回复
我试了一下,还是和原来的现象一样噢,熄屏了就失效

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧