java - 报警管理器运行

标签 java android alarmmanager

我有一个在 20:00 运行的 AlarmManager,但当我单击修复它的按钮时也会运行。我只想在 20:00 运行

Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 20);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
AlarmManager a = (AlarmManager)getSystemService(ALARM_SERVICE);
a.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),AlarmManager.INTERVAL_DAY,p);

最佳答案

将以下代码放入您的代码中,以便在特定时间重复闹钟

    if(System.currentTimeMillis() <= c.getTimeInMillis()){

        AlarmManager a = (AlarmManager)getSystemService(ALARM_SERVICE);
        a.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),AlarmManager.INTERVAL_DAY,p);

    }

希望对你有帮助...

关于java - 报警管理器运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14616701/

相关文章:

java - 通用枚举/EnumSet 问题

Java : Get the most similar string

android - 我的 APK 的 META-INF 中的 androidx.XXXX.version 文件是什么?

android - 从 Sqlite 设置多个警报

java - Android:这个VideoView出了什么问题?

java - 克隆 textview 以将其附加到 ViewGroup

java - Facebook4j API : Search

android - 检测默认闹钟应用程序警报

android - 每隔几个小时运行一次任务

java - == 和 equals() 之间的区别