From 33713cb7fb3d6760e3695ab46b5d28241bc0f846 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期四, 07 四月 2022 23:02:08 +0800
Subject: [PATCH] 0312 更改gradle版本

---
 SdkProject/library/build.gradle |  173 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 148 insertions(+), 25 deletions(-)

diff --git a/SdkProject/library/build.gradle b/SdkProject/library/build.gradle
index dc4132e..56acdaa 100644
--- a/SdkProject/library/build.gradle
+++ b/SdkProject/library/build.gradle
@@ -1,6 +1,7 @@
 plugins {
     id 'com.android.library'
 }
+
 def rootPath = rootProject.getRootDir().getAbsolutePath()
 def channelPath = "${rootPath}/channel/${CHANNEL_NAME}"
 
@@ -11,34 +12,40 @@
         apply from: path
 }
 
-applyGradle("${rootPath}/utils")
-applyGradle("${channelPath}/build")
+applyGradle("${rootPath}/utils")//宸ュ叿鑴氭湰
+applyGradle("${channelPath}/build")//娓犻亾鑴氭湰
+applyGradle("${channelPath}/deps")//娓犻亾鐨勮繙绋嬩緷璧栬剼鏈�
 
-Properties localProp = loadProperties('local')
-Properties channelProp = loadProperties("${channelPath}/config")
+Properties localProp = loadProperties('local')//鏈湴閰嶇疆
+Properties channelProp = loadProperties("${channelPath}/config")//娓犻亾鎵�灞炵殑閰嶇疆
 
+def outPutPath = localProp.getProperty("OUTPUT_PATH")//宸ョ▼sdk杈撳嚭璺緞
+
+//褰撳墠娓犻亾鎵�搴旂敤鐨勬彃浠跺悕
 def plugins = channelProp.getProperty("PLUGINS").split(';')
-
+//鎻掍欢鑴氭湰
 plugins.each {
     applyGradle("${rootPath}/plugins/${it}/build")
+    applyGradle("${rootPath}/plugins/${it}/deps")
 }
 
 //娓犻亾闇�瑕佽鐩栦富鐩綍鐨刯ava鏂囦欢
 def channelJavaFiles = getAllFiles(new ArrayList<File>(), "${channelPath}/java")
 
 android {
-    compileSdkVersion 29
-    buildToolsVersion "30.0.2"
+    compileSdkVersion 30
+    buildToolsVersion "28.0.3"
 
     defaultConfig {
         minSdkVersion 21
-        targetSdkVersion 29
+        targetSdkVersion 30
         versionCode 1
         versionName "1.0"
 
-        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
+//        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
         consumerProguardFiles "consumer-rules.pro"
     }
+
 
     flavorDimensions "version"
     productFlavors {
@@ -93,25 +100,141 @@
                 java.srcDirs "${pluginPath}/java"
                 jniLibs.srcDirs "${pluginPath}libs"
                 res.srcDirs "${pluginPath}/res"
-                manifest {
-                    File file = file("${pluginPath}/AndroidManifest.xml")
-                    if (file.exists())
-                        srcFile "${pluginPath}/AndroidManifest.xml"
-                }
+                //娓呭崟鍙兘鍚堝苟涓�涓紝鎵�鏈夋彃浠剁殑娓呭崟闇�瑕佹墜鍔ㄥ鍒跺埌瀵瑰簲鐨勬笭閬撻噷
             }
         }
     }
-
 }
