NOTIFICATION REQUIREMENTSKeen PDF v1.0.5 保活通知需求
NOTIFICATION REQUIREMENTS

Keen PDF v1.0.5 保活通知需求

统一收录通知分类、展示前提、频控、场景、模板、路由及后台字段。

27全局规则
9场景组
28文案模板

Keen PDF v1.0.5 保活通知需求

产品:Keen PDF · 平台:Android · 版本:v1.0.5 · 更新日期:2026-09-08

文档状态:通知需求重起草版,供整体审阅。本文按 Tidyvo v1.1.1 的单文档结构,统一定义通知规则、场景、模板、中英文文案、路由和后台字段;并结合本地 PDF、Clean、Recover 竞品的通知机制形成 Keen PDF 自有方案,不讨论未确认的技术实现。

1. 通知分类与适用范围

序号 规则 适用对象 已确认内容 后台控制 / 默认值 案例或说明
1 三类可见通知 全部通知 ①普通通知;②常驻通知;③FCM 可见通知。 不涉及 普通通知负责主动或事件召回;常驻通知和 FCM 可见通知各自执行独立规则。
2 普通通知子类 普通通知 ①主动通知:Keen PDF 主动检查当前真实状态后生成;②被动通知:未完成任务、新增文件、删除、广告外跳、新增截图等真实事件发生后生成。 两类分别控制 每个普通场景只归入主动或被动其中一类。
3 两类独立通知 常驻通知、FCM 可见通知 两类通知不执行普通通知的主动/被动间隔、统一日上限、单场景日上限、候选竞争和普通通知栏上限;各自执行自身规则。Android 系统限制始终有效。 各自按自身规则控制 常驻通知跟随前台服务状态;FCM 可见通知按下发消息规则执行。

2. 展示前提与时间规则

序号 规则 适用对象 已确认内容 后台控制 / 默认值 案例或说明
4 通知下放范围 主动通知、被动通知 仅支持 OFF / ORGANIC_ONLY / PAID_ONLY 三态。OFF 全部关闭;ORGANIC_ONLY 仅自然量用户生效;PAID_ONLY 仅推广用户生效;无法识别来源时不展示普通通知。 后台自定义参数;默认 OFF 三态只控制普通通知。
5 首次通知延迟 主动通知、被动通知 从 App 安装时间起算;未达到首次通知延迟时不展示普通通知。正常升级不重新计时;卸载重装按新的安装时间重新计时;首次打开 App 不重新计时。 后台自定义参数;默认 5 分钟 用户安装 30 分钟后首次打开,不会把延迟重新计算为 0。
6 后台配置兜底 主动通知、被动通知 成功取得并校验通过的新配置后保存为有效配置。拉取失败、超时或内容异常时继续使用上一次有效配置;新安装且从未取得有效配置时,普通通知保持关闭。 固定兜底规则 已保存配置 A,本次拉取失败时继续使用 A。
7 统一展示前提 主动通知、被动通知 必须同时满足:①Keen PDF 处于后台;②屏幕已点亮且已解锁;③处于允许展示时间段;④Android 通知权限和对应渠道可用;⑤用户符合下放范围;⑥场景开关开启;⑦对应类型间隔、统一日上限和当前场景 ID 的单场景日上限均未达到限制;⑧主动场景不在冷却期内;⑨场景真实条件成立;⑩目标路由可安全打开。 各项按对应后台参数判断 App 在前台时不展示普通通知。
8 熄屏与锁屏 主动通知、被动通知 熄屏或锁屏期间不展示普通通知。解锁后重新读取当前真实状态,不补发此前的一次性事件;仍存在且属于主动场景的状态可以重新成为主动候选。 不单独配置 锁屏期间发生的新增文件事件不补发;解锁后也不把该次 B02 事件转成主动通知。
9 展示时间段 主动通知、被动通知 按手机当地时间判断。被动事件发生在允许时间段外时,本次事件不顺延到下一时间段。 开始、结束时间由后台配置;默认 08:00–22:00 23:00 的一次性事件不会在次日 08:00 补发。
10 通知权限时机 全部可见通知 Android 13+ 不在 Splash(启动页)、冷启动或首次进入 Home 时直接申请。用户首次完成 PDF 创建、OCR 等核心任务后,在报告页展示通知价值说明;只有用户点击 Enable Notifications(开启通知) 后才调用系统权限。Settings 保留用户主动入口。 固定规则 用户选择 Not Now(暂不开启) 或拒绝权限后,不在后续冷启动自动重复申请。

