Android开发之Gradle文件

  • Gradle是什么,有什么用
    编译、打包Android工程的一个构件工具
  • Project与Module的关系
    一个Project里面可以有多个Module
    Module可以是app类型的,也可以是library类型的
    在这里插入图片描述
    在这里插入图片描述

Project中的 build.gradle

gradle 插件的使用版本
在这里插入图片描述
gradle版本
在这里插入图片描述
grade版本需要与gradle 插件版本匹配,不然很容易在这里出错
在这里可以查看两者的版本匹配关系
https://developer.android.google.cn/studio/releases/gradle-plugin.html#updating-gradle

APP中的gradle

android {
compileSdkVersion 30
buildToolsVersion "30.0.3"

defaultConfig {
	application "com.example.myapplication"
	minSdkVersion 19
	targetSdkVersion 30
	versionCode 1
	versionName "1.0"

	testInstrumentationRunner "androidx.test.runner.AndroidJunitRunner"
}

buildTypes {
	release {
		minifyEnabled false
		proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),'proguard-rules.pro'
	}
}

compileOptions {
	//java的SDK的版本
	sourceCompatibility JavaVersion.Version_1_8
	targetCompatibility JavaVersion.VERSION_1_8
}

dependencies {
	//编译依赖库
}
}


compileSdkVersion、minSdkVersion、targetSdkVersion、buildToolsVersion之间的区别

  • compilesSdkVersion是编译代码所使用的sdk版本,并且与sdk manager里面下载的那些sdk platforms是对应的,也就是说, compilesSdkVersion使用的版本,在sdk manager里面必须是已经下载了才能用,最新的as做了优化,及时你没有下载,当写上某个版本后,as会自动帮你下载
  • minSdkVersion是对app可运行的手机设备的最小版本限制,与sdk manager里面下载的东西无关,只是一个标识而已
  • targetSdkVersion 是对app要运行的手机设备的目标版本的标识,也与sdk manager 里面下载的东西无关,表示了该app是为某个版本的手机设备而设计的,在这个目标版本的手机上做了充分的测试-----当你的手机版本大于这个目标版本时,该app也能运行,因为高版本的手机是可以运行低版本软件的
  • 这也符合常理,越先进的手机功能应该越强大,不仅能运行新东西,也能兼容老东西
  • 因此, minSdkVersion和tarSdkVersion是对我们开发的app所能运行设备的系统版本的范围约束,最低不能小于MinSdkVersion,但没有最高限制

minSdkVersion <= targetSdkVersion <= compilesSdkVersion

  • 如果使用了support library, support library的版本要和compileSdkVersion一致
    因为support library也是用来编译的,只不过是一种"支持库"
    比如使用23.1.1的support Library,那么 compileSdkVersion需要23
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值