-dependencies {
-    implementation 'androidx.appcompat:appcompat:1.2.0'
-    implementation 'com.google.android.material:material:1.2.1'
-    implementation 'androidx.constraintlayout:constraintlayout:2.0.3'
-    implementation 'androidx.navigation:navigation-fragment:2.3.1'
-    implementation 'androidx.navigation:navigation-ui:2.3.1'
-    testImplementation 'junit:junit:4.+'
-    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
-    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
 
-    implementation files('libs/unity-classes.jar')
+android.libraryVariants.all { variant ->
+    variant.outputs.all {
+        outputFileName = "library-${buildType.name}-${CHANNEL_NAME}.aar"
+    }
+}
+
+//鎷疯礉娓呭崟鏂囦欢
+task copyDebugManifest(type: Copy) {
+    from zipTree("build/outputs/aar/library-debug-${CHANNEL_NAME}.aar")
+    include "AndroidManifest.xml"
+    into "${outPutPath}\\${CHANNEL_NAME}\\debug"
+}
+//鎷疯礉娓呭崟鏂囦欢
+task copyManifest(type: Copy) {
+    dependsOn 'copyDebugManifest'
+    from zipTree("build/outputs/aar/library-release-${CHANNEL_NAME}.aar")
+    include "AndroidManifest.xml"
+    into "${outPutPath}\\${CHANNEL_NAME}\\release"
+}
+
+//鎷疯礉debug aar
+task copyDebugSdk(type: Copy) {
+    from "build/outputs/aar/"
+    include "library-debug-${CHANNEL_NAME}.aar"
+    into "${outPutPath}\\${CHANNEL_NAME}\\debug\\libs\\"
+}
+
+task copyReleaseSdk(type: Copy) {
+    from "build/outputs/aar/"
+    include "library-release-${CHANNEL_NAME}.aar"
+    into "${outPutPath}\\${CHANNEL_NAME}\\release\\libs\\"
+}
+
+task deleteSdk() {
+    delete "${outPutPath}\\${CHANNEL_NAME}\\debug"
+    delete "${outPutPath}\\${CHANNEL_NAME}\\release"
+}
+
+//鎵ц鎵撳寘浠诲姟浠ュ強鎷疯礉鍒板閮�
+task assembleAndCopySdk() {
+    dependsOn 'assemble'
+    dependsOn deleteSdk
+    dependsOn copyDebugSdk
+    dependsOn copyReleaseSdk
+
+    tasks.findByName('deleteSdk').mustRunAfter 'assembleMerger'
+    tasks.findByName('copyDebugSdk').mustRunAfter 'deleteSdk'
+    tasks.findByName('copyReleaseSdk').mustRunAfter 'deleteSdk'
+
+    //瀵煎嚭鎵�鏈夊閮ㄥ紩鐢�
+    String content = ""
+    def deps = file("${channelPath}\\deps.gradle")
+    deps.eachLine { line ->
+        if (line != null)
+            content += line + "\n"
+    }
+    plugins.each {
+        deps = file("${rootPath}/plugins/${it}/deps.gradle")
+        if(deps.exists()){
+            deps.eachLine { line ->
+                if (line != null)
+                    content += line + "\n"
+            }
+        }
+    }
+    def dir = new File("${outPutPath}\\${CHANNEL_NAME}")
+    def libraries = new File("${outPutPath}\\${CHANNEL_NAME}\\deps.gradle")
+    dir.mkdir()
+    if (libraries.exists())
+        libraries.delete()
+    if (!libraries.exists())
+        libraries.createNewFile()
+    libraries.text = content
+}
+
+dependencies {
+    implementation 'androidx.annotation:annotation:1.0.0'
+    testImplementation 'junit:junit:4.13.2'
+    //noinspection GradleCompatible
+//    implementation 'com.android.support:appcompat-v7:28.0.0'
+
+//    implementation 'com.github.pqpo:Log4a:1.4.2@aar'
+
+    implementation fileTree(dir: "../channel/${CHANNEL_NAME}/libs/", include: ['*.jar'])
+    plugins.each {
+        implementation fileTree(dir: "${rootPath}/plugins/${it}/libs/", include: ['*.jar'])
+    }
+    implementation fileTree(dir: 'libs', include: ['*.jar'], exclude: ['unity-classes.jar'])
+
+    compileOnly fileTree(include: ['*.jar', '*.aar'], dir: 'libs')
+
+    implementation('androidx.appcompat:appcompat:1.0.0') {
+        force = true
+    }
+    implementation(name: 'SohaSDK', ext: 'aar')
+
+    implementation 'com.google.android.material:material:1.0.0'
+
+
+    api 'com.squareup.retrofit2:retrofit:2.5.0'
+    api 'com.squareup.retrofit2:converter-gson:2.4.0'
+    api 'com.squareup.okhttp3:logging-interceptor:3.9.0'
+
+
+    implementation 'com.google.firebase:firebase-analytics:17.4.1'
+    implementation 'com.google.firebase:firebase-messaging:20.1.7'
+    implementation 'com.google.firebase:firebase-dynamic-links:19.1.0'
+    implementation 'com.google.firebase:firebase-config:19.1.4'
+
+
+
+
+    implementation 'com.facebook.android:facebook-login:11.1.0'
+
+    implementation 'com.android.billingclient:billing:3.0.0'
+
+    implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.1.1'
+    implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.1.1'
+    implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
+
+    api 'com.github.bumptech.glide:glide:4.9.0'
+    annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
+    implementation 'com.github.ybq:Android-SpinKit:1.1.0'
+    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
+
+    api 'androidx.multidex:multidex:2.0.1'
+    api 'com.appsflyer:af-android-sdk:5.4.1'
+    api 'com.android.installreferrer:installreferrer:1.0'
+    api 'com.google.android.gms:play-services-auth:18.0.0'
+
+    implementation 'com.adjust.sdk:adjust-android:4.28.3'
 }
\ No newline at end of file

--
Gitblit v1.8.0