3. 频控与候选选择

序号 规则 适用对象 已确认内容 后台控制 / 默认值 案例或说明
11 主动轮询、场景间隔与顺序 全部主动场景 达到首次通知延迟,且 App 在后台、普通通知启用、通知权限和下放范围可用后,统一每 2 分钟启动一次主动轮询。所有主动场景共用同一个 15 分钟间隔参数值,不为单个场景配置不同数值;各场景 ID 分别记录最近一次成功投递时间并独立判断间隔。轮询维护一个场景游标,每轮从游标指向的场景开始,按主动场景 ID 升序依次检查,每个场景 ID 每轮最多检查一次,到最后一个场景后回到第一个场景;跳过关闭或不合格的场景,首个合格且成功投递的场景结束本轮,下轮从其下一个场景开始。若本轮没有任何主动场景成功投递,游标不变;轮询未命中或投递失败时,不更新场景间隔、日计数和模板轮换状态。 active_poll_interval_minutes 默认 2 分钟;default_interval_minutes 默认 15 分钟 Keen PDF 当前主动场景序列为 A01–A04。本轮从 A01 开始并由 A03 首先成功投递时,下轮直接从 A04 开始;A04 后回到 A01。
12 被动通知间隔 全部被动场景 所有被动场景共用一个成功投递间隔;任意被动通知成功投递后,其他被动场景也必须等待。被动间隔不占用主动间隔。 后台自定义;默认 10 秒 B02 成功投递后,随后出现的 B03 仍受同一个被动间隔限制。
13 单次展示与优先级 主动通知、被动通知 同一检查时机最多展示 1 条普通通知;主动与被动同时合格时,被动优先。 固定规则 未完成任务与长期未使用同时合格时,先选择未完成任务。
14 场景选择与模板轮换 主动通知、被动通知 主动场景按规则 11 的场景游标顺序检查,不随机选择;同一时刻有多个被动场景合格时,从合格被动场景池等概率随机选择一个。选定场景后,从该场景本轮尚未投递的合格模板中等概率选择;本轮全部合格模板均已投递后,重新开始下一轮。场景存在两套及以上合格模板时,连续两次不得使用同一模板;仅剩一套合格模板时允许重复使用。模板不设置独立开关、间隔或日上限。 固定规则 A04 首次使用 A04-A 后,下次 A04 成功投递时优先使用 A04-B;A04-A 和 A04-B 均已投递后开始新一轮,但不得连续两次使用同一模板。
15 事件去重与合并 被动通知 同一个真实事件因系统重复回调时只生成一个候选。不同真实事件默认不去重;仅当具体场景明确规定合并窗口或 REPLACE 时,按该场景规则合并。事件去重或合并不替代被动通知间隔、统一日上限和单场景日上限。 固定规则 同一次索引变化出现 3 次重复回调,只生成 1 个候选;B05 的连续截图按自身合并窗口处理。
16 普通通知统一日上限 主动通知、被动通知 全部主动和被动普通通知共用一个当地自然日总上限;所有成功投递合并计数,达到上限后当天不再投递任何普通通知。 scene_daily_limit 默认每天 99 条 当天所有普通通知合计达到 99 条后,即使某个场景尚未达到自身日上限,也不能继续投递。
17 单场景日上限 每个普通场景 所有普通场景共用同一个单场景日上限参数值,不为不同场景配置不同数值;每个场景 ID 分别记录当天成功投递次数并独立判断上限。 default_daily_limit 默认每个场景 ID 每天 5 条 A01 当天达到 5 条后不再参与,但不影响尚未达到自身上限的其他场景;所有场景仍同时受规则 16 的统一日上限限制。
18 场景开关 每个普通场景 每个场景 ID 独立设置开关;关闭后该场景不进入候选池,不影响其他场景。开关属于场景 ID,模板不设置独立开关。 后台自定义参数;默认开启 关闭 A04 不影响 A01 继续参与;不能单独关闭 A01-A。
19 成功投递与计数 主动通知、被动通知 提交前再次确认权限和渠道;成功调用 Android 通知接口后视为成功投递。成功后同时更新对应间隔、当前场景 ID 的日计数、普通通知统一日计数和该场景的模板轮换状态;权限关闭、渠道关闭或创建失败时均不更新。成功投递不等于用户一定看见。 固定统计规则 A01 成功投递后,A01 日计数和普通通知统一日计数同时加 1;用户未点击仍计入频控。
20 日计数清零 主动通知、被动通知 按手机当地自然日统计,当地时间进入次日 00:00 后,普通通知统一日计数和各场景 ID 的单场景日计数全部清零。 固定统计规则 常驻通知和 FCM 可见通知不计入这两层普通通知日上限。
21 主动场景冷却 全部主动场景 任一主动通知成功投递后,对应主动场景 ID 立即进入冷却期;冷却期内该场景不参与主动候选。所有主动场景共用同一个冷却参数值,但 A01–A04 分别记录最近一次成功投递时间并独立计时。未命中、投递失败或用户仅进入目标功能时不更新冷却时间。 active_scene_cooldown_hours 默认 24 小时 A01 成功投递后仅 A01 冷却 24 小时,A02–A04 仍可按各自条件参与;主动场景必须同时满足 15 分钟场景间隔和本规则冷却。
22 并发锁 主动通知、被动通知 同一时刻只允许一个普通通知决策流程;并发落选的检查立即结束,不排队、不补发。 固定规则 文件事件与主动检查同时到达时,只保留先获得决策锁的流程。

