如何缩短Android Studio中Compose Multiplatform项目的构建时间?
Compose Multiplatform 构建时间优化方案
一、解决Android Gradle插件版本警告(降低潜在编译损耗)
- 由于你设置了
compileSdk = 35,必须匹配**Android Gradle Plugin 8.5+**版本才能兼容,直接在项目根目录的build.gradle.kts中更新插件版本:plugins { id("com.android.application") version "8.5.0" apply false id("org.jetbrains.kotlin.android") version "1.9.20" apply false // 注意:Kotlin版本需与Compose Multiplatform官方推荐版本匹配 } - 同步更新Gradle wrapper版本(AGP 8.5对应Gradle 8.4+),修改
gradle/wrapper/gradle-wrapper.properties:distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
二、加速iOS多架构(Arm64/X64/模拟器)编译
- 启用Kotlin增量编译:在项目根
gradle.properties中添加:kotlin.incremental.multiplatform=true kotlin.caching.enabled=true - 开发阶段仅编译当前需要的架构:避免全架构同步编译,在iOS模块的
build.gradle.kts中临时指定目标架构:
发布打包时再恢复全架构配置。ios { binaries { framework { // 本地开发时仅保留当前使用的模拟器/设备架构 targetMachines = listOf(TargetMachine.iOSSimulatorArm64) // 或TargetMachine.iOSX64 } } } - 开启Kotlin Native全缓存:在
gradle.properties中添加:kotlin.native.cacheKind=full
三、消除大量警告,减少编译额外开销
- 强制修复可解决的警告:
- Kotlin层面:将警告转为错误,强制清理未使用变量、过时API等问题,在模块
build.gradle.kts中配置:kotlin { sourceSets.all { languageSettings.apply { warningAsError = true } } } - Android层面:清理未使用资源,在Android模块中开启资源压缩:
android { buildTypes { debug { shrinkResources = true // 开发阶段也可开启,自动移除未用资源 } } }
- Kotlin层面:将警告转为错误,强制清理未使用变量、过时API等问题,在模块
- 过滤暂时无法修复的警告:在模块
build.gradle.kts中添加编译参数忽略指定警告:tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> { kotlinOptions { freeCompilerArgs += listOf( "-Xignore-warning-code=UNUSED_VARIABLE", "-Xignore-warning-code=DEPRECATION" ) } }
四、通用构建加速配置
- 优化Gradle全局参数:在
gradle.properties中添加:org.gradle.caching=true org.gradle.parallel=true org.gradle.configureondemand=true org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 - 启用Android Studio构建缓存:打开
File > Settings > Build, Execution, Deployment > Build Tools > Gradle,勾选启用Build Cache - 定期清理旧构建产物:执行
./gradlew clean后重新构建,避免缓存冲突导致的异常耗时
内容的提问来源于stack exchange,提问作者rlaj
相关产品推荐
相关产品推荐

