/

  1. // 应用插件,两种值可选,'com.android.application'与'com.android.library'
  2. // 其中 'com.android.application'声明这是一个应用程序模块
  3. // 'com.android.library'声明这是一个库模块
  4. apply plugin: 'com.android.application'
  5. //安卓闭包
  6. android {
  7. // 声明该应用/库编译使用的AndroidSDK版本
  8. compileSdkVersion 30
  9. // 用于声明该构建工具的版本
  10. buildToolsVersion "30.0.2"
  11. //默认配置
  12. defaultConfig {
  13. // 项目包名
  14. applicationId "com.example.testapplication"
  15. // 最低兼容的Android版本,24指定为Andorid7.0
  16. minSdkVersion 24
  17. // 表示在目标版本上已经进行过充分测试,系统将会为你的应用程序启用一些最新的功能和特性
  18. // 比如Android 6.0中支持运行时权限,那么targetSdkVersion大于等于23的时候就能启用该功能
  19. // 但targetSdkVersion小于23,则不能启用运行时权限
  20. targetSdkVersion 30
  21. // 项目版本号
  22. versionCode 1
  23. // 项目版本名
  24. versionName "1.0"
  25. //
  26. testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
  27. }
  28. // buildTypes闭包中用于指定生成安装文件的相关配置
  29. buildTypes {
  30. // debug闭包用于指定生成测试版安装文件的配置,此处忽略未写
  31. // release闭包用于指定生成正式版安装文件的配置
  32. release {
  33. // 是否开启代码混淆
  34. minifyEnabled false
  35. // 指定混淆使用的规则文件
  36. // proguard-android.txt是在Android SDK目录下的,里面是所有项目通用的混淆规则
  37. // proguard-rules.pro是在当前项目的根目录下的,里面可以编写当前项目特有的混淆规则
  38. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  39. }
  40. }
  41. }
  42. // 指定当前项目所有的依赖关系
  43. // 通常Android Studio项目一共有3种依赖方式:本地依赖、库依赖和远程依赖
  44. // 本地依赖可以对本地的Jar包或目录添加依赖关系
  45. // 库依赖可以对项目中的库模块添加依赖关系
  46. // 远程依赖则可以对jcenter库上的开源项目添加依赖关系
  47. dependencies {
  48. // 指定将libs目录下的所有以后缀为.jar的文件导入,即导入jar包
  49. implementation fileTree(dir: "libs", include: ["*.jar"])
  50. // 使用该方式依赖的库将会参与编译和打包
  51. implementation 'androidx.appcompat:appcompat:1.2.0'
  52. implementation 'androidx.constraintlayout:constraintlayout:2.0.1'
  53. // 只在单元测试代码的编译以及最终打包测试apk时有效
  54. testImplementation 'junit:junit:4.12'
  55. androidTestImplementation 'androidx.test.ext:junit:1.1.2'
  56. androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
  57. }

dependencies

在Android Studio3.0之后,gradle也升级到3.x,依赖的方式进行更改,从原先的compile等方式更改为implementation,Android Studio也对这些方式进行一些扩充

compile

最普通的依赖方式,参与编译与打包

  • provided | gradle2.x | gradle3.x | | :—-: | :—-: | | | implementation | | compile | api | | provided | compileOnly |

image.png