4. 通知栏与点击规则

序号 规则 适用对象 已确认内容 后台控制 / 默认值 案例或说明
23 同场景覆盖与显示上限 当前通知栏中的普通通知 每个场景 ID 对应一个固定通知位置,同场景新通知更新或覆盖旧通知;不同场景达到显示上限时,覆盖当前最早展示的普通通知。常驻通知和 FCM 可见通知不占普通通知栏名额。 后台自定义普通通知最大可见数量;默认 1 条 A01 新模板覆盖通知栏中原有 A01;A02 到达时覆盖当前最早的普通通知。
24 普通通知广告链路 主动通知、被动通知 用户点击普通通知后最多执行 1 次广告请求;广告关闭、加载失败、展示失败或无填充后,仍进入对应目标页面。广告外跳返回场景属于特例,点击后直接恢复原任务,不再次请求广告。 固定规则 B04 点击后直接恢复任务,避免再次广告形成循环。
25 独立通知广告链路 常驻通知、FCM 可见通知 常驻通知点击后直接进入目标页,不先展示广告;FCM 可见通知是否展示广告由该条 FCM 配置决定,但最多请求 1 次且失败不能阻塞路由。 FCM 随消息配置;常驻通知固定 常驻通知的快捷入口点击后直接进入对应功能。
26 点击路由 全部可见通知 普通通知进入场景指定页;常驻通知进入用户点击的具体功能;FCM 只能进入预置路由白名单。点击时重新验证目标状态,失效时进入对应功能首页。 普通通知随场景固定;FCM 由后台配置 B03 对应文件已无法恢复时,点击进入 Recycle Bin,而不是打开失效文件。
27 数据边界 全部可见通知 通知标题、正文、PendingIntent、后台字段和埋点不得携带文件名、文件路径、URI、PDF/图片内容、OCR 文本或本地文档列表。 固定规则 B05 只表达“刚才的截图”,不显示真实文件名或 URI。

5. 通知场景、模板、文案与路由

普通通知共 9 个场景组、28 套模板,其中主动通知 4 个场景、被动通知 5 个场景。一个场景对应一个真实状态或一组同源事件;同一场景可以配置多套模板,模板按附加条件进入候选池。

