From 2e1edcb7518f20dec30dbd6e1686e9e6b558ec15 Mon Sep 17 00:00:00 2001 From: tj <1378534974@qq.com> Date: 星期三, 16 四月 2025 17:05:12 +0800 Subject: [PATCH] 43 首页登录->首页登录 1.首页弹窗协议同意后,不能默认自动勾选,还需要用户手动勾选 2.退出登录后,再次登录需要手动勾选与用户协议(目前是默认勾选了) 44 首页登录->邀请码 邀请码默认填入“邀请码(选填) 47 数据统计->饼状图数据分类统计问题 1、只统计快递 无需统计还款其他分类 2、图形上下间隔过大" 48 数据统计 天、周、月、年 1.数据统计只统计快递类的,其他分类不需要统计展示,例如取件码记录 2.包括周、月、年的统计环状图,只需要统计快递分类的 --- app/src/main/java/com/example/firstapp/App.kt | 36 ++++++------------------------------ 1 files changed, 6 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..4fba306 100644 --- a/app/src/main/java/com/example/firstapp/App.kt +++ b/app/src/main/java/com/example/firstapp/App.kt @@ -16,6 +16,7 @@ import com.example.firstapp.database.repository.CodeRepository import com.example.firstapp.database.repository.KeywordRepository import com.example.firstapp.database.repository.MsgRepository +import com.example.firstapp.database.repository.ReminderRepository import com.example.firstapp.database.service.RetrofitClient import com.example.firstapp.receiver.CactusReceiver import com.example.firstapp.service.ReminderWorker @@ -47,6 +48,7 @@ val msgRepository by lazy { MsgRepository(database.msgDao()) } val codeRepository by lazy { CodeRepository(database.codeDao()) } val keywordRepository by lazy { KeywordRepository(RetrofitClient.apiService,database.keywordDao()) } + val reminderRepository by lazy { ReminderRepository(this) } companion object { const val TAG: String = "SmsForwarder" @@ -453,41 +455,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