From 3466799c94227c5ebba9fb201621e745058867ee Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期二, 15 四月 2025 13:18:34 +0800 Subject: [PATCH] add: 消息提醒时间设定;会员到期时间调整; --- app/src/main/java/com/example/firstapp/App.kt | 34 ++++------------------------------ 1 files changed, 4 insertions(+), 30 deletions(-) diff --git a/app/src/main/java/com/example/firstapp/App.kt b/app/src/main/java/com/example/firstapp/App.kt index a3992f7..1a0b34c 100644 --- a/app/src/main/java/com/example/firstapp/App.kt +++ b/app/src/main/java/com/example/firstapp/App.kt @@ -453,41 +453,15 @@ * 设置定时提醒Worker * 配置为每天运行一次检查是否有新的提醒内容 */ - private fun setupReminderWorker() { + fun setupReminderWorker() { Log.d(TAG, "设置定时提醒Worker") - // 方式1:使用周期性执行 - val constraints = Constraints.Builder() - .setRequiredNetworkType(NetworkType.CONNECTED) - .build() - - // 创建周期性工作请求 - val reminderWorkRequest = PeriodicWorkRequestBuilder<ReminderWorker>( - ReminderWorker.REPEAT_INTERVAL, - ReminderWorker.REPEAT_INTERVAL_TIME_UNIT - ) - .setConstraints(constraints) - .addTag("reminder_worker") - .build() - - // 使用 REPLACE 策略确保新配置生效 - WorkManager.getInstance(this).enqueueUniquePeriodicWork( - "reminder_work", - ExistingPeriodicWorkPolicy.REPLACE, - reminderWorkRequest - ) - - // 方式2:设置在特定时间执行(例如每天上午9点和下午18点) + // 仅在特定时间执行(每天指定时间) // 可根据需要设置多个不同时间点的提醒 ReminderWorker.setupScheduledWorker(this, 9, 0) // 上午9:00 - ReminderWorker.setupScheduledWorker(this, 13, 50) // 下午18:00 + ReminderWorker.setupScheduledWorker(this, 13, 50) // 下午13:50 - // 注意:不再立即执行一次提醒检查,避免重复提醒 - // 如果需要立即检查,可以设置一个延迟,例如5分钟后执行 - val delayedWorkRequest = OneTimeWorkRequestBuilder<ReminderWorker>() - .setInitialDelay(5, TimeUnit.MINUTES) // 延迟5分钟执行 - .build() - WorkManager.getInstance(this).enqueue(delayedWorkRequest) + // 不再使用周期性轮询和立即执行的方式 } } \ No newline at end of file -- Gitblit v1.9.3