Skip to content

项目结构 ​

LinkSheet 遵循模块化架构,以分离关注点并缩短构建时间。

核心模块 ​

  • app: 主应用程序模块。包含 UI 入口点、导航和胶水代码。
  • config: 共享构建配置(SDK 级别、JVM 工具链、仓库)。

功能模块 (features/) ​

  • app: 各设置界面共享的应用列表 UI 与模型。
  • analytics: 遥测基础设施。
    • service: 分析服务接口、遥测级别和对话框。
    • aptabase: Aptabase 分析客户端(仅用于 debug 构建)。
  • backup: 设置与应用状态的导入/导出。
    • api: 备份模型与接口。
    • impl: 实现以及备份/恢复 UI。
  • browser: 检测和管理 Web 浏览器的逻辑。
  • devicecompat: 针对不同 Android 版本/ROM 的兼容层。
  • downloader: 处理文件下载。
  • engine: 链接匹配和处理的核心逻辑(LinkEngine)。
  • libredirect: LibRedirect 集成的实现。
  • profile: Android 用户/工作资料支持。
  • remoteconfig: 拉取并存储远程配置/文档资源。
  • shizuku: Shizuku 服务集成代码。
  • systeminfo: 用于检索设备和系统信息的实用程序。
  • wiki: 应用内文档/帮助资源。

集成模块 (integration/) ​

  • amp2html: 将 AMP 链接转换为标准 HTML 的转换器。
  • clearurl: ClearURLs 集成的逻辑。
  • embed-resolve: 解析内嵌内容镜像的逻辑。
  • fastforward: FastForward 规则集成的逻辑。
  • mime-types: 链接与下载的 MIME 类型检测。

库 (lib/) ​

  • api: 通用接口和 API 定义(包括偏好设置注册表)。
  • bottom-sheet: 当前的自定义底部栏实现。
  • bottom-sheet-new: 实验性重写版底部栏。
  • compose: Jetpack Compose UI 组件和主题。
  • hidden-api: 通过 HiddenApiRefine 访问隐藏的 Android API。
  • http: 共享网络实用程序。
  • scaffold: 共享的 Compose 脚手架/页面。
  • util: 共享实用程序类和扩展。

测试模块 ​

  • test-lib/: 共享测试基础设施。
    • core: 基础测试类和数据库测试规则。
    • fake: 假对象与测试替身。
    • instrument: 插桩/UI 测试辅助工具。
    • koin: Koin 测试扩展。
  • test/e2e: 端到端测试。