Cleaner 7 包保活恢复、通知召回与产品族群横向总览
Cleaner 7 包保活恢复、通知召回与产品族群横向总览返回竞品库
报告口径本页直接渲染本地报告真源;静态能力、动态观察、推断和线上未验证项不得互相替代。

Cleaner 7 包保活恢复、通知召回与产品族群横向总览#

样本日期:2026-08-31
测试设备:Pixel 6a,Android 16 / API 36
范围:保活与恢复、通知召回、产品族群;不做可见清理功能盘点。

通知英文原文、中文释义、动态变量、触发条件、频控、通知 ID 和点击路由见:7 包通知场景、文案与触发规则全量摘录

1. 最终结论#

  1. 7 包不是 7 套完全独立技术。 当前可分为三类:Flare 独立族、Clean Sweep Master 独立族、五包白标核心族。
  2. CleanMas + CleanLoom 是已确认的同产品族。 同 Play 开发者、同签名、同业务根、同主域、925 条 strings 精确相同。
  3. BlazeClean + AuraClean 是已确认的同发布者同源代码族。 同 Play 开发者 Alsaeed、548 条 strings 精确相同、组件完全同构,还有 Aura 品牌残留进入 Blaze 包;但签名不同。
  4. NeatPulse 是五包白标核心的独立品牌分支。 与 CleanMas 有 917 条 strings 精确相同,保活和通知算法同构;缺少同开发者/同签名证据。
  5. 五包白标核心最成熟的点不是“永久保活”,而是多入口恢复编排。 specialUse FGS + 2–7 秒 Job + 21–25 分钟 persisted Job + 8 小时 Alarm + Boot + FCM + WorkManager,各包通过常量抖动和换名降低表面相似度。
  6. Android 16 真机证明 Boot 恢复有明显时序差异。 CleanMas、CleanLoom、BlazeClean、AuraClean 本轮通过 Boot 白名单内短 JobService 成功建立 FGS;Clean Sweep Master 和 NeatPulse均有进程/服务启动尝试,但 FGS 被系统拒绝;Flare 的单包测试也未实现开机 FGS 恢复。
  7. Force Stop 仍是统一硬边界。 7 包都没有证据可突破;剩余 6 包本轮强停复测均保持 stopped=true、无 PID,Flare 单包测试同样如此。
  8. 通知召回都不是单一 FCM。 共同覆盖前后台、Home/解锁、包安装卸载、电池、网络、截图、Boot/升级、定时和 FCM;区别主要在配置模型、模板皮肤和频控颗粒度。
  9. 最值得借鉴的是分层验收和统一恢复入口,不是照抄 specialUse 应分别验证划卡、服务销毁、进程死亡、Boot、Doze、Force Stop 和通知权限关闭,不能把组件存在写成效果成立。

2. 样本清单#

# 产品 包名 版本 target base SHA-256 前 12 位 单包报告
1 Flare Cleaner com.flare.cleaner.storage 1.0.7 (8) 36 0df834399bf1 Flare_Cleaner_v1.0.7_...md
2 Clean Sweep Master com.cleansweepmaster.clsm 1.2.0 (1200) 35 e8655ab0550a Clean_Sweep_Master_v1.2.0_...md
3 CleanMas com.clea.mas.pro V1.0.7 (8) 36 b5a9dd1bddb2 CleanMas_v1.0.7_...md
4 CleanLoom com.cleanloom.com V1.1.8 (11) 36 cf913a11f106 CleanLoom_v1.1.8_...md
5 BlazeClean com.blaze.cleaner.clean.storage V1.0.7 (8) 36 fdd7f6d81840 BlazeClean_v1.0.7_...md
6 AuraClean com.auraclean.clean V1.1.9 (20) 36 d5928647bd0b AuraClean_v1.1.9_...md
7 NeatPulse com.np.clean V1.0.3 (4) 36 8b4480f948c9 NeatPulse_v1.0.3_...md

所有样本均由测试机 Google Play 安装,installer 为 com.android.vending,已拉取 base + split 并完成签名摘要和 JADX 静态逆向。

