文档

Flutter 构建识别

通过 REA 的纯解析命令行与 MCP 工具,识别 Flutter APK 的 Dart 快照哈希、各 ABI 库摘要与引擎构建来源,再检查单个 ABI 的 AOT 快照段。字符串池输出是对 package 与 SDK URI 的有界字节模式投影,并非反序列化的 Dart 类或恢复的源码。

使用条件与局限

  • 审阅时 main 上为 rea-agents 6.7.0,声明支持 Node ^22.19.0、^24.11.0 或 26 及以上。identify-flutter-build 与 inspect-dart-aot(对应 MCP 的 identify_flutter_build 与 inspect_dart_aot)解析使用者提供的 APK 中的 libapp.so 和 libflutter.so,无需引擎、外部工具、执行或联网查询。输入先复制为分析器独占的只读快照,并有文档列明的上限,例如每个 APK 2 GiB、每个库 256 MiB。
  • REA 不做哈希到 SDK 的查询;把快照哈希对应到 Dart 版本需借助外部数据集,例如 reFlutter 维护的数据。目前只有所支持的 Dart 2.14 快照布局中的 FullAOT 类型能得到完整结构覆盖,其他类型会保留为部分覆盖。恢复带类型的类与函数需要针对特定 SDK 的解析器,类名样式的标记也包含偶然匹配。
  • 文档中的验证脚本经编译后的命令行与 stdio MCP 运行两个工具,以 Flutter Gallery 2.9.2 发布版 APK 对照固定的期望文件:三个 ABI 上快照哈希一致,并核对引擎标签与 URI 数量;另用普通 aapt2 构建的 APK 检查不误报。指南报告 Gallery 流程与 147 项 Flutter 专项测试在 macOS 14.8.9 x86-64 与 Windows 11 x64 虚拟机中通过。
  • 在已合并的 PR #1582 中,一位独立审阅者报告:在合并前的分支版本上,三个 F-Droid 应用 PocketDhamma、Flutter McSweepy 与 cone 的哈希、ELF 段和 package 列表与 readelf/strings 检查一致,非 Flutter 对照应用未被识别为 Flutter;讨论串记录了对所发现问题的修复。这些检查针对构建身份与结构,不是应用逻辑重建。REA 声明 MIT,所分析的 APK 保留各自许可;本合集未运行 REA 或任何 APK。

关于此条目

类型
文档
类别
REA 官方:调查指南
关联
REA 官方文档
目标
应用

来源复核于

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

一手来源

  1. docs/flutter-analysis.md GitHub · morluto/rea · 修订 c12d9ed
  2. scripts/verify-flutter.mjs GitHub · morluto/rea · 修订 c12d9ed
  3. scripts/fixtures/flutter-gallery-expectations.json GitHub · morluto/rea · 修订 c12d9ed
  4. README.md GitHub · morluto/rea · 修订 c12d9ed
  5. package.json GitHub · morluto/rea · 修订 c12d9ed
  6. LICENSE GitHub · morluto/rea · 修订 c12d9ed
  7. https://github.com/morluto/rea/pull/1582