文案统一使用“真实触发或用户问题 + 立即可获得的结果 + 明确行动”的结构。主动功能发现可使用问题式表达,但不得暗示设备上存在未经验证的文件或风险。主文案优先保证通知折叠态可读,避免在一句话内堆叠多个问题、结果或功能;最终截断情况以目标机型真机验证为准。CTA 文案从中英文主文案中独立成列。Long CTA(长按钮文案)沿用当前 CTA 文案,最多 10 个字符;Short CTA(短按钮文案)供小按钮使用,英文必须只使用一个不超过 8 个字符的动作单词,不得使用工具名、页面名、结果状态或多词短语。如果 Long CTA 本身已是符合上述要求的同一动作单词,则只配置一条 CTA,由长、短按钮共同使用,不再重复配置近义词。各语言均按最终展示字符串独立计数,空格和标点计入字符数;长、短 CTA 按按钮规格固定选择,必须单行完整显示,不折行、不截断,不得等发生截断后再动态切换。不得在通知中展示文件名、路径、URI、PDF/图片内容或 OCR 文本;不得使用随机容量、虚假完成状态、文件损坏、文件过期或设备风险话术。

5.1 主动通知场景

顺序 / 场景 ID 触发规则 模板及附加条件 中文文案 English copy(英文文案) CTA 文案 路由 案例
A01|长期未使用 距离最近一次进入 App 前台满 3、7、15 或 30 天;每个时间点只形成一次候选;用户重新进入前台后重新计算。 A01-A|满 3 天 主文案:有 PDF 要处理?常用工具都在这里 Copy: Need a PDF Tool? Open Keen PDF Long CTA: Open App(打开应用)
Short CTA: Open(打开)
Home 满 3 天只形成一次候选,第 4 天不重复。
A01|长期未使用 同上 A01-B|满 7 天 主文案:扫描、OCR、合并,打开即可使用 Copy: Scan, OCR, and Merge in One Place Long CTA: Open App(打开应用)
Short CTA: Open(打开)
Home 用户连续 7 天未进入 App。
A01|长期未使用 同上 A01-C|满 15 天 主文案:把图片或纸质文档转成 PDF Copy: Turn Photos or Paper into a PDF Long CTA: Open Tools(打开工具)
Short CTA: Open(打开)
Home 用户连续 15 天未进入 App。
A01|长期未使用 同上 A01-D|满 30 天 主文案:扫描、阅读、合并或拆分 PDF Copy: Scan, Read, Merge, or Split PDFs Long CTA: Open App(打开应用)
Short CTA: Open(打开)
Home 用户连续 30 天未进入 App。
A02|未使用核心工具 用户至少使用过 1 次主要功能;主要功能包括 Scan、OCR、Image to PDF、Merge、Split 和 Page Edit。当前仍有可用且从未使用的主要功能时,从对应模板中选择 1 个。每个功能模板每次安装最多成功投递一次;A02 成功投递满 24 小时,且用户在此期间至少重新进入过 App 1 次,才允许推荐下一个功能,不要求再次使用或完成主要功能。全部主要功能均已使用或全部模板均已成功投递后,场景永久结束。 A02-A|Scan 从未使用 主文案:纸质文档要保存?扫描后直接生成 PDF Copy: Scan Paper Documents into PDFs Long CTA: Start Scan(开始扫描)
Short CTA: Scan(扫描)
Scan Camera 用户使用过其他主要功能但从未使用 Scan;A02 上次成功投递已满 24 小时,且用户期间重新进入过 App。
A02|未使用核心工具 同上 A02-B|OCR 从未使用 主文案:图片里的文字不好复制?用 OCR 提取 Copy: Extract Text from Images with OCR Long CTA: Run OCR(提取文字)
Short CTA: Convert(转换)
OCR 来源选择 点击后不自动选择用户文件。
A02|未使用核心工具 同上 A02-C|Image to PDF 从未使用 主文案:多张图片不好分享?合成一份 PDF Copy: Turn Multiple Photos into One PDF Long CTA: Create PDF(创建 PDF)
Short CTA: Create(创建)
Image to PDF 点击进入图片选择前的功能入口。
A02|未使用核心工具 同上 A02-D|Merge 从未使用 主文案:多份 PDF 太零散?合并成一个文件 Copy: Merge Multiple PDFs into One File Long CTA: Merge PDFs(合并 PDF)
Short CTA: Merge(合并)
Merge PDF 点击进入选文件入口,不自动勾选文件。
A02|未使用核心工具 同上 A02-E|Split 从未使用 主文案:只需要部分页面?拆分 PDF 更方便 Copy: Split a PDF to Keep the Pages You Need Long CTA: Split PDF(拆分 PDF)
Short CTA: Split(拆分)
Split PDF 点击进入选文件入口。
A02|未使用核心工具 同上 A02-F|Page Edit 从未使用 主文案:PDF 页面顺序不对?重新排序或旋转 Copy: Reorder or Rotate PDF Pages Long CTA: Edit Pages(编辑页面)
Short CTA: Edit(编辑)
Page Edit 选文件入口 只表示页面排序、旋转、删除和提取,不表示正文编辑。
A03|Widget 未添加 用户每次成功完成 1 次核心任务;当前未添加任何 Keen PDF Widget;本次安装内 A03 尚未成功投递过通知。A03 成功投递 1 次后,本次安装内不再提醒。 A03-A|场景成立即可参与 主文案:常用 PDF 工具放到桌面,一点就能打开 Copy: Put PDF Tools on Your Home Screen Long CTA: Add Widget(添加小组件)
Short CTA: Add(添加)
Widgets 二级页的添加入口 添加任意 Keen PDF Widget 后场景永久结束。
A03|Widget 未添加 同上 A03-B|场景成立即可参与 主文案:少一步操作,直接从桌面打开 PDF 工具 Copy: Open Your PDF Tools in One Tap Long CTA: Add Widget(添加小组件)
Short CTA: Add(添加)
Widgets 二级页 后续删除 Widget 不再次提醒。
A04|版本更新 Google Play 返回 UPDATE_AVAILABLE,且可用 versionCode 高于当前版本;根据后台的冷却时间,候选检查读取最近一次有效结果;当天未成功提醒。 A04-A|真实存在更高版本 主文案:Keen PDF 新版本可以更新了 Copy: A New Keen PDF Version Is Ready Long CTA: Update Now(立即更新)
Short CTA: Update(更新)
Google Play App 页;不可用时进入网页商店,再失败回 Home 查询失败、缓存过期或没有更高版本时不展示。
A04|版本更新 同上 A04-B|真实存在更高版本 主文案:获取最新版 Keen PDF Copy: Get the Latest Keen PDF Version Long CTA: Update Now(前往更新)
Short CTA: Update(更新)
同上 每天最多成功投递 1 次。

