您当前的位置:首页 > 电脑百科 > 程序开发 > 移动端 > Android

Android开发:build.gradle 配置指南

时间:2019-10-08 10:26:43  来源:  作者:
Android开发:build.gradle 配置指南

 

一、前言

作为Android开发,我们几乎每天都在和builg.gradle打交道,但是你真的知道build.gradle里的每一行代码有什么用吗?以及builg.gradle到底有哪些作用?本文旨在全面的向大家介绍builg.gradle的作用与使用方法。

二、通用配置

在我们新建项目时,Android Studio 会自动为我们生成两个build.gradle文件,一个位于根目录,一个位于App文件夹下,下面是gradle文件的构成图:

Android开发:build.gradle 配置指南

 

三、根目录的build.gradle

该gradle文件是定义在这个工程下的所有模块的公共属性,它默认包含两个个方法:

Android开发:build.gradle 配置指南

 

buildscript 方法是定义了全局的相关属性,repositories 定义了 jcenter 作为仓库。一个仓库代表着你的依赖包的来源,例如 maven 仓库。dependencies 用来定义构建过程。实际开发时,缺少某些仓库来源是会出错的,我记得还有一次是google()、jcenter()两个顺序导致的问题,具体记不清了,以后再遇到再更新~

allprojects 方法可以用来定义各个模块的默认属性,你可以不仅仅局限于默认的配置,未来你可以自己创造 tasks 在 allprojects 方法体内,这些 tasks 将会在所有模块中可见。

Android开发:build.gradle 配置指南

 

四、app文件夹下的build.gradle文件

Android开发:build.gradle 配置指南

 

以上就是我们最常见的常规配置,但是往往我们都有更复杂的需求,下面简单介绍几个常见的问题及其解决代码。

 

五、如何修改编译生成的 apk 的名字?

一般情况下,默认配置生成的 apk 文件名叫做app-debug.apk。但是我们在开发中为了方便最好是要对这些 apk 进行区分命名的,下面代码就是为我们生成 apk 进行了合理的命名。例如:HelloWorld_1.0_debug.apk,由 APP 名称 + 版本号 + 签名名称 组成。

Android开发:build.gradle 配置指南

 

六、遇到依赖冲突怎么办?

当项目中依赖的第三方库越来越多时,有可能会出现两个依赖库中存在同一个(名称)文件。如果这样,Gradle 在打包时就会提示错误(警告)。那么就可以根据提示,然后使用以下方法将重复的文件剔除,比较常用的是通过 exclude 去除重复的文件,例如:

Android开发:build.gradle 配置指南

 

 

七、如何多渠道配置?

这个配置是经常会使用到的,通常在适配多个渠道的时候,需要为特定的渠道做部分特殊的处理,比如设置不同的包名、应用名等。场景:当我们使用友盟统计时,通常需要设置一个渠道ID,那么我们就可以利用productFlavors来生成对应渠道信息的包,如:

Android开发:build.gradle 配置指南

 

最后

如果你看到了这里,觉得文章写得不错就给个赞呗!欢迎大家评论讨论!如果你觉得哪里值得改进的,请给我留言。一定会认真查询,修正不足,定期免费分享技术干货。感兴趣的小伙伴可以点一下关注哦。谢谢!



Tags:build.gradle   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
一、前言作为Android开发,我们几乎每天都在和builg.gradle打交道,但是你真的知道build.gradle里的每一行代码有什么用吗?以及builg.gradle到底有哪些作用?本文旨在全面的向大家...【详细内容】
2019-10-08  Tags: build.gradle  点击:(164)  评论:(0)  加入收藏
▌简易百科推荐
今天面试遇到同学说做过内存优化,于是我一般都会问那 Bitmap 的像素内存存在哪?大多数同学都回答在 java heap 里面,就比较尴尬,理论上你做内存优化,如果连图片这个内存大户内存...【详细内容】
2021-12-23  像程序那样思考    Tags:Android开发   点击:(8)  评论:(0)  加入收藏
Android logcat日志封装logcat痛点在Android开发中使用logcat非常频繁,logcat能帮我们定位问题,但是在日常使用中发现每次使用都需要传递tag,并且会遇到输出频率很高的log,在多...【详细内容】
2021-12-22  YuCoding    Tags:Android   点击:(8)  评论:(0)  加入收藏
对项目的基本介绍 1.整个框架主要是给MVVM框架使用的,自己写完interface接口后,通过自定义的注解就能自动生成接口方法 2.用Kotlin的Flow去代替Rxjava,因为我发现RxJava功能很...【详细内容】
2021-12-08  网易Leo    Tags:Android开发   点击:(17)  评论:(0)  加入收藏
前言在Android开发过程中,有些时候会根据需要引用别的项目到当前项目里面,而且以Module形式引用。所以本篇博文就来分享一下怎么以Module形式引用别的项目到当前项目中,方便开...【详细内容】
2021-12-07  网易Leo    Tags:Android开发   点击:(22)  评论:(0)  加入收藏
作者:fundroid这篇文章偏阅读一些,大家可以了解下 Android 的一些最新动向。每年9/10月份 Google 都会举行约为期2天的 Android Dev Summit,在活动上 Google 的技术专家们会分...【详细内容】
2021-11-30  像程序那样思考    Tags:Android开发   点击:(15)  评论:(0)  加入收藏
一、 准备工作1、安装JDK,下载地址(可能需要一个oracle账号,大家百度一下或者自行注册一个就行。尽可能选择8或者11,这两个是长期版本)Java SE | Oracle Technology Network | Or...【详细内容】
2021-11-23  永沧    Tags:Android   点击:(28)  评论:(0)  加入收藏
使用Maven Publish Plugin插件。(官方支持)一、在Library的build.gradle中配置plugins { id 'com.android.library' id 'kotlin-android' id 'k...【详细内容】
2021-11-05  羊城小阳    Tags:Android   点击:(37)  评论:(0)  加入收藏
谷歌离推出Play Store应用程序的新数据隐私部分又近了一步。应用程序开发人员现在可以通过谷歌在Play控制台的新 "数据安全表 "填写相关细节。该公司表示,所需信息将从2022年...【详细内容】
2021-10-20    中关村在线  Tags:安卓   点击:(58)  评论:(0)  加入收藏
架构究竟是什么?如何更好的理解架构?我们知道一个APP通常是由class组成,而这些class之间如何组合,相互之间又如何产生作用,就是影响这个APP的关键点。细分的话我们可以将其分为类...【详细内容】
2021-09-17  像程序那样思考    Tags:Android架构   点击:(52)  评论:(0)  加入收藏
概述当Android应用程序需要访问设备上的敏感资源时,应用程序开发人员会使用权限模型。虽然该模型使用起来非常简单,但开发人员在使用权限时容易出错,从而导致安全漏洞。本文中,...【详细内容】
2021-09-07  SecTr安全团队    Tags:Android开发   点击:(66)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条