3 年前用过 freeline ( https://github.com/alibaba/freeline) [可以 1-3 秒编译生效,大部分场景不用重启 APP ]
真的很惊艳,和 iOS 中的 Injection 有的一比
可是随着 alibaba 的放弃维护,freeline 也无法使用
项目现在能用 aar 的也都用 aar 了
在此请教下各位大佬,2021 年了 Android 现在有什么办法能够加快编译呢
AndroidStudio 版本
Android Studio 4.1.2
Build #AI-201.8743.12.41.7042882, built on December 20, 2020
Runtime version: 1.8.0_242-release-1644-b01 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
GC: ParNew, ConcurrentMarkSweep
Memory: 1237M
Cores: 8
Registry: ide.new.welcome.screen.force=true, external.system.auto.import.disabled=true
Non-Bundled Plugins: GsonFormatPlus, org.jetbrains.kotlin, wu.seal.tool.jsontokotlin
语言用的是纯 kotlin
gradle 使用得版本是 6.5
build.gradle 中能配置的也都配置了
gradle.properties 配置
android.useAndroidX=true
android.enableJetifier=true
org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx4096m -XX:+UseParallelGC -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#开启 gradle 缓存
org.gradle.caching=true
android.enableBuildCache=true
#开启 kotlin 的增量和并行编译
kotlin.incremental=true
kotlin.incremental.java=true
kotlin.incremental.js=true
kotlin.caching.enabled=true
kotlin.parallel.tasks.in.project=true
#优化 kapt
kapt.use.worker.api=true
kapt.incremental.apt=true
kapt.include.compile.classpath=false
kapt.verbose=true
# Kotlin code style for this project: "official" or "obsolete":
kotlin.code.style=official
#优化 databinding
android.lifecycleProcessor.incremental=true
android.databinding.incremental=true
android.injected.testOnly=false
#显示过时的调用
android.debug.obsoleteApi=true
==虽然已经做了上述的配置但是编译一次还是大约需要 15-30s 左右==
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.