5.2 被动通知场景

顺序 / 场景 ID 触发规则 模板及附加条件 中文文案 English copy(英文文案) CTA 文案 路由 案例
B01|未完成任务 App 从对应功能进入后台;任务包含可恢复输入;用唯一延时任务按 REPLACE 重排;默认离开 1 分钟后检查。用户返回、完成、取消或状态失效时取消资格。 B01-A|Scan 至少已有 1 个拍摄页面 主文案:已扫描页面还在,继续创建 PDF Copy: Your Scanned Pages Are Waiting CTA: Continue(继续) 原 Scan 任务;状态丢失时进入 Scan Camera 用户拍摄 2 页后离开,1 分钟仍未返回。
B01|未完成任务 同上 B01-B|OCR 至少已有 1 页来源 主文案:文字提取还没完成,继续处理 Copy: Your OCR Task Is Waiting Long CTA: Resume OCR(继续 OCR)
Short CTA: Resume(继续)
原 OCR 任务;失效时进入 OCR 来源选择 OCR 结果已失效时不展示成功话术。
B01|未完成任务 同上 B01-C|Image to PDF 至少已选 1 张图片 主文案:已选图片还在,继续生成 PDF Copy: Your Selected Images Are Waiting Long CTA: Finish PDF(继续创建)
Short CTA: Create(创建)
原 Image to PDF 任务;失效时进入功能入口 用户返回 App 后立即取消通知资格。
B01|未完成任务 同上 B01-D|Merge 至少已选 2 个 PDF 主文案:已选 PDF 准备好了,继续合并 Copy: Your Selected PDFs Are Ready to Merge Long CTA: Merge Now(继续合并)
Short CTA: Merge(合并)
原 Merge 任务;失效时进入 Merge PDF 用户选择 3 个 PDF 后离开。
B01|未完成任务 同上 B01-E|Split 已载入可拆分 PDF 主文案:PDF 已载入,继续选择需要的页面 Copy: Your PDF Is Ready to Split CTA: Continue(继续) 原 Split 任务;失效时进入 Split PDF 来源文件不可读时场景失效。
B01|未完成任务 同上 B01-F|Page Edit 已载入 PDF 且存在有效编辑状态 主文案:页面调整还没完成,继续编辑 Copy: Your PDF Page Edits Are Waiting Long CTA: Edit Pages(继续编辑)
Short CTA: Edit(编辑)
原 Page Edit 任务;失效时进入选文件入口 点击恢复页面级编辑,不表示正文内容编辑。
B02|发现新文件 在用户已授权且 App 可访问的范围内,增量索引确认发现新的可读 PDF、Word、Excel、PPT 或 TXT 文件;排除 Keen PDF 本次刚生成的文件;同一索引批次最多形成 1 个候选。 B02-A|新文件当前仍可读 主文案:发现新文档,点开即可查看 Copy: A New File Is Ready to Open Long CTA: View File(查看文件)
Short CTA: View(查看)
My Files,并定位到对应文件分类 首次全量索引不触发。
B02|发现新文件 同上 B02-B|新文件当前仍可读 主文案:发现新文件,可在 My Files 查看 Copy: New File Found—View It in My Files Long CTA: My Files(打开我的文件)
Short CTA: View(查看)
My Files 通知和埋点不携带文件名、文件类型或 URI。
B03|移入回收站 PDF 成功移入回收站后,以最后一次删除时间为准,用 REPLACE 安排 30 分钟检查。到点时,本次删除周期仍有至少 1 个可恢复 PDF,且本周期尚未成功投递,才形成候选;成功投递一次后本周期结束。发生新的删除操作时重新计时;本次删除周期的相关文件均已恢复或回收站已清空时取消候选。 B03-A|本次删除周期仍有可恢复 PDF 主文案:PDF 删错了?现在还能恢复 Copy: Deleted a PDF by Mistake? You Can Still Restore It CTA: Review(查看) Recycle Bin 同一删除周期最多成功投递一次,连续删除时只保留最后一次删除后的检查任务。
B03|移入回收站 同上 B03-B|本次删除周期仍有可恢复 PDF 主文案:需要找回刚删除的 PDF?回收站里还在 Copy: Need That PDF Back? It's Still in the Recycle Bin CTA: Review(查看) Recycle Bin 点击只进入回收站,不直接恢复文件;文件已无法恢复时不展示。
B04|广告外跳返回 用户从 Keen PDF 的有效任务点击广告并进入外部页面;达到后台配置时间后仍未返回;原任务仍可恢复。 B04-A|原任务有效 主文案:PDF 任务还没完成,返回继续处理 Copy: Your PDF Task Is Waiting CTA: Continue(继续) 恢复外跳前任务 点击后直接恢复任务,不再次请求广告。
B04|广告外跳返回 同上 B04-B|原任务有效 主文案:一点返回刚才的 PDF 操作 Copy: One Tap to Return to Your PDF Task CTA: Return(返回) 恢复外跳前任务 原任务失效时不展示。
B05|截图转 PDF B05 场景开关开启,用户已授予 Keen PDF 读取新增截图所需的文件访问范围,且常驻前台服务正在运行。Keen PDF 处于后台时,通过系统媒体库监听到新增、已写入完成且仍可读取的图片;图片创建时间和系统媒体信息均符合已适配的截图识别规则,并排除历史图片、普通照片及 Keen PDF 自身生成的图片后,形成被动候选。 B05-A|存在至少 1 张仍可读取的本次截图 主文案:把刚才的截图转成 PDF Copy: Turn Your Recent Screenshot into a PDF Long CTA: Create PDF(创建 PDF)
Short CTA: Create(创建)
Image to PDF,自动带入本次候选中仍可读取的截图;全部失效时进入系统图片选择器 通知和 PendingIntent 不携带截图 URI,只传内部事件 ID,进入 App 后再从本地事件记录解析。
B05|截图转 PDF 同上 B05-B|存在至少 1 张仍可读取的本次截图 主文案:截图保存成 PDF,查看和分享更方便 Copy: Save Your Screenshots as a PDF Long CTA: Create PDF(创建 PDF)
Short CTA: Create(创建)
同上 同一媒体条目的重复回调只生成 1 个候选;10 秒内连续识别到的截图合并为 1 个候选,并按最后一次事件重新计时。权限撤销、常驻服务停止、图片不可读或无法明确识别为截图时不触发。

