Skip to content

1.0.0-alpha2

Pre-release
Pre-release

Choose a tag to compare

@Caleb-Rainbow Caleb-Rainbow released this 03 Sep 03:29
· 30 commits to master since this release
feat(ktor): 新增文件下载功能并优化登录逻辑

本次提交为 `HttpUtil` 模块引入了支持进度回调的文件下载功能,并对部分现有代码进行了优化。

主要变更:

*   **新增文件下载功能**:
    *   在 `HttpUtil.kt` 中增加了 `downloadFile` 方法,用于从指定 URL 下载文件。
    *   该方法支持 `onProgress` 回调,可实时返回下载进度、下载速度 (MB/s) 和预计剩余时间。
    *   内部使用 `prepareGet` 和 `bodyAsChannel` 实现流式读取和写入,并增加了超时设置,以提高大文件下载的稳定性。
    *   添加了 `format` 和 `formatTime` 两个私有辅助函数,用于格式化输出进度信息。

*   **登录逻辑重构**:
    *   `createLoginModel` 函数的签名从 `(NetworkConfig)` 修改为 `(LoginKeyStyle, String, String)`,降低了其与 `NetworkConfig` 接口的耦合度。
    *   在自动重新登录逻辑中,调用 `createLoginModel` 时现在直接传入登录所需的具体参数,而不是整个 `config` 对象。

*   **构建配置调整**:
    *   `ktor` 和 `app` 模块的 `minSdk` 版本从 28 降至 26,以支持更广泛的 Android 设备。
    *   `ktor` 模块的发布版本号从 `1.0.0-alpha1` 更新为 `1.0.0-alpha2`。