Files
arc/.planning/codebase/STACK.md
2026-03-30 15:21:07 +08:00

3.3 KiB
Raw Blame History

Technology Stack

Analysis Date: 2026-03-30

Languages

Primary:

  • Dart 3.9.0+ - Flutter 插件层代码(lib/*.dart
  • Java 11 - Android 原生实现(android/src/main/java/**/*.java

Secondary:

  • Kotlin - 未使用(纯 Java 实现)
  • C/C++ (Native) - 虹软 SDK native 库(libarcsoft_face.so, libarcsoft_face_engine.so, libarcsoft_image_util.so

Runtime

Environment:

  • Flutter SDK 3.18.0+ (stable channel)
  • Dart SDK 3.9.0+ (<4.0.0)
  • Android SDK compileSdk 36, minSdk 24

Package Manager:

  • pub (Flutter/Dart 包管理器)
  • Gradle 8.9.1 (Android 构建)
  • Lockfile: pubspec.lock (present), pubspec.yaml (present)

Frameworks

Core:

  • Flutter SDK - 跨平台移动应用框架
  • Flutter Plugin Architecture - 平台通道通信机制

Testing:

  • flutter_test - Flutter 单元测试框架
  • flutter_lints 5.0.0 - Dart/Flutter 代码规范检查
  • JUnit 4.13.2 - Java 单元测试
  • Mockito 5.0.0 - Java mock 测试框架

Build/Dev:

  • Gradle 8.9.1 - Android 构建系统
  • Android Gradle Plugin 8.9.1 - Android 构建插件
  • Flutter CLI - Flutter 命令行工具

Key Dependencies

Critical:

  • plugin_platform_interface 2.0.2 - Flutter 插件平台接口抽象层
  • arcsoft_face.jar - 虹软人脸识别核心 SDK
  • arcsoft_image_util.jar - 虹软图像处理工具库
  • libarcsoft_face.so (~87MB) - 虹软人脸识别 native 库arm64-v8a
  • libarcsoft_face_engine.so (~1.3MB) - 虹软人脸引擎 native 库
  • libarcsoft_image_util.so (~80KB) - 虹软图像处理 native 库

Infrastructure (Example App):

  • camera 0.11.1 - 摄像头访问插件(用于实时人脸检测)
  • cupertino_icons 1.0.8 - iOS 风格图标

Configuration

Environment:

  • Dart SDK 版本约束: ^3.9.0pubspec.yaml
  • Flutter SDK 版本约束: >=3.3.0pubspec.yaml
  • Java 版本: 11android/build.gradle
  • Pub 仓库源: https://pub.flutter-io.cn(中国镜像)

Build:

  • pubspec.yaml - Dart/Flutter 包配置
  • pubspec.lock - 依赖锁定文件
  • analysis_options.yaml - Dart 代码分析配置(继承 flutter_lints
  • android/build.gradle - Android 构建配置
  • android/settings.gradle - Android 项目设置

Platform Requirements

Development:

  • Flutter SDK 3.18.0+ 安装
  • Dart SDK 3.9.0+ 安装
  • Android Studio / Android SDKcompileSdk 36
  • JDK 11

Production:

  • Android 设备API 24+,即 Android 7.0+
  • ARM64-v8a 或 armeabi-v7a 架构支持
  • 摄像头权限(用于人脸检测)
  • 虹软 SDK 有效激活AppId、SdkKey、ActiveKey

Architecture Support

Native Libraries:

  • arm64-v8a - 64位 ARM 设备(主流现代设备)
  • armeabi-v7a - 32位 ARM 设备(兼容旧设备)

SDK 功能掩码常量:

ASF_FACE_DETECT = 0x00000001      // 人脸检测
ASF_FACE_RECOGNITION = 0x00000004 // 人脸特征
ASF_AGE = 0x00000008              // 年龄检测
ASF_GENDER = 0x00000010           // 性别检测
ASF_LIVENESS = 0x00000080         // RGB 活体检测
ASF_IMAGEQUALITY = 0x00000200     // 图像质量检测
ASF_MASK_DETECT = 0x00001000      // 口罩检测
ASF_UPDATE_FACEDATA = 0x00002000  // 人脸信息更新

默认功能掩码: 0x85 = 人脸检测 + 人脸特征 + RGB活体检测


Stack analysis: 2026-03-30