3. 产品族群地图#

Cleaner 7 包
├── 独立族 A:Flare Cleaner
│   └── com.liam.garbagecleaner / freshenupapp.com
├── 独立族 B:Clean Sweep Master
│   └── CoreTaskExecutor / 30s Job / 15m WorkManager
└── 白标核心族 C
    ├── BetterFly Games 分支
    │   ├── CleanMas ─┐ 同签名、同业务根、同 cleanloom.com
    │   └── CleanLoom ┘
    ├── Alsaeed 分支
    │   ├── BlazeClean ─┐ 同开发者、同资源皮肤、签名不同
    │   └── AuraClean  ─┘
    └── 独立品牌分支
        └── NeatPulse:同核心算法与大量相同资源

3.1 族群证据强度#

关系 签名 开发者 代码/资源 域名/残留 结论
CleanMas ↔ CleanLoom 相同 相同 业务根相同;925 strings 相同 cleanloom.com 主域 确认同产品族
Blaze ↔ Aura 不同 相同 548 strings 相同;组件完全同构 Blaze 残留 Aura Activity/Firebase 确认同发布者同源代码族
Neat ↔ CleanMas 不同 未确认相同 917 strings 相同;恢复/通知算法同构 域名不同 高置信同技术母版
五包 ↔ CSM 不同 不同/未确认 恢复链和通知模型不同 无强交叉指纹 不同技术族
五包 ↔ Flare 不同 不同/未确认 结构有相似思想,但实现与资源指纹不同 无强交叉指纹 不同技术族

“同技术母版”只表示代码和产品机制同源,不能直接推出同一公司、同一账号或同一法律主体。

4. 保活恢复横向对比#

产品 主 FGS 快速恢复 中周期 长周期 Boot 本轮 Force Stop
Flare specialUse,ID 66666,START_STICKY 3.816–5.816s Job 约 23m Job + 20m Work 约 8h Alarm 未恢复 FGS 硬边界
CSM dataSync,ID 3,START_STICKY 未见直接快速拉 FGS 30s Job + 15m Work 无同类核心 Alarm 创建进程但 FGS 被拒 硬边界
CleanMas specialUse,ID 8781,START_STICKY 2.469–4.469s Job 24.9m Job 约 8h Alarm 成功 硬边界
CleanLoom specialUse,ID 8781,START_STICKY 3.386–5.386s Job 21.2m Job 约 8h Alarm 成功 硬边界
BlazeClean specialUse,ID 88888,START_STICKY 4.852–6.852s Job 21.0m Job 约 8h Alarm 成功 硬边界
AuraClean specialUse,ID 88888,START_STICKY 3.403–5.403s Job 23.9m Job 约 8h Alarm 成功 硬边界
NeatPulse specialUse,ID 8781,START_STICKY 2.268–4.268s Job 21.6m Job 约 8h Alarm 进程起,FGS 被拒 硬边界

4.1 Boot 成功链的真实机制#

四个成功白标包的系统日志都呈现同一顺序:

普通后台态直接请求主 FGS → DENIED
BOOT_COMPLETED 临时白名单内启动短 JobService → ALLOWED
应用进入 FGS 进程状态
由 JobService 再请求主 FGS → ALLOWED

这说明短 JobService 的价值是作为 Boot 豁免窗口内的前台桥接器。它不是绕过系统限制,而是利用系统在 Boot 场景给出的有限豁免。

NeatPulse 本轮 Boot Receiver 投递较晚,主 FGS和短 JobService都没有拿到有效前台启动资格;CSM 的 SolarMonitor 父类接收逻辑为空,进程初始化后直接启动 dataSync FGS 被拒。单轮结果不能换算成长期成功率,但足以证明“同样写了 Boot Receiver,动态结果会不同”。

5. 通知召回横向对比#

