# android_base **Repository Path**: copperpeas/android_base ## Basic Information - **Project Name**: android_base - **Description**: No description available - **Primary Language**: Android - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-11 - **Last Updated**: 2025-11-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Android Base - Jetpack Compose 脚手架 基于 Jetpack Compose + ViewModel + StateFlow 的现代化 Android 应用脚手架。 ## 技术栈 - **Jetpack Compose** - 声明式 UI 框架 - **ViewModel + StateFlow** - 状态管理 - **Hilt** - 依赖注入 - **Retrofit + OkHttp** - 网络请求 - **Navigation Compose** - 导航管理 - **Coroutines** - 异步处理 - **Material 3** - UI 设计规范 ## 项目结构 ``` app/src/main/java/com/example/app/ ├── data/ # 数据层 │ ├── model/ # 数据模型 │ ├── repository/ # 数据仓库 │ └── remote/ # 网络接口 ├── ui/ # UI 层 │ ├── screen/ # 页面 │ ├── navigation/ # 导航 │ └── theme/ # 主题 ├── di/ # 依赖注入 ├── BaseApplication.kt # Application 类 └── MainActivity.kt # 主 Activity ``` ## 核心特性 ### 1. ViewModel + StateFlow 状态管理 ```kotlin @HiltViewModel class HomeViewModel @Inject constructor( private val repository: DataRepository ) : ViewModel() { private val _uiState = MutableStateFlow(HomeUiState()) val uiState: StateFlow = _uiState.asStateFlow() } ``` ### 2. Compose UI ```kotlin @Composable fun HomeScreen(viewModel: HomeViewModel = hiltViewModel()) { val uiState by viewModel.uiState.collectAsState() // UI 实现 } ``` ### 3. Hilt 依赖注入 ```kotlin @Module @InstallIn(SingletonComponent::class) object AppModule { @Provides @Singleton fun provideApiService(): ApiService { ... } } ``` ## 快速开始 1. 克隆项目 2. 使用 Android Studio 打开 3. 同步 Gradle 依赖 4. 运行项目 ## 环境要求 - Android Studio Hedgehog | 2023.1.1+ - JDK 17+ - Gradle 8.2+ - Android SDK 34+ - Kotlin 1.9.10+ ## 自定义配置 1. 修改包名:将 `com.example.app` 替换为你的包名 2. 修改 API 地址:在 `AppModule.kt` 中修改 `baseUrl` 3. 添加新页面:在 `ui/screen/` 下创建新的 Screen 和 ViewModel ## License MIT License