build.gradle 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. import org.json.JSONObject
  2. apply plugin: 'com.android.application'
  3. apply plugin: "androidx.navigation.safeargs"
  4. // 获取最新版本名称和版本号
  5. def newVersion = new JSONObject(file('../version_info.json').text).optJSONArray("info").getJSONObject(0)
  6. def vName = newVersion.optString("versionName")
  7. def vCode = newVersion.optLong("versionCode")
  8. println vName
  9. println vCode
  10. android {
  11. compileSdkVersion 28
  12. defaultConfig {
  13. applicationId "com.unis.sxzcl"
  14. minSdkVersion 16
  15. targetSdkVersion 28
  16. versionCode vCode.toInteger()
  17. versionName vName
  18. ndk {
  19. //设置支持的SO库架构
  20. abiFilters 'armeabi-v7a' //,'x86', 'x86_64', 'arm64-v8a'
  21. }
  22. multiDexEnabled true
  23. flavorDimensions "channel"
  24. }
  25. // view绑定
  26. viewBinding {
  27. enabled = true
  28. }
  29. // 签名配置
  30. signingConfigs {
  31. release {
  32. v1SigningEnabled true
  33. v2SigningEnabled true
  34. storeFile file(KEY_PATH)
  35. storePassword KEY_PWD
  36. keyAlias = ALIAS_NAME
  37. keyPassword ALIAS_PWD
  38. }
  39. }
  40. buildTypes {
  41. release {
  42. minifyEnabled true
  43. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  44. signingConfig signingConfigs.release
  45. zipAlignEnabled = true
  46. }
  47. debug {
  48. signingConfig signingConfigs.release
  49. }
  50. }
  51. compileOptions {
  52. sourceCompatibility 1.8
  53. targetCompatibility 1.8
  54. }
  55. sourceSets {
  56. main {
  57. jniLibs.srcDirs = ['libs']
  58. }
  59. }
  60. lintOptions {
  61. checkReleaseBuilds false
  62. abortOnError false
  63. }
  64. //配置自定义打包名称和位置
  65. android.applicationVariants.all { variant ->
  66. // 将apk文件输出到 /apk/release 或 /apk/debug
  67. variant.getPackageApplicationProvider().get().outputDirectory = new File("../apk/" + variant.buildType.name)
  68. variant.outputs.all { output ->
  69. def date = new Date().format("yyyyMMddHHmm")
  70. def versionName = defaultConfig.versionName
  71. def versionCode = defaultConfig.versionCode
  72. def buildType = variant.buildType.name
  73. // 输出的apk名称
  74. // sxzcl_release_x.x_x.apk
  75. outputFileName = "sxzcl_${buildType}_${versionName}_${versionCode}.apk"
  76. }
  77. }
  78. }
  79. dependencies {
  80. implementation fileTree(dir: "libs", include: ["*.jar"])
  81. implementation 'androidx.appcompat:appcompat:1.2.0'
  82. implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
  83. implementation 'com.android.support:design:28.0.3'
  84. implementation 'com.android.support:support-v4:28.0.0'
  85. implementation 'com.google.android:flexbox:2.0.1'
  86. implementation 'com.android.support:multidex:1.0.3'
  87. api project(path: ':icon')
  88. api project(path: ':model')
  89. //状态栏框架
  90. implementation 'com.jaeger.statusbarutil:library:1.5.1'
  91. //图片压缩
  92. implementation 'com.github.nanchen2251:CompressHelper:1.0.5'
  93. //轮播图
  94. implementation 'com.youth.banner:banner:2.1.0'
  95. implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
  96. //图表库
  97. implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
  98. implementation 'androidx.navigation:navigation-fragment:2.3.2'
  99. implementation 'androidx.navigation:navigation-ui:2.3.2'
  100. }