维度 Flare CSM 五包白标核心
常驻通知 ID 66666,中重要性 ID 3,resident ID 8781 或 88888
业务通知 30001–30011 场景 ID Remote Config 驱动 4545/10001 等动态 ID + 模板组
入口 Home/解锁/后台/包变更/电池/网络/截图/Alarm/Boot/FCM 包变更/电池/FCM 为主 TIMER/HIGH/BOOT/HOME/UNLOCK/UPGRADE + 包变更/电池/网络/截图/后台/FCM
本地频控 首次延迟、全局冷却、模板间隔、日上限 总开关、类别上限、首/后续间隔 前台/锁屏/屏幕/方向 + 首次延迟 + cooldown + 场景计数
远端配置 enConf Firebase Remote Config 自有配置模型 + FCM topic
动态业务通知 曾见 H2 ID 30010 本轮只见常驻 CleanLoom/Neat 见 ID4545;Aura 见 ID10001

5.1 能证明与不能证明#

能证明:

  • 客户端存在触发入口、模板、频控字段和点击路由;
  • 正常启动后常驻通知真实存在;
  • 部分业务通知在测试机真实发布;
  • FCM Service 和 topic 订阅路径存在。

不能证明:

  • 服务端当前向哪些用户、何时、以什么优先级发送;
  • APK 默认配置就是线上最终配置;
  • notify() 调用次数等于用户实际展示次数;
  • 强即时性文案中的 RAM/垃圾/存储值一定来自真实扫描;
  • 一次 Boot 成功等于长期可靠率。

6. 对我方最有价值的结论#

6.1 可借鉴#

  • 统一恢复入口,避免 Service、Job、Boot、FCM 各自维护不同状态。
  • 短 JobService 只承担恢复桥接,中/长周期任务承担配置、topic 和通知维护,职责分开。
  • 将划卡、服务销毁、进程死亡、Boot、Doze、Force Stop 分成独立验收用例。
  • 通知按事件入口、首次延迟、冷却、日上限、点击路由和服务端总频控分层。
  • 记录 Boot 白名单是否命中、FGS 请求的系统拒绝原因,而不是只看进程是否出现。

6.2 不建议照搬#

  • 不把 FOREGROUND_SERVICE_SPECIAL_USE 和 subtype quick entry 当通用保活通行证。
  • 不承诺 Force Stop 后恢复或“永久保活”。
  • 不使用未经真实测量支持的“RAM 已满、发现垃圾、电池异常”等召回文案。
  • 不把高重要性业务通知和 FGS 常驻通知混为同一曝光指标。
  • 不仅靠客户端频控;服务端还需时区、退订、人群排除、总上限和实验控制。

7. 未验证项#

  • 多轮重启统计和小米/OPPO/vivo/三星等 ROM 差异。
  • 自然进程回收、长时 Doze、App Standby restricted bucket 下的恢复率。
  • 通知权限关闭后的 FGS、Job、FCM 和业务通知行为。
  • 五包白标核心是否由同一最终法律主体控制;当前只确认技术同源层级。
  • Remote Config / 自有配置接口的当前线上响应和服务端通知策略。
  • 每个业务模板逐条动态展示、点击路由和真实测量值来源。

8. 报告入口#

  • Clean/Flare_Cleaner_v1.0.7_保活恢复_通知召回_产品族群逆向报告.md
  • Clean/Clean_Sweep_Master_v1.2.0_保活恢复_通知召回_产品族群逆向报告.md
  • Clean/CleanMas_v1.0.7_保活恢复_通知召回_产品族群逆向报告.md
  • Clean/CleanLoom_v1.1.8_保活恢复_通知召回_产品族群逆向报告.md
  • Clean/BlazeClean_v1.0.7_保活恢复_通知召回_产品族群逆向报告.md
  • Clean/AuraClean_v1.1.9_保活恢复_通知召回_产品族群逆向报告.md
  • Clean/NeatPulse_v1.0.3_保活恢复_通知召回_产品族群逆向报告.md
  • 样本总目录:Clean/cleaner-7-pack-2026-08-31/
竞品拆包报告库 · 逆向结论按证据等级阅读