Swift Clean v1.0.9 样本与证据索引
Swift Clean v1.0.9 样本与证据索引返回竞品库
报告口径本页直接渲染本地报告真源;静态能力、动态观察、推断和线上未验证项不得互相替代。

Swift Clean v1.0.9 样本与证据索引#

文档日期:2026-10-12
核验日期:2026-09-30
对象:Swift Clean-Phone Manager Pro
证据口径:[S1] APK、Manifest、DEX、资源或反编译源码直接可证;[I] 基于多处静态证据的合理判断;[U] 需真机、服务端或线上配置验证。
本轮边界:只做 base + split APK 静态拆包;未操作测试机。evidence/ 中已有动态材料由根任务采集,本报告只建立回查入口,不把它们冒充本轮静态验证。

1. 样本身份#

项目 结果 证据
实际包名 com.swiftclean.phone.managerpro [S1] jadx/resources/AndroidManifest.xml:2-14
初始输入中的近似包名 com.swift.clean.phone.managepro 与样本不一致 [S1] 样本 Manifest;不能按近似包名外推
应用标签 Swift Clean(资源前含空格) [S1] AndroidManifest.xml:80-95、res/values/strings.xml
版本 versionName=1.0.9,versionCode=11 [S1] AndroidManifest.xml:3-4
SDK minSdk=26、targetSdk=36、compileSdk=36 [S1] AndroidManifest.xml:5-14
DEX 4 个:classes.dex–classes4.dex [S1] base APK ZIP 条目
ABI / density split arm64_v8a、xxhdpi [S1] 样本文件名及 split Manifest
Application 包装层 com.pairip.application.Application [S1] AndroidManifest.xml:80-95;具体委托链未完整恢复 [U]

2. APK 文件、大小与摘要#

文件 大小 SHA-256
apk/base.apk 52,468,878 bytes e249f9e259cecd496d4e953e2a1d3cf45a981f4cfe6534357c7b345ee3f6d377
apk/split_config.arm64_v8a.apk 3,454,153 bytes 78792c2fde84a9e94dbd58938a5dc4181c6258d751017e03138450b683cff671
apk/split_config.xxhdpi.apk 83,486 bytes a633b24e094d58c935fba868c604719e6aca92f8af0ab0dc247f1a3558be9dd0

签名核验结果 [S1]:v2、v3 有效;v1、v3.1、v4 未使用;Source Stamp 有效。唯一签名证书 SHA-256 为 24dfaec33dda700e680fd86c5c8170882eef58fca0dbfa5d913c6e7aa4d2e12c;Source Stamp 证书 SHA-256 为 3257d599a49d2c961a471ca9843f59d341a405884583fc087df4237b733bbd6d。证书 DN 的开发者字段均为 Unknown,不能据此识别主体 [U]。

3. 拆包方法与完整性#

  • [S1] 使用工作区 tools/jadx-1.5.5,以 Android Studio JBR 为 Java Runtime,将 base 与两个 split 一次性输入,输出到 jadx/。
  • [S1] 产物共 28,203 个 Java 文件、3,006 个资源文件。
  • [S1] JADX 结束码为 3,控制台明确报告 finished with errors, count: 61。
  • [S1] 对通知总闸、广播、定时通知、FCM、生命周期、通知监听和启动 Provider 等关键失败方法,另以 --decompilation-mode simple --show-bad-code 固化到 jadx-simple/。
  • [U] 61 个错误并不代表 61 个业务方法全部不可读;也不能保证 simple mode 还原了 Kotlin 控制流的每个细节。报告对 simple mode 证据均保留路径与行号,并避免把可疑分支写成已验证行为。

4. 关键静态证据导航#

4.1 Manifest、组件与权限#

主题 入口
包、版本、SDK、29 项权限 jadx/resources/AndroidManifest.xml:2-79
自有页面 AndroidManifest.xml:96-206
通知监听、启动 Provider AndroidManifest.xml:234-257
FGS、JobService、FCM、开机/升级接收器 AndroidManifest.xml:258-295
Google Mobile Ads 与 Firebase 组件 AndroidManifest.xml:299-403
完整第三方组件 AndroidManifest.xml:299 以后;以 Manifest 全文为准

自有组件统计 [S1]:25 个 Activity(2 个 exported)、5 个 Service(4 个 exported,其中多个受系统级绑定权限约束)、4 个 Receiver(4 个 exported)、1 个自有启动 Provider;另有 AndroidX FileProvider。全 Manifest 合并后共 101 个 Activity、20 个 Service、19 个 Receiver、11 个 Provider,绝大多数来自广告、Firebase、AndroidX 等依赖。

4.2 产品功能#

功能 证据
缓存清理、大文件、截图、相似照片、应用管理、网络流量、设备信息、通知清理、RAM 状态 jadx/sources/crown/arithmetic/floor/page/ScanPage.java:155-202
All files access(所有文件访问)门槛 MainPage.java:322-341,443-456,494-503
Usage Access(使用情况访问)门槛 MainPage.java:443-451,505-516
应用卸载入口 AppListPage.java:220-237
单 App 缓存大小 jadx/sources/tf/i.java:84-127
单 App 网络用量 jadx/sources/tf/f1.java:66-85
通知拦截与记录 NotifyManagerServices.java:51-75、jadx-simple/crown.arithmetic.floor.notify.NotifyManagerServices.java:55-103

