# Daily Widget Reco(补充说明 / Overflow) ## 1. 关键配置 - **App Group suiteName**:`group.com.damer.mindfulness` - **后端鉴权**:无 - **多语言**:仅 `en / tc` ## 2. 共享存储 Key(App ↔ Widget) - `widget.config.v1` - 字段:`schema_version=1`、`saved_at`、`apiBaseUrl` - `widget.userProfile.v1_2` - 字段:`schema_version=1`、`saved_at`、`user_profile`(结构对齐 `UserProfileV1_2`) - `widget.dailyReco.v1` - 字段:`schema_version=1`、`saved_at`、`day_key`(本地日 `YYYY-MM-DD`)、`lang`、`item{content_id,text}`、`source` ## 3. 更新策略(双通道) - **Widget 主动拉取**:缓存过期时请求 `POST /v1/reco/widget`,写回 `widget.dailyReco.v1`,并使用 `TimelinePolicy.after` 设定次日刷新 - **App 辅助刷新**: - 启动与回到前台时调用 `ensureDailyWidgetRecoUpToDate` - 成功写入缓存后调用 `WidgetCenter.reloadAllTimelines()`(系统仍可能延迟)