在Android应用中每天下午一点二十分触发提醒的代码示例

要将提醒时间设置为每天下午一点二十分,只需将以下代码中的'calendar.set(Calendar.HOUR_OF_DAY, 13);'改为'calendar.set(Calendar.HOUR_OF_DAY, 13);',并将'calendar.set(Calendar.MINUTE, 0);'改为'calendar.set(Calendar.MINUTE, 20);'即可:

// 设置每天的特定时间触发广播接收器
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 13); // 设置小时
calendar.set(Calendar.MINUTE, 20); // 设置分钟

alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, TaskReminderReceiver.class);
pendingIntent = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_IMMUTABLE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);

这样,系统将在每天的下午一点二十分触发一次提醒。

代码解释:

  • Calendar.getInstance():获取当前时间。
  • calendar.set(Calendar.HOUR_OF_DAY, 13);:将小时设置为 13 (下午 1 点)。
  • calendar.set(Calendar.MINUTE, 20);:将分钟设置为 20 。
  • AlarmManager:Android 系统提供的用于管理定时任务的类。
  • alarmManager.setRepeating():设置重复触发的定时任务。
  • AlarmManager.RTC_WAKEUP:设置定时任务在设备休眠时也能唤醒设备并触发。
  • calendar.getTimeInMillis():获取当前时间的毫秒值。
  • AlarmManager.INTERVAL_DAY:设置定时任务的重复间隔为一天。
  • PendingIntent:用于将广播接收器与定时任务关联。
  • TaskReminderReceiver:你的广播接收器类,用于处理提醒事件。

注意:

  • 确保你的广播接收器已经注册到 AndroidManifest.xml 文件中。
  • 在 Android 8.0 (API 级别 26) 及更高版本上,你需要使用 alarmManager.setExactAndAllowWhileIdle()alarmManager.setExactAndAllowWhileIdle() 来设置定时任务,以避免系统将定时任务推迟。
  • 在 Android 9.0 (API 级别 28) 及更高版本上,你还需要为定时任务请求权限,以避免系统将定时任务推迟或完全阻止。

更多信息:

Android 每天下午一点二十分触发提醒的代码示例

原文地址: https://www.cveoy.top/t/topic/bM1a 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录