无法设置闹钟超过20秒

时间:2016-12-06 13:36:11

标签: android broadcastreceiver alarmmanager android-broadcast repeatingalarm

我创建了警报管理器,在我想要的2分钟后调用。但目前,我无法将其设置超过20秒。如果我设置20秒它会返回输出,但是如果我将它设置为20以上我就无法设置。我想把它设置为2分钟。请帮助我。  我添加了警报消防代码

AlarmManager manager = (AlarmManager) ContextGetter.getContext().getSystemService(Context.ALARM_SERVICE);
        Intent intnt = new Intent(ContextGetter.getContext(), AlarmBroadcastReceiver.class);
        intnt.setAction("com.demo.alarmEvent");

        PendingIntent pending = PendingIntent.getBroadcast(ContextGetter.getContext(), 0, intnt, 0);

        manager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+ 30*1000, pending);

请帮助我  我希望它只设置一次。

我也试过这个。

AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
                                                                Intent intnt = new Intent(EnterSysNumber.getInstance(), AlarmReceiver.class);
                                                                intnt.setAction("com.demo.Enter_number");
                                                                PendingIntent pending = PendingIntent.getBroadcast(getApplicationContext(), 0, intnt, 0);
                                                                manager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 120000, pending);

1 个答案:

答案 0 :(得分:0)

在Android N中,您将进入Doze模式。 Doze是一种深度睡眠模式,可以节省电池电量。它会阻止您的服务保留电池电量。

AlarmManager并在低功耗空闲模式下使用setExactAndAllowWhileIdle此持续时间可能会显着延长,例如15分钟..但不建议任何Play商店应用,您将杀死您的用户'电池。