123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203 |
- apply plugin: 'com.android.library'
- dependencies {
- implementation fileTree(dir: 'libs', include: ['*.jar'])
- //内购
- //implementation 'com.android.billingclient:billing:7.0.0'
- def lifecycle_version = "2.0.0"
- api "androidx.lifecycle:lifecycle-extensions:$lifecycle_version"
- api "androidx.lifecycle:lifecycle-runtime:$lifecycle_version"
- annotationProcessor "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"
- //google
- implementation 'com.google.android.gms:play-services-base:17.6.0'
- implementation 'com.google.android.gms:play-services-auth:20.2.0'
- implementation "com.google.android.gms:play-services-games-v2:+"
- configurations.all {
- resolutionStrategy {
- force 'com.google.android.gms:play-services-tasks:18.0.2'
- }
- }
- implementation "androidx.core:core:1.1.0"
- implementation "androidx.localbroadcastmanager:localbroadcastmanager:1.0.0"
- //应用内评论
- implementation 'com.google.android.play:review:2.0.1'
- //gosn
- implementation 'com.google.code.gson:gson:2.8.6'
- implementation 'com.facebook.android:facebook-core:16.1.3'
- implementation 'com.facebook.android:facebook-login:16.1.3'
- implementation 'com.facebook.android:facebook-share:16.1.3'
- implementation 'com.facebook.android:facebook-gamingservices:16.1.3'
- implementation 'androidx.legacy:legacy-support-v4:1.0.0'
- implementation 'androidx.annotation:annotation:1.1.0'
- implementation 'androidx.appcompat:appcompat:1.1.0'
- //FireBase
- implementation platform('com.google.firebase:firebase-bom:32.1.1')
- implementation 'com.google.firebase:firebase-analytics'
- implementation 'com.google.firebase:firebase-config'
- implementation 'com.google.firebase:firebase-crashlytics'
- //appsflyer
- implementation 'com.appsflyer:af-android-sdk:6.12.1'
- implementation 'com.android.installreferrer:installreferrer:2.2'
- implementation 'com.appsflyer:adrevenue:6.9.0'
- //okhttp
- implementation("com.squareup.okhttp3:okhttp:4.9.2")
- implementation("com.squareup.okhttp3:logging-interceptor:4.9.2")
- implementation 'com.alibaba:fastjson:1.2.80'
- //广告
- implementation 'com.google.android.gms:play-services-ads:22.6.0'
- implementation 'com.google.ads.mediation:facebook:6.16.0.0'
- implementation 'com.google.ads.mediation:applovin:12.1.0.1'
- implementation 'com.google.ads.mediation:ironsource:7.7.0.1'
- implementation ('com.google.ads.mediation:tapjoy:13.0.1.0') {
- exclude group: 'com.google.android.gms', module: 'services-ads-identifier'
- }
- //implementation 'com.unity3d.ads:unity-ads:4.9.2'
- implementation 'com.google.ads.mediation:unity:4.9.2.0'
- implementation 'com.google.ads.mediation:vungle:6.12.1.1'
- implementation 'com.google.ads.mediation:pangle:5.7.0.3.0'
- implementation("com.google.android.ump:user-messaging-platform:2.2.0")
- implementation(name: 'UnityAds', ext:'aar')
- implementation(name: 'common', ext:'aar')
- implementation(name: 'youloft-notification-release', ext:'aar')
- implementation(name: 'youloft-core-release', ext:'aar')
- implementation(name: 'youloft-googlepay-release', ext:'aar')
- implementation(name: 'youloft-ad-release', ext:'aar')
- implementation(name: 'billing-5.2.1', ext:'aar')
- }
- android {
- namespace "com.unity3d.player"
- ndkPath "D:/tuanJieEditor/2022.3.48t1/Editor/Data/PlaybackEngines/AndroidPlayer/NDK"
- compileSdkVersion 33
- buildToolsVersion '34.0.0'
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_11
- targetCompatibility JavaVersion.VERSION_11
- }
- defaultConfig {
- minSdkVersion 22
- targetSdkVersion 33
- ndk {
- abiFilters 'armeabi-v7a', 'arm64-v8a'
- }
- versionCode 1
- versionName '1.0'
- consumerProguardFiles 'proguard-tuanjie.txt'
- }
- lintOptions {
- abortOnError false
- }
- aaptOptions {
- noCompress = ['.tj3d', '.ress', '.resource', '.obb', '.bundle', '.tuanjieexp'] + tuanjieStreamingAssets.tokenize(', ')
- ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~"
- }
- packagingOptions {
- doNotStrip '*/armeabi-v7a/*.so'
- doNotStrip '*/arm64-v8a/*.so'
- jniLibs {
- useLegacyPackaging true
- }
- }
- }
- def getSdkDir() {
- Properties local = new Properties()
- local.load(new FileInputStream("${rootDir}/local.properties"))
- return local.getProperty('sdk.dir')
- }
- def BuildIl2Cpp(String workingDir, String configuration, String architecture, String abi, String[] staticLibraries) {
- def commandLineArgs = []
- commandLineArgs.add("--compile-cpp")
- commandLineArgs.add("--platform=Android")
- commandLineArgs.add("--architecture=" + architecture)
- commandLineArgs.add("--outputpath=" + workingDir + "/src/main/jniLibs/" + abi + "/libil2cpp.so")
- commandLineArgs.add("--baselib-directory=" + workingDir + "/src/main/jniStaticLibs/" + abi)
- commandLineArgs.add("--incremental-g-c-time-slice=3")
- commandLineArgs.add("--configuration=" + configuration)
- commandLineArgs.add("--dotnetprofile=unityaot-linux")
- commandLineArgs.add("--profiler-report")
- commandLineArgs.add("--profiler-output-file=" + workingDir + "/build/il2cpp_"+ abi + "_" + configuration + "/il2cpp_conv.traceevents")
- commandLineArgs.add("--print-command-line")
- commandLineArgs.add("--data-folder=" + workingDir + "/src/main/Il2CppOutputProject/Source/il2cppOutput/data")
- commandLineArgs.add("--generatedcppdir=" + workingDir + "/src/main/Il2CppOutputProject/Source/il2cppOutput")
- commandLineArgs.add("--cachedirectory=" + workingDir + "/build/il2cpp_"+ abi + "_" + configuration + "/il2cpp_cache")
- commandLineArgs.add("--tool-chain-path=" + android.ndkDirectory)
- staticLibraries.eachWithIndex {fileName, i->
- commandLineArgs.add("--additional-libraries=" + workingDir + "/src/main/jniStaticLibs/" + abi + "/" + fileName)
- }
- def executableExtension = ""
- if (org.gradle.internal.os.OperatingSystem.current().isWindows()) {
- executableExtension = ".exe"
- commandLineArgs = commandLineArgs*.replace('\"', '\\\"')
- }
- exec {
- executable workingDir + "/src/main/Il2CppOutputProject/IL2CPP/build/deploy/il2cpp" + executableExtension
- args commandLineArgs
- environment "ANDROID_SDK_ROOT", getSdkDir()
- }
- delete workingDir + "/src/main/jniLibs/" + abi + "/libil2cpp.sym.so"
- ant.move(file: workingDir + "/src/main/jniLibs/" + abi + "/libil2cpp.dbg.so", tofile: workingDir + "/symbols/" + abi + "/libil2cpp.so")
- }
- android {
- task BuildIl2CppTask {
- doLast {
- BuildIl2Cpp(projectDir.toString().replaceAll('\\\\', '/'), 'Release', 'armv7', 'armeabi-v7a', [ ] as String[]);
- BuildIl2Cpp(projectDir.toString().replaceAll('\\\\', '/'), 'Release', 'arm64', 'arm64-v8a', [ ] as String[]);
- }
- }
- afterEvaluate {
- if (project(':tuanjieLibrary').tasks.findByName('mergeDebugJniLibFolders'))
- project(':tuanjieLibrary').mergeDebugJniLibFolders.dependsOn BuildIl2CppTask
- if (project(':tuanjieLibrary').tasks.findByName('mergeReleaseJniLibFolders'))
- project(':tuanjieLibrary').mergeReleaseJniLibFolders.dependsOn BuildIl2CppTask
- }
- sourceSets {
- main {
- jni.srcDirs = ["src/main/Il2CppOutputProject"]
- }
- }
- }
|