# client_android **Repository Path**: wangwenbin002/client_android ## Basic Information - **Project Name**: client_android - **Description**: YX云手机 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-22 - **Last Updated**: 2025-11-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 开发工具 - AndroidStudio 版本:Android Studio Giraffe | 2022.3.1 Patch 3(以上) ## 编译环境 - Gradle 版本:8.0 (https\://services.gradle.org/distributions/gradle-8.0-bin.zip) - Android Gradle Plugin (AGP) 版本:8.1.3 (com.android.tools.build:gradle:8.1.3) - JDK 版本:JDK 17 - Kotlin 版本:1.9.22 - Dagger Hint 版本:2.51 - Arouter 版本:1.5.2 - 配置路径:工程的build.gradle ## Android SDK版本 - minSdkVersion:26 (Android8.0) - compileSdkVersion:33 (Android13) - targetSdkVersion: 33 - 配置路径:工程的build.gradle ## 编译配置 - Build Variants:yixinDevelop(开发环境)/yixinInternal(测试环境)/yixinProduct(生产环境,需要配置SSL证书) - 统一配置渠道包路径:modulebuild.gradle ## 项目架构 - 本项目采用MVVM架构 - 每个模块独立解耦,模块说明如下: - lib_base:基础类封装管理 - module_common:通用类管理 - module_login:登录模块 - module_home:主模块 - module_mine:我的模块 - module_pullstream:云手机拉流模块 ## 代码规范 - 遵循 [Kotlin 官方风格指南](https://kotlinlang.org/docs/coding-conventions.html) - 使用 4 空格缩进 - 类和方法使用驼峰命名法 - 资源文件使用蛇形命名法 (`activity_main.xml`) ## git代码管理规则 - 提交代码要按功能提交,粒度要清晰,便于功能合并或回退,相关联的提交,commit message最好有统一的前缀标识 - master分支:为融合办公通用代码分支,只能合并完整可用代码到master,不能在此分支开发功能 - 版本分支:均为通用版的代码分支,不包含定制项目功能,通用版功能需要再此分支开发 - 定制项目分支:只能提交定制功能的代码,如果需要变为通用功能,则需要合并到master分支以及最新的版本分支 - 所有的「版本分支」都要合并到master分支上,每个发布版本要有单独分支 ## 导航方式 - 组件内跳转使用Navigation - 组件间通信使用ARouter ## 本地存储库方案选型原则 - MMKV:因MMKV存在数据丢失隐患(不支持数据备份),因此仅可在「高并发」且存储「非关键性」数据的场景下使用, 另外如果是在「跨进程」场景下则只能使用MMKV - DataStore:Kotlin环境下必须使用DateStore,在高并发下它比SP性能要高,且能保证数据安全 - SharedPreference:能保证数据安全,纯Java环境才会使用,在高并发下性能较差 ## Hint配置说明 - 新开module需要在项目的build.gradle配置以下(各个项目单独配置): - api "com.google.dagger:hilt-android:$hilt_version" - kapt "com.google.dagger:hilt-android-compiler:$hilt_version" ## 打包版本更新 - VERSION_NAME=1.0 - VERSION_CODE=1 - 更新路径:version.properties