5.3 独立通知

通知类型 触发与内容 文案规则 频控与广告 路由
常驻通知 合法前台服务真实运行期间只展示 1 条,提供 Scan、OCR、Files、Widget、Create PDF 五个入口;Service 停止后移除。 使用 Android 标准通知模板适配浅色/深色;使用专用单色通知图标;渠道开启系统 Badge(角标),具体红点样式由 Launcher 和系统设置决定。 不进入普通通知频控;快捷入口点击不展示前置广告。 Scan Camera、OCR 来源选择、My Files、Widgets 添加入口、Home 创建功能区。
FCM 可见通知 后台下发标题/本地化键、正文/本地化键、受众、发送时段、过期时间和目标路由;Data-only config_refresh 只刷新配置,不展示通知。 服务端不得直接声称发现、完成、删除或恢复了本地文件;需要本地状态时只下发场景 ID,由客户端校验后使用本地模板。 独立执行 fcm_enabled、FCM 受众、时间段、最小间隔和每日上限;广告由消息配置决定,最多请求 1 次且失败不阻塞。 仅允许预置路由白名单;重复、过期、字段缺失或非法路由消息直接丢弃。

6. 后台字段

字段 适用场景或通知 默认值 口径
inactive_milestones_days A01 3,7,15,30 长期未使用的四个一次性时间点。
unused_tool_recommend_interval_hours A02 24 A02 两次成功投递之间的附加业务间隔,与通用场景间隔同时判断;达到该间隔且用户期间至少重新进入过 App 1 次后,才允许推荐下一个未使用的主要功能。
active_poll_interval_minutes 全部主动场景 2 达到首次通知延迟,且 App 在后台、普通通知启用、通知权限和下放范围可用后,每隔该分钟数启动一轮主动场景顺序检查。
default_interval_minutes 全部主动场景 15 所有主动场景 ID 统一使用该间隔,不为不同场景配置不同数值;每个场景 ID 分别记录最近一次成功投递时间并独立判断。
active_scene_cooldown_hours 全部主动场景 24 所有主动场景共用同一个冷却时长参数值,但每个主动场景 ID 在成功投递后分别记录时间并独立冷却;冷却期间不参与候选。
scene_daily_limit 主动通知、被动通知 99 全部主动和被动普通通知共用的当地自然日总上限,所有场景成功投递合并计数。
default_daily_limit 每个普通场景 5 所有场景 ID 统一使用该单场景日上限值,但每个场景 ID 分别计数;模板不单独计数。
app_update_check_interval_hours A04 24 Google Play 更新状态最短查询间隔;主动候选检查不重复请求商店。
unfinished_task_delay_minutes B01 1 离开未完成任务多久后检查。
deleted_pdf_delay_minutes B03 30 移入回收站后的延时检查;新删除事件使用 REPLACE 重排。
ad_return_delay_minutes B04 2 广告外跳多久仍未返回才形成候选。
screenshot_event_merge_seconds B05 10 连续截图事件的合并窗口;窗口内新增且仍可读取的截图合并为一个候选,每次新增截图后按最后一次事件重新计时。
主动轮询时间、主动/被动通知间隔、普通通知统一日上限、单场景日上限、场景开关、模板轮换、展示时间、通知栏显示上限和主动场景冷却统一按本文第 1–4 章执行;开关、间隔、单场景日上限和主动场景冷却均属于场景 ID,模板不单独设置开关、间隔、日上限或冷却时间。