This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
这是 frame/aab 模块 - 一个基于 Google Play Core API 的 Android App Bundle (AAB) 动态特性分发框架,负责管理按需模块的安装和卸载。
核心类:
AAB: 主要的单例门面类,负责协调模块下载和安装IDynamicModule: 动态特性模块接口,包含生命周期回调IAABConfig: 配置接口,需要 Application 上下文AABDownloadActivity: 处理安装过程中用户确认对话框的界面下载系统:
ModuleDownloader: 基于队列的下载器,具备智能重试和取消逻辑DownloadTask: 单个下载操作及其状态管理DownloadType: 下载操作的触发类型(用户主动、前台、网络变化)DownloadState: 当前状态跟踪(IDLE, DOWNLOADING, FINISHED)安装系统:
ModuleInstaller: Google Play Core SplitInstallManager 的封装IInstallListener: 安装进度和完成状态的回调com.adealink.frame.aablibs.versions.*)com.wenext.android:frame-aab:6.0.1该模块依赖多个内部 frame 模块:
frame/base: 核心应用基础和日志功能frame/mvvm: ViewModel 支持frame/util: 工具类,包括网络监控和 Activity 生命周期frame/spi: 服务发现框架frame/coroutine: Kotlin 协程支持AAB.init(config) 初始化,提供 Application 上下文IDynamicModule 接口AAB.download(module) 将模块加入下载队列IInstallListener 回调监控安装进度AAB.isInstalled(module) 检查可用性