我正在使用AlarmManager在后台生成一些服务的应用程序工作。时序对于我们的应用程序非常重要,并且功能不能等待下一个维护时段发生。 要求用户白名单应用程序不是一个问题,但不解决暂停警报的问题。电池消耗也不是一个大问题。打盹模式处理
我想到的第一个可能的解决方案是生成一个始终运行的前台服务来处理重新计划服务而不是AlarmManager,但这样做会转移我们应用程序的大部分基础结构,并且对我们来说不可行。
我刚刚实施的当前修复程序是发送高优先级推送通知,并在接收消息时,采取完全唤醒锁定并打开屏幕以打破打盹模式。
我想知道是否有其他方式打破打盹模式?也可以不采取唤醒锁?实施上述解决方案可能会产生一些影响吗?
P.S.我正在使用UrbanAirship进行推送通知。
*也可以不采取唤醒锁?*是可能的吗? –
在没有打开屏幕的情况下接收高优先级推送通知是否有可能打瞌睡?我正在考虑不在托盘上显示通知,但没有这个功能,打开屏幕会更奇怪。 –
我试图用FCM消息解决类似的问题。但它会在很短的时间内唤醒我的应用程序。你有没有一个好的解决方案? –