代码之家  ›  专栏  ›  技术社区  ›  Sohaib

设备处于空闲状态时AlarmManager被阻止

  •  0
  • Sohaib  · 技术社区  · 7 年前

    我读了很多关于这个的话题,但没有人帮我。 所以当我把闹钟安排在30多分钟后,我把手机放在某个闹钟不能准时工作的地方,但当我打开手机的时候,我发现问题是当手机处于空闲状态时,闹钟管理器被阻塞了 我试了一把警钟,但没有结果

    我在用

    alarmManger.setExact(AlarmManager.RTC_WAKEUP,time,pi) 
    

    我怎样才能使警报在空闲状态下工作

    2 回复  |  直到 7 年前
        1
  •  0
  •   Bunny Bandewar    7 年前

    尝试使用 setExactAndAllowWhileIdle 喜欢 alarmManger.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP,time,pi) .

    还要检查你的应用程序是否关闭了电池otpimission设置,这样Android自定义ROM设备就不会为了省电而终止后台服务。

        2
  •  0
  •   Sohaib    7 年前

    这段代码运行良好:

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    
    
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                        alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP,time,pi);}
                else { 
                       alarmManager.setExact(AlarmManager.RTC_WAKEUP,time,pi);}
    
       }else {
    
    
                alarmManager.set(AlarmManager.RTC_WAKEUP,time,pi);
            }