build.gradle 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. apply plugin: "com.android.application"
  2. def releaseTime() {
  3. return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC"))
  4. }
  5. android {
  6. compileSdkVersion 28
  7. defaultConfig {
  8. applicationId "com.edufound.android.xyyf"
  9. minSdkVersion 16
  10. targetSdkVersion 28
  11. versionCode 10000
  12. versionName "1.0.0.0"
  13. testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  14. multiDexEnabled true
  15. flavorDimensions "versionCode"
  16. manifestPlaceholders = [UMENG_CHANNEL_VALUE: "2006"]//添加一个默认渠道号
  17. }
  18. signingConfigs {
  19. efunbox {
  20. keyAlias "edufound_key"
  21. keyPassword "edufound321"
  22. storeFile file("C:/Users/Candy/Desktop/edufound.keystore")
  23. storePassword "edufound123"
  24. }
  25. debug {
  26. keyAlias "edufound_key"
  27. keyPassword "edufound321"
  28. storeFile file("C:/Users/Candy/Desktop/edufound.keystore")
  29. storePassword "edufound123"
  30. }
  31. }
  32. buildTypes {
  33. release {
  34. minifyEnabled false
  35. proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
  36. signingConfig signingConfigs.efunbox
  37. // zipAlignEnabled true
  38. applicationVariants.all { variant ->
  39. variant.outputs.each { output ->
  40. def outputFile = output.outputFileName
  41. if (outputFile != null && output.outputFileName.endsWith('.apk')) {
  42. def fileName = "efunbox_tv_v${defaultConfig.versionCode}_${releaseTime()}_${variant.productFlavors[0].manifestPlaceholders.UMENG_CHANNEL_VALUE}_r.apk"
  43. def channel = variant.productFlavors[0].manifestPlaceholders.UMENG_CHANNEL_VALUE;
  44. def newoutputFile = "";
  45. if (channel == ("2006")) {
  46. newoutputFile = "\\义方\\"
  47. } else if (channel == ("2001")) {
  48. newoutputFile = "\\应用宝\\"
  49. } else if (channel == ("2002")) {
  50. newoutputFile = "\\360应用市场\\"
  51. } else if (channel == ("2003")) {
  52. newoutputFile = "\\百度手机助手\\"
  53. } else if (channel == ("2008")) {
  54. newoutputFile = "\\小米\\"
  55. } else if (channel == ("2007")) {
  56. newoutputFile = "\\vivo\\"
  57. } else if (channel == ("2004")) {
  58. newoutputFile = "\\oppo\\"
  59. } else if (channel == ("2005")) {
  60. newoutputFile = "\\huawei\\"
  61. }
  62. output.outputFileName = new File(newoutputFile, fileName)
  63. }
  64. }
  65. }
  66. }
  67. debug {
  68. minifyEnabled false
  69. proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
  70. signingConfig signingConfigs.efunbox
  71. }
  72. }
  73. repositories {
  74. flatDir {
  75. dirs "libs"
  76. }
  77. mavenCentral()
  78. }
  79. sourceSets {
  80. main {
  81. jniLibs.srcDirs = ["libs"]
  82. }
  83. }
  84. productFlavors {
  85. //义方
  86. channel_efunbox {
  87. signingConfig signingConfigs.efunbox
  88. manifestPlaceholders = [
  89. appCode: "2006",
  90. appIcon: "@drawable/icon",
  91. ]
  92. }
  93. //应用宝
  94. channel_yyb {
  95. signingConfig signingConfigs.efunbox
  96. manifestPlaceholders = [
  97. appCode: "2001",
  98. appIcon: "@drawable/icon",
  99. ]
  100. }
  101. //360应用市场
  102. channel_360 {
  103. signingConfig signingConfigs.efunbox
  104. manifestPlaceholders = [
  105. appCode: "2002",
  106. appIcon: "@drawable/icon",
  107. ]
  108. }
  109. //百度手机助手
  110. channel_bdsjzs {
  111. signingConfig signingConfigs.efunbox
  112. manifestPlaceholders = [
  113. appCode: "2003",
  114. appIcon: "@drawable/icon",
  115. ]
  116. }
  117. //vivo
  118. channel_vivo {
  119. signingConfig signingConfigs.efunbox
  120. manifestPlaceholders = [
  121. appCode: "2007",
  122. appIcon: "@drawable/icon",
  123. ]
  124. }
  125. //小米
  126. channel_xiaomi {
  127. signingConfig signingConfigs.efunbox
  128. manifestPlaceholders = [
  129. appCode: "2008",
  130. appIcon: "@drawable/icon",
  131. ]
  132. }
  133. //OPPO
  134. channel_oppo {
  135. signingConfig signingConfigs.efunbox
  136. manifestPlaceholders = [
  137. appCode: "2004",
  138. appIcon: "@drawable/icon",
  139. ]
  140. }
  141. //华为
  142. channel_huawei {
  143. signingConfig signingConfigs.efunbox
  144. applicationIdSuffix ".hw"
  145. manifestPlaceholders = [
  146. appCode: "2005",
  147. appIcon: "@drawable/icon",
  148. ]
  149. }
  150. }
  151. productFlavors.all {
  152. flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: manifestPlaceholders.appCode, icon: manifestPlaceholders.appIcon]
  153. }
  154. }
  155. allprojects {
  156. repositories {
  157. jcenter()
  158. }
  159. }
  160. dependencies {
  161. implementation fileTree(dir: "libs", include: ["*.jar"])
  162. implementation 'com.android.support.constraint:constraint-layout:1.0.2'
  163. implementation "com.android.support:appcompat-v7:28.0.0"
  164. implementation "android.arch.navigation:navigation-fragment:1.0.0"
  165. implementation "android.arch.navigation:navigation-ui:1.0.0"
  166. // required, enough for most devices.
  167. api "tv.danmaku.ijk.media:ijkplayer-java:0.8.2"
  168. api "tv.danmaku.ijk.media:ijkplayer-armv7a:0.8.2"
  169. // Other ABIs: optional
  170. api "tv.danmaku.ijk.media:ijkplayer-armv5:0.8.2"
  171. api "tv.danmaku.ijk.media:ijkplayer-arm64:0.8.2"
  172. api "tv.danmaku.ijk.media:ijkplayer-x86:0.8.2"
  173. api "tv.danmaku.ijk.media:ijkplayer-x86_64:0.8.2"
  174. // ExoPlayer as IMediaPlayer: optional, experimental
  175. api "tv.danmaku.ijk.media:ijkplayer-exo:0.8.2"
  176. api files("libs/codec.jar")
  177. api files("libs/commons-codec-1.7.jar")
  178. api files("libs/commons-lang-2.2.jar")
  179. api files("libs/commons-net-3.3.jar")
  180. api files("libs/bcprov-jdk15-136.jar")
  181. api "com.google.code.gson:gson:2.8.6"
  182. implementation 'com.alibaba:fastjson:1.2.73'
  183. //微信登录、微信支付等
  184. implementation "com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+"
  185. //支付宝支付
  186. implementation files("libs/alipaySdk-20180601.jar")
  187. implementation files("libs/dom4j-1.6.1.jar")
  188. //okhttp
  189. implementation "com.squareup.okhttp3:okhttp:3.4.1"
  190. //多种seekbar
  191. implementation "com.github.warkiz.widget:indicatorseekbar:2.1.0"
  192. // //PushSDK必须依赖基础组件库,所以需要加入对应依赖
  193. // implementation "com.umeng.umsdk:common:2.1.0"
  194. // //PushSDK
  195. // implementation "com.umeng.umsdk:push:6.0.1"
  196. api project(":push")
  197. //小米Push通道
  198. implementation "com.umeng.umsdk:xiaomi-push:3.6.17"
  199. implementation "com.umeng.umsdk:xiaomi-umengaccs:1.1.0"
  200. //华为Push通道
  201. implementation "com.umeng.umsdk:huawei-basetb:2.6.3.305"
  202. implementation "com.umeng.umsdk:huawei-pushtb:2.6.3.305"
  203. implementation "com.umeng.umsdk:huawei-umengaccs:1.2.1"
  204. //魅族Push通道
  205. implementation "com.umeng.umsdk:meizu-push:3.8.1"
  206. implementation "com.umeng.umsdk:meizu-umengaccs:1.0.6"
  207. //vivo Push通道
  208. implementation "com.umeng.umsdk:vivo-push:2.3.1"
  209. implementation "com.umeng.umsdk:vivo-umengaccs:1.0.4"
  210. //Oppo Push通道
  211. implementation "com.umeng.umsdk:oppo-push:1.0.1"
  212. implementation "com.umeng.umsdk:oppo-umengaccs:1.0.3"
  213. //cardView
  214. implementation 'com.android.support:cardview-v7:28.0.0'
  215. //recyclerview
  216. implementation 'com.android.support:recyclerview-v7:28.0.0'
  217. //wheelview
  218. implementation 'com.cncoderx.wheelview:library:1.2.5'
  219. //阿里一键登录和校验
  220. implementation(name: 'crashshield-release', ext: 'aar')
  221. implementation(name: 'phoneNumber-L-AuthSDK-2.11.1.1', ext: 'aar')
  222. }