Skip to content

1.0.8

Choose a tag to compare

@Caleb-Rainbow Caleb-Rainbow released this 23 Jan 03:07
· 29 commits to master since this release

refactor(sync): 移除日志UI并重构日志系统

本次提交对 sync 模块进行了大规模重构,核心是将原有的基于 Room 和 Jetpack Compose 的日志系统移除,替换为一个更轻量、灵活、由应用层注入实现的日志接口。同时对所有 Worker 增加了详细的日志输出,并更新了相关依赖。

主要变更:

  • 依赖和配置更新:

    • Android Gradle Plugin (agp) 从 8.13.1 更新至 8.13.2。
    • Kotlin (kotlin) 从 2.2.21 更新至 2.3.0。
    • network 模块依赖从 1.0.2 更新至 1.0.3。
    • composeBom 版本从 2025.11.01 更新至 2026.01.00。
    • sync 模块版本从 1.0.7 更新至 1.0.8。
    • 移除了对 room 和 paging 的依赖。
    • gradle.properties 中增加了 android.uniquePackageNames 等配置。
  • 日志系统重构:

    • 删除了 SyncLog, SyncLogDao, SyncLogScreen, SyncLogViewModel, ClearOldLogsWorker 等与旧日志系统相关的UI和数据层代码。
    • 引入了 ILibLogger 接口和 LibLogManager 单例,将日志的具体实现解耦,交由应用层注入。
    • 提供了 libLogD, libLogI, libLogE 等全局扩展函数,方便在库内部统一调用日志。
    • BaseCompareWork 中不再持有 SyncLogger 实例,而是直接使用新的日志扩展函数。
  • Worker 日志增强:

    • 为 BaseCompareWork, SyncCoordinatorWorker, SyncSuccessUpdaterWorker 和 HeartWork 添加了非常详尽和结构化的日志输出。
    • 日志内容包括任务生命周期、参数、执行步骤、耗时、统计数据和详细的错误信息,极大地提升了调试效率。
    • 日志格式统一,通过符号和缩进增强了可读性。
  • 功能和逻辑优化:

    • BaseCompareWork:
      • 在日志中明确记录了待同步ID的获取、数据拉取、冲突解决和批量更新的每一步。
      • 增加了对任务执行超时的警告日志。
    • SyncCoordinatorWorker:
      • 增加了对用户登录状态的校验。
      • 日志中清晰展示了任务链的构建过程和入队状态。
    • SyncSuccessUpdaterWorker:
      • 增强了对 syncStartTime 参数的校验和错误处理。
      • 日志会记录更新前后的时间戳,便于追溯。
    • HeartWork:
      • 重写了日志逻辑,详细记录心跳的触发、参数、请求结果和耗时。
  • 文档:

    • 新增 README.md,提供了全面的项目概述、架构说明、使用指南和API文档。
  • 构建脚本:

    • 清理了 app/build.gradle.kts 和 sync/build.gradle.kts 中不再需要的 compose 相关配置和依赖。