Gradle 从初级到高级
文章平均质量分 91
Android_HQK
这个作者很懒,什么都没留下…
展开
-
Android—Gradle教程(九)完结篇
前言到目前为止,Gradle基础以及Kotlin基础讲解完毕。因此,在本篇里,将会以Gradle的构建优化以及如何从Groovy迁移到KTS进行详解!话不多说,直接开始!1、Gradle构建优化优化都是些配置,快速过一下就行了!重点在迁移KTS1.1 并行编译开启默认情况下Gradle处理多模块时,往往是挨个按顺序处理。在项目根目录下面的gradle.properties中设置开启并行编译,提升编译速度:org.gradle.parallel=true1.2 开启编译守护进程 (默认开启)原创 2021-11-22 17:50:19 · 2241 阅读 · 6 评论 -
Android—Gradle教程(八)
前言到目前为止,Gradle基础知识已经讲解完毕,对Gradle的实战也讲解了好几个了。在本篇里,将会以Gradle在组件化的使用进行详解。1. 什么是组件化?在回答这个问题之前首先回想一下以前我们是怎么开发的。如图所示之前我们开发项目的时候,就是通过定义不同的包名来表示对应的功能,比如这里的product用来表示商品列表以及商品详情相关的业务逻辑【这部分由程序员A完成】;order用来表示订单相关的业务逻辑【这部分由程序员B完成】突然有一天,程序员A找到程序员B,怒气冲冲的说到:“你干嘛要改原创 2021-11-06 23:41:35 · 361 阅读 · 0 评论 -
Android—Gradle教程(七)
前言在上一篇中,就已经开始了对Gradle实战进行演练。在这一篇中,将会实现ButterKnife里面的BindView来讲解Gradle在APT自动化代码处理的实战。1. APT介绍APT(Annotation Processing Tool)即注解处理器,是一种处理注解的工具,确切的说它是javac的一个工具,它用来在编译时扫描和处理注解。注解处理器以Java代码(或者编译过的字节码)作为输入,生成.java文件作为输出。简单来说就是在编译期,通过注解生成.java文件。那么何为注解处理器?原创 2021-11-05 19:42:10 · 406 阅读 · 0 评论 -
Android—Gradle教程(六)
前言在前几篇文章中,已经讲AGP相关配置讲解完毕。从这一篇开始将会开启AGP实战相关的内容。本篇实战内容:AGP实战一:启用multiDex打包AGP实战二:aar打包发布maven1. AGP实战一:启用multiDex打包我们编写代码难免会导入三方资源库,几个版本过后阔能就会出现65535方法数限制这个错误。因为DexOpt会把每一个类的方法id检索起来,存在一个链表结构里面。这个链表的长度是用short类型来保存的,这就使得方法数id不能超过65535。所以说一个dex文件是不能超原创 2021-11-04 20:54:10 · 412 阅读 · 1 评论 -
Android—Gradle教程(五)
前言在上一篇中,讲解了AGP的基础配置以及多渠道打包,在这一篇中将会进一步对AGP进行讲解。1、Android{}android{},由AGP引入的其他节点:resValuebuildConfigFieldadbOptions这些节点在不会默认创建需要开发者手动定义。那么这些节点对应有什么功能呢?1.1 resValue看这个命名感觉像是资源相关的,直接上手代码看看。android{ ...略 defaultConfig { ...略 resValue 'strin原创 2021-11-03 15:47:38 · 471 阅读 · 0 评论 -
Android—Gradle教程(四)
前言在上一篇中已经讲到Gradle的依赖管理相关的知识点,在这一篇中将会对Gradle的配置以及产品风味进行详解。版本说明关于Andoird构建配置的相关文档,推荐官方这个文档后面讲到的Andorid构建配置都是针对的AGP4.2.0以上版本,请悉知1、android{}android{},由AGP引入的节点:compileSdkVersion:编译使用版本buildToolsVersion:buildTools版本defaultConfig:默认产品风味productFlavor原创 2021-11-02 16:26:57 · 559 阅读 · 0 评论 -
Android—Gradle教程(三)
前言在上一篇中,主要讲解了Gradle核心模型以及初步了解Gradle插件。在这一篇中,主要对Gradle依赖管理进行详解:1、依赖管理所谓的依赖管理:在大多数情况下,项目都要依赖lib形式的可重用功能,还有很多项目可能被切分成多个单独的子工程来构成模块系统。依赖管理是一种可以让项目自动化的定义、解析,及使用依赖的技术。而Gradle提供了强大的依赖管理支持,并且也实现了现代软件项目的各种典型场景,如下图所示:如图所示Gradle在编译构建的时候,先是从对应(本地、远程)资源库里面拿到对应的资原创 2021-11-01 17:23:57 · 835 阅读 · 2 评论 -
Android—Gradle教程(二)
前言在上一篇文章中,对Gradle基础以及构建机制进行了详细的讲解,在这一篇中将会对Gradle核心模型以及Gradle插件进行初步讲解。1.Gradle核心模型1.1 Gradle钩子函数讲钩子函数,还是得拿出Gradle执行流程图如图所示gradle在生命周期三个阶段都设置了相应的钩子函数调用。使用钩子函数,处理自定义的构建:初始化阶段:gradle.settingsEvaluated和gradle.projectsLoaded。(在settings.gradle中生效)配置阶段原创 2021-10-28 18:52:58 · 1068 阅读 · 3 评论 -
Android—Gradle教程(一)
前言在前几篇中,讲解了Groovy的基础语法,学习新语法过程总是枯燥的,但为了更好的掌握Gradle,那就必须经过该过程。当然从这一篇将会从零基础开始,开展对Gradle的讲解。1. 掌握Gradle基础1.1 环境配置去官网下载gradle或者从本地用户文件夹下的.gradle/wrapper/dists找到本地缓存的gradle开发工具包 (注意带bin文件夹的这个grade-x.x)系统属性配置:添加GRADLE_HOME:C:\Users\sheji.gradle\wrapper\原创 2021-10-25 18:47:07 · 4036 阅读 · 0 评论 -
Android Gradle—Groovy动态特性及元编程
前言在上一篇中,主要讲解了Groovy类、方法与闭包详解,在这一篇中将会对Groovy 动态特性及元编程进行详解。1. Groovy 动态特性原创 2021-10-22 19:29:25 · 369 阅读 · 0 评论 -
Android Gradle—Groovy类、方法与闭包详解
前言在上一篇文章中,主要讲解了Gradle基本介绍以及Groovy对应的基础语法,在这一篇中将会从如下几点继续深入Groovy。Groovy类与方法Groovy闭包话不多说,直接开始。1. Groovy类与方法1.1 多种访问get/set方式class Car { def miles private def year def getMiles() { println "getMiles" return miles }原创 2021-10-20 16:58:50 · 574 阅读 · 0 评论 -
Idea 配置Groovy环境
前言在上一篇中,涉及到配置Groovy环境的问题,所以在这,就额外补充一下如何配置Groovy环境。开始配置1、下载Groovy环境SDK 官方地址点击下载2、解压并将对应的SDK解压在自己想要的目录下3、添加环境变量: 变量名:GROOVY_HOME 变量值:解压后的目录 添加path路径中:%GROOVY_HOME%\bin4、验证是否成功打开cmd运行窗口 执行 groovy -v ,看看运行效果只要是这样就说明成功了。5、打开Idea创建项目的时候选择Groovy,并且原创 2021-10-19 17:58:26 · 1837 阅读 · 0 评论 -
Android 了解Gradle及自动化构建
前言本专栏内容主要分为两大部分:Groovy基础到进阶Gradle开发及Gradle在Android中的使用。本专栏内容尽量做到覆盖全满,不遗漏知识点。对于Groovy的学习会基于已掌握的Java及Kotlin语言,通过对比分析来提高学习效率。对于Gradle的内容我们主要针对在Andorid开发中的实际使用来进行讲解,做到学以致用的目的。1. Gradle介绍Gradle是一款基于Apache的Ant和Maven概念的项目自动化开源构建工具。Gradle的核心是基于Java来实现原创 2021-10-19 17:34:40 · 591 阅读 · 0 评论