baseconfig.gradle 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. android {
  2. compileSdkVersion rootProject.ext.compileSdkVersion
  3. buildToolsVersion rootProject.ext.buildToolsVersion
  4. defaultConfig {
  5. minSdkVersion rootProject.ext.minSdkVersion
  6. targetSdkVersion rootProject.ext.targetSdkVersion
  7. versionCode rootProject.ext.versionCode
  8. versionName rootProject.ext.versionName
  9. vectorDrawables.useSupportLibrary = true
  10. testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  11. multiDexEnabled true
  12. }
  13. dataBinding {
  14. enabled true
  15. }
  16. /**
  17. * 签名设置
  18. */
  19. signingConfigs {
  20. release {
  21. storeFile file(RELEASE_STORE_FILE)
  22. storePassword RELEASE_STORE_PASSWORD
  23. keyAlias "聊球"
  24. keyPassword RELEASE_KEY_PASSWORD
  25. }
  26. }
  27. buildTypes {
  28. release {
  29. ndk {
  30. abiFilters "armeabi-v7a"
  31. // abiFilters "arm64-v8a", "armeabi-v7a", "x86", "x86_64"
  32. }
  33. signingConfig signingConfigs.release
  34. buildConfigField "String", "BaseUrl", "\"" + BaseUrl + "\""
  35. //移除无用的resource文件 shrinkResources依赖于minifyEnabled,必须和minifyEnabled一起用
  36. proguardFiles getDefaultProguardFile('proguard-android.txt'), PROGUARD_RULES
  37. minifyEnabled true //是否混淆
  38. shrinkResources false
  39. zipAlignEnabled true //对齐操作,使得我们的程序在Android系统中运行得更快
  40. buildConfigField "Boolean", "allowBackup", "false"
  41. manifestPlaceholders = [AMAP_KEY: "3ac68165c303d56418c5ed375884f544", allowBackup: "false"]
  42. }
  43. debug {
  44. ndk {
  45. abiFilters "armeabi-v7a"
  46. // abiFilters "arm64-v8a", "armeabi-v7a", "x86", "x86_64"
  47. }
  48. signingConfig signingConfigs.release
  49. // buildConfigField "String", "BaseUrl", "\"http://192.168.0.42/\""
  50. buildConfigField "String", "BaseUrl", "\"http://43.255.39.52/\""
  51. manifestPlaceholders = [AMAP_KEY: "62d92d8557a59aeaf077b895b87ed338", allowBackup: "true"]
  52. minifyEnabled false//是否混淆
  53. shrinkResources false
  54. zipAlignEnabled true //对齐操作,使得我们的程序在Android系统中运行得更快
  55. proguardFiles getDefaultProguardFile('proguard-android.txt'), PROGUARD_RULES
  56. }
  57. }
  58. sourceSets {
  59. main {
  60. manifest.srcFile 'src/main/AndroidManifest.xml'
  61. renderscript.srcDirs = ['src']
  62. aidl.srcDirs = ['src']
  63. res.srcDirs = ['src/main/res', 'src/main/res-chatroom', 'src/main/res-rp']
  64. jniLibs.srcDirs = ['libs', 'libs-sdk']
  65. assets.srcDirs = ['src/main/assets']
  66. }
  67. }
  68. lintOptions {
  69. abortOnError false
  70. checkReleaseBuilds false
  71. disable 'GoogleAppIndexingWarning'
  72. // 防止在发布的时候出现因MissingTranslation导致Build Failed!
  73. // disable 'MissingTranslation'
  74. }
  75. dexOptions {
  76. preDexLibraries false
  77. jumboMode true
  78. javaMaxHeapSize "4g"
  79. }
  80. packagingOptions {
  81. exclude 'META-INF/DEPENDENCIES'
  82. exclude 'META-INF/LICENSE'
  83. exclude 'META-INF/LICENSE.txt'
  84. exclude 'META-INF/license.txt'
  85. exclude 'META-INF/NOTICE'
  86. exclude 'META-INF/NOTICE.txt'
  87. exclude 'META-INF/notice.txt'
  88. exclude 'META-INF/ASL2.0'
  89. exclude 'META-INF/INDEX.LIST'
  90. }
  91. aaptOptions {
  92. cruncherEnabled = false
  93. useNewCruncher = false
  94. }
  95. flavorDimensions "rc"
  96. compileOptions {
  97. sourceCompatibility JavaVersion.VERSION_1_8
  98. targetCompatibility JavaVersion.VERSION_1_8
  99. }
  100. }
  101. //拷贝APK文件到指定文件夹
  102. task copyAPK(type: Copy) {
  103. include '**/*.apk'
  104. from '/build/outputs/apk'
  105. into '../APK/'
  106. }
  107. //在task被添加的时候定义依赖关系,copyApk任务总是在打包完成后执行
  108. tasks.whenTaskAdded {
  109. task ->
  110. if (task.name.startsWith("assemble") && task.name.endsWith('Release')) {
  111. task.finalizedBy copyAPK
  112. }
  113. }