4.3 保活、后台恢复与拉活#

主题 证据
进程启动 Provider jadx-simple/crown.arithmetic.floor.cIPhUu.java:63-160
启动总装配 jadx/sources/qf/u.java:57-131
前台服务启动与 Job 兜底 qf/b.java:213-282
Alarm、WorkManager、周期 Job qf/b.java:295-346,419-507
FGS 自恢复 crown/arithmetic/floor/mowxgu.java:34-121
Boot / package replaced crown/arithmetic/floor/weqTnpsB.java:18-35
FCM 高优先级拉活 jadx-simple/crown.arithmetic.floor.wSfChcdBg.java:50-254
App 热启动回前台与广告回跳通知 jadx-simple/crown.arithmetic.floor.TotalPageObserver.java:69-116,225-365
通知总闸与频控 jadx-simple/a.a.java:503-916
通知重复展示 jadx-simple/qf.w.java:60-151

4.4 广告与远程配置#

主题 证据
TradPlus SDK 初始化 jadx/sources/tf/q.java:32-43
广告位、格式与限制 jadx/sources/dg/l.java:40-171
Remote Config 读取与应用 jadx/sources/tf/u.java:58-126
RC fetch/realtime listener jadx-simple/tf.u.java:221-300、tf/r.java:39-48
内置广告瀑布兜底 jadx/resources/assets/max0.json–max3.json
启动/扫描广告调用点 FirstPage.java、ScanPage.java、TpnConfig$FullHelper.java

4.5 通知资源与多语言#

主题 证据
Channel、ID、重复间隔 PageCellar.java:39-55、qf/t.java:52-86
24 个相关 notify_* 字符串(23 个路由 action + 1 个 FCM 内部前缀) MainPage.java:97-318、uf/j.java:23-27、jadx-simple/crown.arithmetic.floor.wSfChcdBg.java
英文通知资源 jadx/resources/res/values/strings.xml:609-697
语言声明 jadx/resources/res/xml/locales_config.xml:1-11
8 套资源 values、values-ja、values-pt、values-th、values-es、values-zh、values-in、values-vi;每套 89 个 tongzhi_* 键

5. simple-mode 补证文件#

以下是普通模式失败或关键控制流不够完整时的补证,不是手工改写源码:

  • jadx-simple/a.a.java:通知总闸、归因分支与逐场景冷却。
  • jadx-simple/gd.c.java:系统广播到通知 action 的映射。
  • jadx-simple/tf.a0.java:4 类定时通知随机候选。
  • jadx-simple/tf.u.java:Remote Config 初始化与实时监听。
  • jadx-simple/uf.a.java:解锁通知与未清理天数分支。
  • jadx-simple/qf.w.java:3.5 秒重复展示逻辑。
  • jadx-simple/qf.p.java:ID / token 上报重试。
  • jadx-simple/crown.arithmetic.floor.cIPhUu.java:ContentProvider 启动初始化。
  • jadx-simple/crown.arithmetic.floor.TotalPageObserver.java:热启动/广告离开后的拉回。
  • jadx-simple/crown.arithmetic.floor.wSfChcdBg.java:FCM 高优先级本地通知。
  • jadx-simple/crown.arithmetic.floor.notify.NotifyManagerServices.java:拦截计数召回。

6. 现有动态证据入口(非本轮操作)#

evidence/ 已包含首启、通知权限、All files access、广告、Quick Clean、服务、Job、Alarm、通知和 AppOps 等截图/XML/dumpsys/logcat。建议按下面顺序回查:

  1. 首启与广告:first-launch.*、first-launch-ad-end.png、after-first-ad.*。
  2. 权限:after-notification-permission.*、all-files-settings.*、all-files-not-granted-return.*。
  3. 清理链路:after-quick-clean.*、after-quick-clean-ad.*、quick-clean-ad-end.png。
  4. 后台状态对比:services-*、jobs-*、alarms-*、notifications-*、appops-*。

这些文件的设备环境、动作时序和结论由根任务统一说明;本索引不单独把截图/日志内容升级为 [S1]。

7. 未验证项与风险#

  • [U] Firebase Remote Config、FCM 服务端人群/TTL/发送时刻、广告真实填充网络和线上开关。
  • [U] OEM、电量优化、待机桶、通知权限拒绝、最近任务划掉与 Force Stop 下的长期存活结果;静态代码只能证明尝试路径。
  • [U] READ_PHONE_STATE、CLEAR_APP_CACHE、DELETE_CACHE_FILES、GET_PACKAGE_SIZE 等声明是否在目标 Android 版本真正获授或产生效果。
  • [U] 两个后端 URL 的服务端响应、数据字段解释、留存周期与隐私合规。
  • [U] PairIP 包装层、混淆反射和 61 个 JADX 错误可能遮蔽少量分支;关键通知/保活方法已用 simple mode 补证,但仍应结合 smali/真机复核高风险结论。
竞品拆包报告库 · 逆向结论按证据等级阅读