build.gradle 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. import org.apache.tools.ant.taskdefs.condition.Os
  2. apply plugin: 'com.android.application'
  3. android {
  4. compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger()
  5. buildToolsVersion PROP_BUILD_TOOLS_VERSION
  6. defaultConfig {
  7. applicationId "com.aries.ttaxx"
  8. minSdkVersion PROP_MIN_SDK_VERSION
  9. targetSdkVersion PROP_TARGET_SDK_VERSION
  10. versionCode 1
  11. versionName "1.0"
  12. multiDexEnabled true
  13. externalNativeBuild {
  14. ndkBuild {
  15. if (!project.hasProperty("PROP_NDK_MODE") || PROP_NDK_MODE.compareTo('none') != 0) {
  16. // skip the NDK Build step if PROP_NDK_MODE is none
  17. targets 'cocos2djs'
  18. arguments 'NDK_TOOLCHAIN_VERSION=clang'
  19. def module_paths = [project.file("${System.getenv("COCOSCREATOR_HOME")}/resources/.editors/Creator/2.4.5/resources/cocos2d-x"),
  20. project.file("${System.getenv("COCOSCREATOR_HOME")}/resources/.editors/Creator/2.4.5/resources/cocos2d-x/cocos"),
  21. project.file("${System.getenv("COCOSCREATOR_HOME")}/resources/.editors/Creator/2.4.5/resources/cocos2d-x/external")]
  22. if (Os.isFamily(Os.FAMILY_WINDOWS)) {
  23. arguments 'NDK_MODULE_PATH=' + module_paths.join(";")
  24. }
  25. else {
  26. arguments 'NDK_MODULE_PATH=' + module_paths.join(':')
  27. }
  28. arguments '-j' + Runtime.runtime.availableProcessors()
  29. abiFilters.addAll(PROP_APP_ABI.split(':').collect{it as String})
  30. }
  31. }
  32. }
  33. }
  34. sourceSets.main {
  35. java.srcDirs "../src", "src"
  36. res.srcDirs "../res", 'res'
  37. jniLibs.srcDirs "../libs", 'libs'
  38. res.srcDirs += "libs/topon/res" //这边是全路径
  39. manifest.srcFile "AndroidManifest.xml"
  40. }
  41. externalNativeBuild {
  42. ndkBuild {
  43. if (!project.hasProperty("PROP_NDK_MODE") || PROP_NDK_MODE.compareTo('none') != 0) {
  44. // skip the NDK Build step if PROP_NDK_MODE is none
  45. path "jni/Android.mk"
  46. }
  47. }
  48. }
  49. signingConfigs {
  50. release {
  51. if (project.hasProperty("RELEASE_STORE_FILE")) {
  52. storeFile file(RELEASE_STORE_FILE)
  53. storePassword RELEASE_STORE_PASSWORD
  54. keyAlias RELEASE_KEY_ALIAS
  55. keyPassword RELEASE_KEY_PASSWORD
  56. }
  57. }
  58. }
  59. buildTypes {
  60. release {
  61. debuggable false
  62. jniDebuggable false
  63. renderscriptDebuggable false
  64. minifyEnabled true
  65. shrinkResources true
  66. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  67. if (project.hasProperty("RELEASE_STORE_FILE")) {
  68. signingConfig signingConfigs.release
  69. }
  70. externalNativeBuild {
  71. ndkBuild {
  72. arguments 'NDK_DEBUG=0'
  73. }
  74. }
  75. //FC:生成BuildConfig文件
  76. buildConfigField "String", "TF_CHANNEL", "${TF_CHANNEL}"
  77. buildConfigField "String", "JL_AID", "${JL_AID}"
  78. buildConfigField "String", "JL_CHANNEL", "${JL_CHANNEL}"
  79. buildConfigField "String", "KS_AID", "${KS_AID}"
  80. buildConfigField "String", "KS_ANAME", "${KS_ANAME}"
  81. buildConfigField "String", "KS_CHANNEL", "${KS_CHANNEL}"
  82. buildConfigField "String", "UM_AID", "${UM_AID}"
  83. buildConfigField "String", "UM_CHANNEL", "${UM_CHANNEL}"
  84. buildConfigField "String", "UM_SECRET", "${UM_SECRET}"
  85. buildConfigField "String", "WX_APP_ID", "${WX_APP_ID}"
  86. buildConfigField "String", "TOPON", "${TOPON}"
  87. }
  88. debug {
  89. debuggable true
  90. jniDebuggable true
  91. renderscriptDebuggable true
  92. externalNativeBuild {
  93. ndkBuild {
  94. arguments 'NDK_DEBUG=1'
  95. }
  96. }
  97. //FC:生成BuildConfig文件
  98. buildConfigField "String", "TF_CHANNEL", "${TF_CHANNEL}"
  99. buildConfigField "String", "JL_AID", "${JL_AID}"
  100. buildConfigField "String", "JL_CHANNEL", "${JL_CHANNEL}"
  101. buildConfigField "String", "KS_AID", "${KS_AID}"
  102. buildConfigField "String", "KS_ANAME", "${KS_ANAME}"
  103. buildConfigField "String", "KS_CHANNEL", "${KS_CHANNEL}"
  104. buildConfigField "String", "UM_AID", "${UM_AID}"
  105. buildConfigField "String", "UM_CHANNEL", "${UM_CHANNEL}"
  106. buildConfigField "String", "UM_SECRET", "${UM_SECRET}"
  107. buildConfigField "String", "WX_APP_ID", "${WX_APP_ID}"
  108. buildConfigField "String", "TOPON", "${TOPON}"
  109. }
  110. }
  111. }
  112. android.applicationVariants.all { variant ->
  113. // delete previous files first
  114. delete "${buildDir}/intermediates/merged_assets/${variant.dirName}"
  115. variant.mergeAssets.doLast {
  116. def sourceDir = "${buildDir}/../../../../.."
  117. copy {
  118. from "${sourceDir}"
  119. include "assets/**"
  120. include "src/**"
  121. include "jsb-adapter/**"
  122. into outputDir
  123. }
  124. copy {
  125. from "${sourceDir}/main.js"
  126. from "${sourceDir}/project.json"
  127. into outputDir
  128. }
  129. }
  130. }
  131. dependencies {
  132. implementation fileTree(dir: '../libs', include: ['*.jar','*.aar'])
  133. implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
  134. implementation fileTree(dir: "${System.getenv("COCOSCREATOR_HOME")}/resources/.editors/Creator/2.4.5/resources/cocos2d-x/cocos/platform/android/java/libs", include: ['*.jar'])
  135. implementation project(':libcocos2dx')
  136. //微信SDK(登录、分享等)
  137. api 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'
  138. //聚合SDK
  139. api 'com.android.support:appcompat-v7:28.0.0' //Gradle中要补充Support v7插件的引入,否则会集成失败
  140. api fileTree(include: ['*.jar','*.aar'], dir: 'libs/topon')
  141. api fileTree(include: ['*.jar','*.aar'], dir: 'libs/topon/libs')
  142. api 'com.android.support:design:28.0.0'//从v5.6.2版本开始,如果有聚合快手的v2.7.2及以上版本需要添加此依赖
  143. implementation 'com.android.support:multidex:1.0.3' //应对接入后发布报single dex相关错误,defaultConfig中需同步设置multiDexEnabled true
  144. //OaidSDK
  145. api fileTree(include: ['*.jar','*.aar'], dir: 'libs/oaid')
  146. }