Android进阶:十四,查漏补缺

buildscript块是Gradle本身配置存储库和依赖项的地方——也就是说,这里不应该包含模块的依赖项。例如,这个块包含了Gradle的Android插件作为一个依赖项,因为它提供了Gradle构建Android应用程序模块所需的额外指令。
repositories {
google()
jcenter()
}

dependencies 块配置Gradle需要使用的依赖项来构建项目。下面的代码行添加了Gradle的Android插件版本3.3.2作为类路径依赖项。

dependencies {
classpath ‘com.android.tools.build:gradle:3.3.2’
}
}

allprojects块是配置项目中所有模块(如第三方插件或库)使用的存储库和依赖项的地方。但是,你应该在每个模块级别的构建中配置特定于模块的依赖项。gradle文件。对于新项目,Android Studio默认包含JCenter和谷歌的Maven存储库,但它不配置任何依赖项(除非您选择了一个需要的模板)

allprojects {
repositories {
google()
jcenter()
}
}

对于包含多个模块的 Android 项目,在项目级别定义某些属性,并在所有模块间共享这些属性可能会非常有用。 为此,您可以将 额外属性添加到顶级 build.gradle 文件的 ext 代码块中。

buildscript {…}

allprojects {…}

// 这个块封装了自定义属性,使它们对项目中的所有模块都可用。
ext {
//下面只是可以定义的属性类型的几个示例。
compileSdkVersion = 28
// You can also create properties to specify versions for dependencies.
// Having consistent versions between modules can avoid conflicts with behavior.
supportLibVersion = “28.0.0”

}

要从相同项目中的模块访问这些属性,请在模块的 build.gradle 文件(您可以在以下部分了解有关此文件的详细信息)中使用以下语法。

android {
// 使用以下语法访问在项目级别定义的属性:
// rootProject.ext.property_name
compileSdkVersion rootProject.ext.compileSdkVersion

}

dependencies {
implementation “com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}”

}

  • module build.gradle是模块级构建文件
    模块级 build.gradle 文件位于各 project/module/ 目录中,用于配置适用于其所在模块的构建设置。 你可以通过配置这些构建设置来提供自定义打包选项(例如附加构建类型和产品风格),以及替换 main/ 应用清单或顶级 build.gradle 文件中的设置。

此 Android 应用模块 build.gradle 文件示例概括您应了解的某些基本 DSL 元素和设置。

//构建配置中的第一行将Gradle的Android插件应用于此构建,并使Android块可用来指定特定于Android的构建选项。

apply plugin: ‘com.android.application’

android块是配置所有android特定构建选项的地方。
android {

compileSdkVersion指定了Gradle应该使用的Android API级别来编译你的应用程序。这意味着你的应用程序可以使用这个API级别或更低的API特性。

compileSdkVersion 28

buildToolsVersion指定了用于构建应用程序的SDK构建工具、命令行实用程序和编译器的版本。需要使用SDK管理器下载构建工具。此属性是可选的,因为插件默认使用构建工具的推荐版本。

buildToolsVersion “28.0.3”

defaultConfig块封装了所有构建变体的默认设置和条目,并且可以从构建系统动态地覆盖main/AndroidManifest.xml中的一些属性。你可以配置产品口味来覆盖应用程序不同版本的这些值。

defaultConfig {

applicationId惟一地标识要发布的包。但是,我们的源代码仍然应该引用主/AndroidManifest.xml文件中的package属性定义的包名。
applicationId ‘com.example.myapp’

定义运行应用程序所需的最低API级别。
minSdkVersion 15

指定用于测试应用程序的API级别。
targetSdkVersion 28

定义应用程序的版本号。
versionCode 1

为您的应用程序定义一个用户友好的版本名称。
versionName “1.0”
}

您可以在buildTypes块中配置多个构建类型。根据efault,构建系统定义了两种构建类型:debug和release。调试构建类型在默认的构建配置中没有显式显示,但是它包含调试工具,并使用debug键进行签名。release构建类型应用Proguard设置,默认情况下不签名。

buildTypes {

默认情况下,Android Studio使用minifyEnabled配置release build类型来启用代码收缩,并指定Proguard设置文件。

release {
minifyEnabled true // Enables code shrinking for the release build type.
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
}

可以在productflavor块中配置多个产品口味。这允许您创建应用程序的不同版本,这些版本可以用自己的设置覆盖defaultConfig块。产品风味是可选的,默认情况下构建系统不会创建它们。这个例子创建了一个免费且付费的产品风格。然后,每种产品都指定了自己的应用程序ID,这样它们就可以同时存在于谷歌Play Store或Android设备上。如果您声明产品的风味,您还必须声明风味维度,并将每种风味分配给风味维度。

flavorDimensions “tier”
productFlavors {

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

最后

**一个零基础的新人,我认为坚持是最最重要的。**我的很多朋友都找我来学习过,我也很用心的教他们,可是不到一个月就坚持不下来了。我认为他们坚持不下来有两点主要原因:

他们打算入行不是因为兴趣,而是因为所谓的IT行业工资高,或者说完全对未来没有任何规划。

刚开始学的时候确实很枯燥,这确实对你是个考验,所以说坚持下来也很不容易,但是如果你有兴趣就不会认为这是累,不会认为这很枯燥,总之还是贵在坚持。

技术提升遇到瓶颈了?缺高级Android进阶视频学习提升自己吗?还有大量大厂面试题为你面试做准备!

提升自己去挑战一下BAT面试难关吧

对于很多Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些知识图谱希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

不论遇到什么困难,都不应该成为我们放弃的理由!

如果有什么疑问的可以直接私我,我尽自己最大力量帮助你!

最后祝各位新人都能坚持下来,学有所成。

识图谱希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

不论遇到什么困难,都不应该成为我们放弃的理由!

如果有什么疑问的可以直接私我,我尽自己最大力量帮助你!

最后祝各位新人都能坚持下来,学有所成。

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

  • 11
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值