| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> 【无标题】个人记录Android—Gradle教程 -> 正文阅读 |
|
[移动开发]【无标题】个人记录Android—Gradle教程 |
到目前为止,Gradle基础以及Kotlin基础讲解完毕。因此,在本篇里,将会以Gradle的构建优化以及如何从Groovy迁移到KTS进行详解! 话不多说,直接开始! 1、Gradle构建优化优化都是些配置,快速过一下就行了!重点在迁移KTS 1.1 并行编译开启默认情况下Gradle处理多模块时,往往是挨个按顺序处理。在项目根目录下面的gradle.properties中设置开启并行编译,提升编译速度:
1.2 开启编译守护进程 (默认开启)该进程在第一次启动后回一直存在,当你进行二次编译的时候,可以重用该进程
1.3 加大可编译内存Dex-in-process 允许多个DEX 进程运行在一个单独的VM 中,这使得增量构建和清理构建变得更快。需要设置至少1536MB 的堆大小内存。 在gradle.properties中设置:org.gradle.jvmargs=-Xmx4096m //这里也就是4G大小 1.4 ZipAlign优化在应用程序上运行zipalign,使得在运行时Android与应用程序间的交互更加有效率。让应用程序和整个系统运行得更快。 在app下面的build.gradle文件中设置:
1.5 配置dexOptions配置 dexOptions 和 开启 library pre-dexing(dex预处理):Dex-in-process:Android Studio 2.1增加了一个新的特性:Dex In Process,可以极大的加快重新编译的速度,同样也能提高Instant Run的性能。配置相应的DEX构建特性可以提高构建速度。
dexOptions一些设置说明:
1.6 构建一个变体有许多配置是你在准备app的release 版本的时候需要,但是当你开发app的时候是不需要的,开启不必要的构建进程会使你的增量构建或者clean构建变得很慢,因此需要构建一个只保留开发时需要配置的变体。通过productFlavors构建,dev代表debug版本,prod代表release版本
1.7 用静态的版本依赖当你在build.gradle文件中声明依赖的时候,你应该避免在版本号结束的地方使用+号,比如:com.android.tools.build:gradle:4.+ 因为Gradle的检查更新,用动态的版本号会导致未知的版本更新、使解决版本的差异变得困难和更慢的构建。你应该使用静态或者硬编码版本号来代替。 1.8 分多module管理抽取代码中相对独立的功能模块,创建新的module来开发,通过这种方式模块化你的代码将允许构建系统仅仅只编译那些有改动的模块,并将其构建结果缓存下来以被后面的构建使用。同时也可以提高开发效率,发布到maven上多APP公用。(组件化、插件化) 好了,上面的都快速过一下就行了!接下来就是本篇重点了! 2、Gradle Kotlin DSL2.1 Kotlin DSL优缺点:
2.2 何为KTS?
好了,概念说了一大堆,现在该上手了! 2.2 开始迁移:迁移时建议单个文件进行,由简入深依次迁移 2.2.1 迁移 settings.gradle 原settings.gradle
先复制settings.gradle,然后删除,接着创建settings.gradle.kts 新settings.gradle.kts 注意这里后缀名
我们看到这里include可以连续传多个参数,能够猜想到肯定有
看了源码果然如此。迁移到Kotlin DSL后,可以随意看里面的源码,比之前的groovy轻松多了! 接着下一个! |
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 6:00:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |