diff --git a/.gitignore b/.gitignore index 783ed2a..e2424b3 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,10 @@ sdk-intergration/.idea .worktrees/* .docs/* .claude/* +sdk-intergration/Assets/Plugins/Android/channel_gradle/ +sdk-intergration/Assets/Plugins/Android/channel_gradle.meta +sdk-intergration/Assets/Plugins/Android/channel_manifest_lib/build/ +sdk-intergration/Assets/Plugins/Android/channel_manifest_lib/build.meta +ChannelConfigs/Android/*/Plugins/Android/gradle/.gradle/ +ChannelConfigs/Android/*/Plugins/Android/gradle/build/ diff --git a/ChannelConfigs/Android/_template/AndroidManifest.xml b/ChannelConfigs/Android/_template/AndroidManifest.xml new file mode 100644 index 0000000..8677838 --- /dev/null +++ b/ChannelConfigs/Android/_template/AndroidManifest.xml @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/ChannelConfigs/Android/_template/ChannelAdapter.java b/ChannelConfigs/Android/_template/ChannelAdapter.java new file mode 100644 index 0000000..d1b5f41 --- /dev/null +++ b/ChannelConfigs/Android/_template/ChannelAdapter.java @@ -0,0 +1,8 @@ +package com.unity3d.player; + +public class ChannelAdapter extends ChannelAdapterBase { + private static class Config { + public String SDK_CLIENTID = "ReplaceWithChannelClientId"; + } +} + diff --git a/ChannelConfigs/Android/_template/Files/README.md b/ChannelConfigs/Android/_template/Files/README.md new file mode 100644 index 0000000..8fe758e --- /dev/null +++ b/ChannelConfigs/Android/_template/Files/README.md @@ -0,0 +1,12 @@ +# Files + +可选目录。 + +如果渠道提供 `google-services.json`,放在这里: + +```text +Files/google-services.json +``` + +没有渠道专用文件时可以保持为空。 + diff --git a/ChannelConfigs/Android/_template/Plugins/Android/README.md b/ChannelConfigs/Android/_template/Plugins/Android/README.md new file mode 100644 index 0000000..daf1cdd --- /dev/null +++ b/ChannelConfigs/Android/_template/Plugins/Android/README.md @@ -0,0 +1,16 @@ +# Plugins/Android + +可选目录。 + +渠道 SDK 的 `.aar` / `.jar` 放在这里。切渠道时,这里的第一层插件文件会同步到: + +```text +sdk-intergration/Packages/tysdk/Plugins/Android +``` + +Gradle 增量放到: + +```text +Plugins/Android/gradle/ +``` + diff --git a/ChannelConfigs/Android/_template/Plugins/Android/gradle/main.gradle b/ChannelConfigs/Android/_template/Plugins/Android/gradle/main.gradle new file mode 100644 index 0000000..a771ad4 --- /dev/null +++ b/ChannelConfigs/Android/_template/Plugins/Android/gradle/main.gradle @@ -0,0 +1,26 @@ +// Applied to :unityLibrary from mainTemplate.gradle. +// Put channel dependencies and android module config here. + +dependencies { + // implementation "group:name:version" + // api "group:name:version" + // coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" +} + +android { + // compileOptions { + // coreLibraryDesugaringEnabled true + // } + + // packagingOptions { + // exclude "**/unused.file" + // pickFirst "**/duplicated.file" + // } + + // defaultConfig { + // manifestPlaceholders += [ + // key: "value" + // ] + // } +} + diff --git a/ChannelConfigs/Android/_template/Plugins/Android/gradle/settings.gradle b/ChannelConfigs/Android/_template/Plugins/Android/gradle/settings.gradle new file mode 100644 index 0000000..3450a9c --- /dev/null +++ b/ChannelConfigs/Android/_template/Plugins/Android/gradle/settings.gradle @@ -0,0 +1,11 @@ +// Applied from settingsTemplate.gradle. +// Put channel Maven repositories or extra module includes here. + +dependencyResolutionManagement { + repositories { + // maven { + // url "https://example.maven.repo/" + // } + } +} + diff --git a/ChannelConfigs/Android/_template/README.md b/ChannelConfigs/Android/_template/README.md new file mode 100644 index 0000000..4eea483 --- /dev/null +++ b/ChannelConfigs/Android/_template/README.md @@ -0,0 +1,49 @@ +# Android 渠道接入模板 + +复制 `_template` 为新渠道目录,例如: + +```text +ChannelConfigs/Android/mychannel +``` + +然后按需填写下列文件。 + +## 目录说明 + +```text +AndroidManifest.xml +ChannelAdapter.java +Files/ + README.md +Plugins/ + Android/ + README.md + gradle/ + main.gradle + settings.gradle +``` + +## 新增渠道步骤 + +1. 复制 `_template` 并改名为渠道小写目录名。 +2. 将 `ChannelAdapter.java` 改名为真实 Adapter,例如 `MyChannelAdapter.java`。 +3. 修改 Adapter 类名,并按渠道 SDK 文档实现需要的接口。 +4. `AndroidManifest.xml` 只写渠道 Manifest 增量,不复制主 Manifest。 +5. 渠道有 `google-services.json` 时放到 `Files/`。 +6. 渠道有 `.aar` / `.jar` 时放到 `Plugins/Android/`。 +7. 渠道要求添加依赖或 `android {}` 配置时,写到 `Plugins/Android/gradle/main.gradle`。 +8. 渠道要求添加 Maven 仓库或额外 module 时,写到 `Plugins/Android/gradle/settings.gradle`。 + +## 不要复制这些文件 + +不要在渠道目录放整份 Unity Gradle 模板: + +```text +mainTemplate.gradle +settingsTemplate.gradle +launcherTemplate.gradle +baseProjectTemplate.gradle +gradleTemplate.properties +``` + +主模板由 `sdk-intergration/Assets/Plugins/Android/` 统一维护,渠道只提供增量。 diff --git a/ExtraPluginCfgs/AddressableAssetsData/Android/addressables_content_state.bin b/ChannelConfigs/Android/enjoypay/AddressableAssetsData/Android/addressables_content_state.bin similarity index 100% rename from ExtraPluginCfgs/AddressableAssetsData/Android/addressables_content_state.bin rename to ChannelConfigs/Android/enjoypay/AddressableAssetsData/Android/addressables_content_state.bin diff --git a/ExtraPluginCfgs/Android/enjoypay/AndroidManifest.xml b/ChannelConfigs/Android/enjoypay/AndroidManifest.xml similarity index 100% rename from ExtraPluginCfgs/Android/enjoypay/AndroidManifest.xml rename to ChannelConfigs/Android/enjoypay/AndroidManifest.xml diff --git a/ExtraPluginCfgs/Android/enjoypay/EnjoyPayAdapter.java b/ChannelConfigs/Android/enjoypay/EnjoyPayAdapter.java similarity index 100% rename from ExtraPluginCfgs/Android/enjoypay/EnjoyPayAdapter.java rename to ChannelConfigs/Android/enjoypay/EnjoyPayAdapter.java diff --git a/ExtraPluginCfgs/Android/enjoypay/Files/google-services.json b/ChannelConfigs/Android/enjoypay/Files/google-services.json similarity index 100% rename from ExtraPluginCfgs/Android/enjoypay/Files/google-services.json rename to ChannelConfigs/Android/enjoypay/Files/google-services.json diff --git a/ChannelConfigs/Android/enjoypay/Plugins/Android/gradle/main.gradle b/ChannelConfigs/Android/enjoypay/Plugins/Android/gradle/main.gradle new file mode 100644 index 0000000..9500d40 --- /dev/null +++ b/ChannelConfigs/Android/enjoypay/Plugins/Android/gradle/main.gradle @@ -0,0 +1,9 @@ +dependencies { + coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" +} + +android { + compileOptions { + coreLibraryDesugaringEnabled true + } +} diff --git a/ExtraPluginCfgs/Android/enjoypay/Plugins/Android/tuyoosdk_1.0.0.aar b/ChannelConfigs/Android/enjoypay/Plugins/Android/tuyoosdk_1.0.0.aar similarity index 100% rename from ExtraPluginCfgs/Android/enjoypay/Plugins/Android/tuyoosdk_1.0.0.aar rename to ChannelConfigs/Android/enjoypay/Plugins/Android/tuyoosdk_1.0.0.aar diff --git a/ExtraPluginCfgs/Android/flexion/AndroidManifest.xml b/ChannelConfigs/Android/flexion/AndroidManifest.xml similarity index 100% rename from ExtraPluginCfgs/Android/flexion/AndroidManifest.xml rename to ChannelConfigs/Android/flexion/AndroidManifest.xml diff --git a/ExtraPluginCfgs/Android/flexion/Files/google-services.json b/ChannelConfigs/Android/flexion/Files/google-services.json similarity index 100% rename from ExtraPluginCfgs/Android/flexion/Files/google-services.json rename to ChannelConfigs/Android/flexion/Files/google-services.json diff --git a/ExtraPluginCfgs/Android/flexion/FlexionAdapter.java b/ChannelConfigs/Android/flexion/FlexionAdapter.java similarity index 100% rename from ExtraPluginCfgs/Android/flexion/FlexionAdapter.java rename to ChannelConfigs/Android/flexion/FlexionAdapter.java diff --git a/ChannelConfigs/Android/flexion/Plugins/Android/gradle/main.gradle b/ChannelConfigs/Android/flexion/Plugins/Android/gradle/main.gradle new file mode 100644 index 0000000..87711e8 --- /dev/null +++ b/ChannelConfigs/Android/flexion/Plugins/Android/gradle/main.gradle @@ -0,0 +1,10 @@ +dependencies { + implementation("com.flexionmobile:sdk:4.0.1") + coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" +} + +android { + compileOptions { + coreLibraryDesugaringEnabled true + } +} diff --git a/ChannelConfigs/Android/flexion/Plugins/Android/gradle/settings.gradle b/ChannelConfigs/Android/flexion/Plugins/Android/gradle/settings.gradle new file mode 100644 index 0000000..784dbff --- /dev/null +++ b/ChannelConfigs/Android/flexion/Plugins/Android/gradle/settings.gradle @@ -0,0 +1,11 @@ +dependencyResolutionManagement { + repositories { + maven { + url = uri("https://maven.pkg.github.com/FlexionSDK/JavaSDK") + credentials { + username = "FlexionSDK" + password = "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" + } + } + } +} diff --git a/ExtraPluginCfgs/Android/flexion/Plugins/Android/tuyoosdk_1.0.0.aar b/ChannelConfigs/Android/flexion/Plugins/Android/tuyoosdk_1.0.0.aar similarity index 100% rename from ExtraPluginCfgs/Android/flexion/Plugins/Android/tuyoosdk_1.0.0.aar rename to ChannelConfigs/Android/flexion/Plugins/Android/tuyoosdk_1.0.0.aar diff --git a/ChannelConfigs/Android/rustore/AddressableAssetsData/Android/addressables_content_state.bin b/ChannelConfigs/Android/rustore/AddressableAssetsData/Android/addressables_content_state.bin new file mode 100644 index 0000000..56de4dc Binary files /dev/null and b/ChannelConfigs/Android/rustore/AddressableAssetsData/Android/addressables_content_state.bin differ diff --git a/ExtraPluginCfgs/Android/rustore/AndroidManifest.xml b/ChannelConfigs/Android/rustore/AndroidManifest.xml similarity index 100% rename from ExtraPluginCfgs/Android/rustore/AndroidManifest.xml rename to ChannelConfigs/Android/rustore/AndroidManifest.xml diff --git a/ChannelConfigs/Android/rustore/Plugins/Android/gradle/main.gradle b/ChannelConfigs/Android/rustore/Plugins/Android/gradle/main.gradle new file mode 100644 index 0000000..a885d08 --- /dev/null +++ b/ChannelConfigs/Android/rustore/Plugins/Android/gradle/main.gradle @@ -0,0 +1,13 @@ +dependencies { + implementation(platform("ru.rustore.sdk:bom:2025.11.01")) + implementation("ru.rustore.sdk:pay") + implementation "ru.rustore.sdk:review:10.0.0" + implementation "com.vk.id:vkid:2.5.1" + coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" +} + +android { + compileOptions { + coreLibraryDesugaringEnabled true + } +} diff --git a/ChannelConfigs/Android/rustore/Plugins/Android/gradle/settings.gradle b/ChannelConfigs/Android/rustore/Plugins/Android/gradle/settings.gradle new file mode 100644 index 0000000..0cf7d4f --- /dev/null +++ b/ChannelConfigs/Android/rustore/Plugins/Android/gradle/settings.gradle @@ -0,0 +1,13 @@ +dependencyResolutionManagement { + repositories { + maven { + url "https://artifactory-external.vkpartner.ru/artifactory/vkid-sdk-android/" + } + maven { + url "https://artifactory-external.vkpartner.ru/artifactory/maven/" + } + maven { + url "https://artifactory-external.vkpartner.ru/artifactory/vk-id-captcha/android/" + } + } +} diff --git a/ExtraPluginCfgs/Android/rustore/Plugins/Android/tuyoosdk_1.0.0.aar b/ChannelConfigs/Android/rustore/Plugins/Android/tuyoosdk_1.0.0.aar similarity index 100% rename from ExtraPluginCfgs/Android/rustore/Plugins/Android/tuyoosdk_1.0.0.aar rename to ChannelConfigs/Android/rustore/Plugins/Android/tuyoosdk_1.0.0.aar diff --git a/ExtraPluginCfgs/Android/rustore/RustoreAdapter.java b/ChannelConfigs/Android/rustore/RustoreAdapter.java similarity index 100% rename from ExtraPluginCfgs/Android/rustore/RustoreAdapter.java rename to ChannelConfigs/Android/rustore/RustoreAdapter.java diff --git a/ChannelConfigs/Android/tw/AddressableAssetsData/Android/addressables_content_state.bin b/ChannelConfigs/Android/tw/AddressableAssetsData/Android/addressables_content_state.bin new file mode 100644 index 0000000..a01847a Binary files /dev/null and b/ChannelConfigs/Android/tw/AddressableAssetsData/Android/addressables_content_state.bin differ diff --git a/ChannelConfigs/Android/tw/AndroidManifest.xml b/ChannelConfigs/Android/tw/AndroidManifest.xml new file mode 100644 index 0000000..352fec1 --- /dev/null +++ b/ChannelConfigs/Android/tw/AndroidManifest.xml @@ -0,0 +1,12 @@ + + + + + + + + + + diff --git a/ChannelConfigs/Android/tw/Files/google-services.json b/ChannelConfigs/Android/tw/Files/google-services.json new file mode 100644 index 0000000..660578d --- /dev/null +++ b/ChannelConfigs/Android/tw/Files/google-services.json @@ -0,0 +1,39 @@ +{ + "project_info": { + "project_number": "679771497905", + "project_id": "fishing-travel-tw", + "storage_bucket": "fishing-travel-tw.firebasestorage.app" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:679771497905:android:062e2b39ee6613ad210990", + "android_client_info": { + "package_name": "com.arkgame.ft.tw" + } + }, + "oauth_client": [ + { + "client_id": "679771497905-9d8ht9dnuhbn70p72hhc5ld29lfbqhpr.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyCvYkrDG0tMViVdQ28VGQJ1NpgwkROm_9U" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "679771497905-9d8ht9dnuhbn70p72hhc5ld29lfbqhpr.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/ChannelConfigs/Android/tw/Plugins/Android/gradle/main.gradle b/ChannelConfigs/Android/tw/Plugins/Android/gradle/main.gradle new file mode 100644 index 0000000..9500d40 --- /dev/null +++ b/ChannelConfigs/Android/tw/Plugins/Android/gradle/main.gradle @@ -0,0 +1,9 @@ +dependencies { + coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" +} + +android { + compileOptions { + coreLibraryDesugaringEnabled true + } +} diff --git a/ExtraPluginCfgs/Android/googleplay/Plugins/Android/tuyoosdk_1.0.0.aar b/ChannelConfigs/Android/tw/Plugins/Android/tuyoosdk_1.0.0.aar similarity index 83% rename from ExtraPluginCfgs/Android/googleplay/Plugins/Android/tuyoosdk_1.0.0.aar rename to ChannelConfigs/Android/tw/Plugins/Android/tuyoosdk_1.0.0.aar index 6576bb4..90fa68e 100644 Binary files a/ExtraPluginCfgs/Android/googleplay/Plugins/Android/tuyoosdk_1.0.0.aar and b/ChannelConfigs/Android/tw/Plugins/Android/tuyoosdk_1.0.0.aar differ diff --git a/ChannelConfigs/Android/tw/README.md b/ChannelConfigs/Android/tw/README.md new file mode 100644 index 0000000..de198ad --- /dev/null +++ b/ChannelConfigs/Android/tw/README.md @@ -0,0 +1,16 @@ +# TW Android 渠道配置 + +当前 TW 渠道先按 GooglePlay 派生包整理,只保留渠道目录和 Manifest 增量入口。 + +如果 TW 后续有独立配置,按需补充: + +```text +Files/google-services.json +Plugins/Android/tuyoosdk_1.0.0.aar +Plugins/Android/gradle/main.gradle +Plugins/Android/gradle/settings.gradle +AddressableAssetsData/Android/addressables_content_state.bin +TWAdapter.java +``` + +不要在此目录放整份 Unity Gradle 模板文件,只放渠道增量。 diff --git a/ChannelConfigs/Android/tw/TWAdapter.java b/ChannelConfigs/Android/tw/TWAdapter.java new file mode 100644 index 0000000..aa69ee6 --- /dev/null +++ b/ChannelConfigs/Android/tw/TWAdapter.java @@ -0,0 +1,24 @@ +package com.unity3d.player; + +import android.util.Log; + +import org.json.JSONArray; +import org.json.JSONObject; + +import java.util.Locale; + +// Tw 渠道 +public class TWAdapter extends ChannelAdapterBase { + + private static final String TAG = "TWAdapter"; + + //- tw包 + private static class Config { + //- + public String SDK_CLIENTID = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.rustore.FishingTravelTw"; + + //- + public static String SDK_LOGIN_SERVER_URL = "https://128-hwsfsdk-sdk-ts02.sdk-k8s-us-gcp.arksgame.com"; + } + +} diff --git a/ExtraPluginCfgs/Android/enjoypay/ChannelEntry.java b/ExtraPluginCfgs/Android/enjoypay/ChannelEntry.java deleted file mode 100644 index 48649b4..0000000 --- a/ExtraPluginCfgs/Android/enjoypay/ChannelEntry.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.unity3d.player; - -public class ChannelEntry { - public static final String CHANNEL = "EnjoyPay"; - - public static SDKManager.IChannelSDKAdapter createSDKAdapter() { - return null; - } - - public static String normalizeSkuList(String msg) { - return msg; - } -} diff --git a/ExtraPluginCfgs/Android/enjoypay/ConfigManager.java b/ExtraPluginCfgs/Android/enjoypay/ConfigManager.java deleted file mode 100644 index 5827ecf..0000000 --- a/ExtraPluginCfgs/Android/enjoypay/ConfigManager.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.unity3d.player; - -public class ConfigManager { - // Common SDK parameters - public static int SDK_APPID = 20587; - public static String SDK_GAMEID = "20587"; - public static String SDK_PROJECTID = "20587"; - public static String SDK_CLOUDID = "128"; - public static String SDK_CLIENTID = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.googleplay.FishingMasterRussia"; - public static String SDK_LOGIN_SERVER_URL = "https://128-hwsfsdk-sdk-online01.qijihdhk.com"; - // FCM (anti-addiction system) - public static String FCM_NAMESPACE = "128"; - public static String FCM_IAM_HOST = "tcp://fcmtcp.tuyoo.com:3563"; - public static String FCM_ANTISERVERURL = "https://fcmapi.tuyoo.com"; - // Unity Facade callback names - public static final String UNITY_FACADE_NAME = "TYSdkFacade"; - public static final String LOGIN_CALLBACK_FUNCTION_NAME = "LoginResult"; - public static final String LINKACCOUT_CALLBACK_FUNCTION_NAME = "LinkAccoutResult"; - public static final String CHANGELINK_CALLBACK_FUNCTION_NAME = "ChangeLinkAccountResult"; - public static final String CHECKLINK_CALLBACK_FUNCTION_NAME = "CheckLinkResult"; - public static final String PAY_CALLBACK_FUNCTION_NAME = "PayResult"; - public static final String PAY_TYPE_CALLBACK_FUNCTION_NAME = "SKUListResult"; - public static final String FCM_NOTICE_FUNCTION_NAME = "FCMCallback"; - public static final String FCM_REALNAME_CALLBACK_FUNCTION_NAME = "RealNameCallback"; - public static final String INIT_CALLBACK_FUNCTION_NAME = "InitResult"; -} diff --git a/ExtraPluginCfgs/Android/enjoypay/gradleTemplate.properties b/ExtraPluginCfgs/Android/enjoypay/gradleTemplate.properties deleted file mode 100644 index cc49b2a..0000000 --- a/ExtraPluginCfgs/Android/enjoypay/gradleTemplate.properties +++ /dev/null @@ -1,11 +0,0 @@ -org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M -org.gradle.parallel=true -unityStreamingAssets=**STREAMING_ASSETS** -# Android Resolver Properties Start -android.useAndroidX=true -android.enableJetifier=true -# Android Resolver Properties End - -android.suppressUnsupportedCompileSdk=35 - -**ADDITIONAL_PROPERTIES** diff --git a/ExtraPluginCfgs/Android/enjoypay/launcherTemplate.gradle b/ExtraPluginCfgs/Android/enjoypay/launcherTemplate.gradle deleted file mode 100644 index 6231ad1..0000000 --- a/ExtraPluginCfgs/Android/enjoypay/launcherTemplate.gradle +++ /dev/null @@ -1,65 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'com.google.gms.google-services' - -dependencies { - implementation project(':unityLibrary') - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - } - -android { - namespace "**NAMESPACE**" - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - applicationId '**APPLICATIONID**' - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**SIGN** - - lintOptions { - abortOnError false - } - - buildTypes { - debug { - minifyEnabled **MINIFY_DEBUG** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - jniDebuggable true - } - release { - minifyEnabled **MINIFY_RELEASE** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - } - }**PACKAGING_OPTIONS****PLAY_ASSET_PACKS****SPLITS** -**BUILT_APK_LOCATION** - bundle { - language { - enableSplit = false - } - density { - enableSplit = false - } - abi { - enableSplit = true - } - } -}**SPLITS_VERSION_CODE****LAUNCHER_SOURCE_BUILD_SETUP** diff --git a/ExtraPluginCfgs/Android/enjoypay/mainTemplate.gradle b/ExtraPluginCfgs/Android/enjoypay/mainTemplate.gradle deleted file mode 100644 index 362edc6..0000000 --- a/ExtraPluginCfgs/Android/enjoypay/mainTemplate.gradle +++ /dev/null @@ -1,121 +0,0 @@ -apply plugin: 'com.android.library' -**APPLY_PLUGINS** - -// Android Resolver Exclusions Start -android { - packagingOptions { - exclude ('/lib/armeabi/*' + '*') - exclude ('/lib/mips/*' + '*') - exclude ('/lib/mips64/*' + '*') - exclude ('/lib/x86/*' + '*') - exclude ('/lib/x86_64/*' + '*') - } -} -// Android Resolver Exclusions End -android { - namespace "com.unity3d.player" -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation project(':channel_manifest_lib') - - api "com.android.support:support-v4:28.0.0" - api "com.android.support:appcompat-v7:28.0.0" - - api "com.google.code.gson:gson:2.8.6" - api "com.squareup.okio:okio:1.15.0" - api "com.squareup.okhttp3:okhttp:3.12.13" - api "com.squareup.retrofit2:retrofit:2.3.0" - api "com.squareup.retrofit2:converter-gson:2.2.0" - api "com.squareup.retrofit2:adapter-rxjava:2.1.0" - api "io.reactivex:rxandroid:1.2.1" - api "io.reactivex:rxjava:1.1.9" - - // Google Play In-App Review - implementation 'com.google.android.play:review:2.0.1' - implementation 'net.aihelp:android-aihelp-aar:5.3.+' - - implementation 'com.google.android.gms:play-services-auth:20.2.0' - implementation('com.android.billingclient:billing:7.0.0') - - implementation 'com.google.android.gms:play-services-basement:18.2.0' - implementation 'androidx.fragment:fragment:1.3.6' - implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.41" - implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.3.41' - implementation 'androidx.core:core:1.8.0' - - implementation 'com.miui.referrer:homereferrer:1.0.0.6' - - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - - implementation('com.facebook.android:facebook-android-sdk:16.2.0') - - implementation 'com.google.android.play:asset-delivery:2.2.2' - - implementation "androidx.credentials:credentials:1.3.0" - implementation "androidx.credentials:credentials-play-services-auth:1.3.0" - implementation "com.google.android.libraries.identity.googleid:googleid:1.1.1" - - coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" - - // EnjoyPay SDK is provided by Plugins/Android/tuyoosdk_1.0.0.aar and copied by ChannelBuildTool. -// Android Resolver Dependencies Start - implementation 'androidx.recyclerview:recyclerview:1.2.1' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:9 - implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7 - implementation 'com.applovin.mediation:bytedance-adapter:8.1.0.3.0' // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:facebook-adapter:[6.18.0.1]' // Assets/MaxSdk/Mediation/Facebook/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:fyber-adapter:8.4.2.0' // Assets/MaxSdk/Mediation/Fyber/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:google-adapter:[23.6.0.1]' // Assets/MaxSdk/Mediation/Google/Editor/Dependencies.xml:5 - implementation 'com.applovin.mediation:ironsource-adapter:8.6.1.0.0' // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:mintegral-adapter:17.1.61.0' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:moloco-adapter:4.9.0.0' // Assets/MaxSdk/Mediation/Moloco/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:unityads-adapter:4.12.3.0' // Assets/MaxSdk/Mediation/UnityAds/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:vungle-adapter:7.4.2.2' // Assets/MaxSdk/Mediation/Vungle/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:yandex-adapter:8.1.0.0' // Assets/MaxSdk/Mediation/Yandex/Editor/Dependencies.xml:4 - implementation 'com.applovin:applovin-sdk:13.5.1' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:4 - implementation 'com.appsflyer:af-android-sdk:6.17.3' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:5 - implementation 'com.appsflyer:purchase-connector:2.2.0' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:8 - implementation 'com.appsflyer:unity-wrapper:6.17.7' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:6 - implementation 'com.google.android.ump:user-messaging-platform:2.1.0' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:5 - implementation 'com.tapjoy:tapjoy-android-unitybridge:14.5.0' // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:10 -// Android Resolver Dependencies End -**DEPS**} - -android { - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - coreLibraryDesugaringEnabled true - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD** - } - - lintOptions { - abortOnError false - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**PACKAGING_OPTIONS** -} -**IL_CPP_BUILD_SETUP** -**SOURCE_BUILD_SETUP** -**EXTERNAL_SOURCES** diff --git a/ExtraPluginCfgs/Android/enjoypay/settingsTemplate.gradle b/ExtraPluginCfgs/Android/enjoypay/settingsTemplate.gradle deleted file mode 100644 index c147ec0..0000000 --- a/ExtraPluginCfgs/Android/enjoypay/settingsTemplate.gradle +++ /dev/null @@ -1,49 +0,0 @@ -pluginManagement { - repositories { - **ARTIFACTORYREPOSITORY** - gradlePluginPortal() - google() - mavenCentral() - } -} - -include ':launcher', ':unityLibrary' -**INCLUDES** - -def channelUnityProjectPath = $/**DIR_UNITYPROJECT**/$.replace("\\", "/") -include ':channel_manifest_lib' -project(':channel_manifest_lib').projectDir = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_manifest_lib') - -dependencyResolutionManagement { - repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) - repositories { - **ARTIFACTORYREPOSITORY** - google() - mavenCentral() -// Android Resolver Repos Start - def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("\\", "/") - maven { - url "https://sdk.tapjoy.com/" // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:9 - } - - maven { - url "https://artifact.bytedance.com/repository/pangle" // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - } - maven { - url "https://android-sdk.is.com/" // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - } - maven { - url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea" // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - } - mavenLocal() -// Android Resolver Repos End - flatDir { - dirs "${project(':unityLibrary').projectDir}/libs" - } - - maven { - url "http://sdkck.tuyoo.com/artifactory/tuyoo-component/" - allowInsecureProtocol = true - } - } -} diff --git a/ExtraPluginCfgs/Android/flexion/gradleTemplate.properties b/ExtraPluginCfgs/Android/flexion/gradleTemplate.properties deleted file mode 100644 index 0b94027..0000000 --- a/ExtraPluginCfgs/Android/flexion/gradleTemplate.properties +++ /dev/null @@ -1,11 +0,0 @@ -org.gradle.jvmargs=-Xmx8192m -org.gradle.parallel=true -unityStreamingAssets=**STREAMING_ASSETS** -# Android Resolver Properties Start -android.useAndroidX=true -android.enableJetifier=true -# Android Resolver Properties End - -android.suppressUnsupportedCompileSdk=35 - -**ADDITIONAL_PROPERTIES** diff --git a/ExtraPluginCfgs/Android/flexion/launcherTemplate.gradle b/ExtraPluginCfgs/Android/flexion/launcherTemplate.gradle deleted file mode 100644 index 6231ad1..0000000 --- a/ExtraPluginCfgs/Android/flexion/launcherTemplate.gradle +++ /dev/null @@ -1,65 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'com.google.gms.google-services' - -dependencies { - implementation project(':unityLibrary') - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - } - -android { - namespace "**NAMESPACE**" - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - applicationId '**APPLICATIONID**' - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**SIGN** - - lintOptions { - abortOnError false - } - - buildTypes { - debug { - minifyEnabled **MINIFY_DEBUG** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - jniDebuggable true - } - release { - minifyEnabled **MINIFY_RELEASE** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - } - }**PACKAGING_OPTIONS****PLAY_ASSET_PACKS****SPLITS** -**BUILT_APK_LOCATION** - bundle { - language { - enableSplit = false - } - density { - enableSplit = false - } - abi { - enableSplit = true - } - } -}**SPLITS_VERSION_CODE****LAUNCHER_SOURCE_BUILD_SETUP** diff --git a/ExtraPluginCfgs/Android/flexion/mainTemplate.gradle b/ExtraPluginCfgs/Android/flexion/mainTemplate.gradle deleted file mode 100644 index 0182215..0000000 --- a/ExtraPluginCfgs/Android/flexion/mainTemplate.gradle +++ /dev/null @@ -1,136 +0,0 @@ -apply plugin: 'com.android.library' -**APPLY_PLUGINS** - -// Android Resolver Exclusions Start -android { - packagingOptions { - exclude ('/lib/armeabi/*' + '*') - exclude ('/lib/mips/*' + '*') - exclude ('/lib/mips64/*' + '*') - exclude ('/lib/x86/*' + '*') - exclude ('/lib/x86_64/*' + '*') - } -} -// Android Resolver Exclusions End -android { - namespace "com.unity3d.player" -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation project(':channel_manifest_lib') - - api "com.android.support:support-v4:28.0.0" - api "com.android.support:appcompat-v7:28.0.0" - - api "com.google.code.gson:gson:2.8.6" - api "com.squareup.okio:okio:1.15.0" - api "com.squareup.okhttp3:okhttp:3.12.13" - api "com.squareup.retrofit2:retrofit:2.3.0" - api "com.squareup.retrofit2:converter-gson:2.2.0" - api "com.squareup.retrofit2:adapter-rxjava:2.1.0" - api "io.reactivex:rxandroid:1.2.1" - api "io.reactivex:rxjava:1.1.9" - - // Google Play In-App Review - implementation 'com.google.android.play:review:2.0.1' - implementation 'net.aihelp:android-aihelp-aar:5.3.+' - - implementation 'com.google.android.gms:play-services-auth:20.2.0' - - // Flexion SDK (includes wrapped billing) - implementation("com.flexionmobile:sdk:4.0.1") - implementation('com.android.billingclient:billing:7.0.0') - - implementation 'com.google.android.gms:play-services-basement:18.2.0' - implementation 'androidx.fragment:fragment:1.3.6' - implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.41" - implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.3.41' - implementation 'androidx.core:core:1.8.0' - - implementation 'com.miui.referrer:homereferrer:1.0.0.6' - - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - - implementation('com.facebook.android:facebook-android-sdk:16.2.0') - - implementation 'com.google.android.play:asset-delivery:2.2.2' - - implementation "androidx.credentials:credentials:1.3.0" - implementation "androidx.credentials:credentials-play-services-auth:1.3.0" - implementation "com.google.android.libraries.identity.googleid:googleid:1.1.1" - - coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" - -// Android Resolver Dependencies Start - implementation 'androidx.recyclerview:recyclerview:1.2.1' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:9 - implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7 - implementation 'com.applovin.mediation:bytedance-adapter:8.1.0.3.0' // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:facebook-adapter:[6.18.0.1]' // Assets/MaxSdk/Mediation/Facebook/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:fyber-adapter:8.4.2.0' // Assets/MaxSdk/Mediation/Fyber/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:google-adapter:[23.6.0.1]' // Assets/MaxSdk/Mediation/Google/Editor/Dependencies.xml:5 - implementation 'com.applovin.mediation:ironsource-adapter:8.6.1.0.0' // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:mintegral-adapter:17.1.61.0' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:moloco-adapter:4.9.0.0' // Assets/MaxSdk/Mediation/Moloco/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:unityads-adapter:4.12.3.0' // Assets/MaxSdk/Mediation/UnityAds/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:vungle-adapter:7.4.2.2' // Assets/MaxSdk/Mediation/Vungle/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:yandex-adapter:8.1.0.0' // Assets/MaxSdk/Mediation/Yandex/Editor/Dependencies.xml:4 - implementation 'com.applovin:applovin-sdk:13.5.1' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:4 - implementation 'com.appsflyer:af-android-sdk:6.17.3' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:5 - implementation 'com.appsflyer:purchase-connector:2.2.0' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:8 - implementation 'com.appsflyer:unity-wrapper:6.17.7' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:6 - implementation 'com.google.android.ump:user-messaging-platform:2.1.0' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:5 - implementation 'com.tapjoy:tapjoy-android-unitybridge:14.5.0' // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:10 -// Android Resolver Dependencies End -**DEPS**} - -// Android Resolver Exclusions Start -android { - packagingOptions { - exclude ('/lib/armeabi/*' + '*') - exclude ('/lib/mips/*' + '*') - exclude ('/lib/mips64/*' + '*') - exclude ('/lib/x86/*' + '*') - exclude ('/lib/x86_64/*' + '*') - } -} -// Android Resolver Exclusions End -android { - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - coreLibraryDesugaringEnabled true - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - ndk { - abiFilters **ABIFILTERS** - } - - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD** - } - - lintOptions { - abortOnError false - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**PACKAGING_OPTIONS** -} -**IL_CPP_BUILD_SETUP** -**SOURCE_BUILD_SETUP** -**EXTERNAL_SOURCES** diff --git a/ExtraPluginCfgs/Android/flexion/settingsTemplate.gradle b/ExtraPluginCfgs/Android/flexion/settingsTemplate.gradle deleted file mode 100644 index e05aa0b..0000000 --- a/ExtraPluginCfgs/Android/flexion/settingsTemplate.gradle +++ /dev/null @@ -1,58 +0,0 @@ -pluginManagement { - repositories { - **ARTIFACTORYREPOSITORY** - gradlePluginPortal() - google() - mavenCentral() - } -} - -include ':launcher', ':unityLibrary' -**INCLUDES** - -def channelUnityProjectPath = $/**DIR_UNITYPROJECT**/$.replace("\\", "/") -include ':channel_manifest_lib' -project(':channel_manifest_lib').projectDir = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_manifest_lib') - -dependencyResolutionManagement { - repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) - repositories { - **ARTIFACTORYREPOSITORY** - google() - mavenCentral() - - // Flexion SDK Maven Repository - maven { - url = uri("https://maven.pkg.github.com/FlexionSDK/JavaSDK") - credentials { - username = "FlexionSDK" - // Replace with your actual Flexion PAT from DropPoint - password = "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" - } - } -// Android Resolver Repos Start - def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("\\", "/") - maven { - url "https://sdk.tapjoy.com/" // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:9 - } - maven { - url "https://artifact.bytedance.com/repository/pangle" // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - } - maven { - url "https://android-sdk.is.com/" // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - } - maven { - url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea" // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - } - mavenLocal() -// Android Resolver Repos End - flatDir { - dirs "${project(':unityLibrary').projectDir}/libs" - } - - maven { - url "http://sdkck.tuyoo.com/artifactory/tuyoo-component/" - allowInsecureProtocol = true - } - } -} diff --git a/ExtraPluginCfgs/Android/googleplay/AndroidManifest.xml b/ExtraPluginCfgs/Android/googleplay/AndroidManifest.xml deleted file mode 100644 index a1fa4fc..0000000 --- a/ExtraPluginCfgs/Android/googleplay/AndroidManifest.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ExtraPluginCfgs/Android/googleplay/ChannelEntry.java b/ExtraPluginCfgs/Android/googleplay/ChannelEntry.java deleted file mode 100644 index 3c61fc0..0000000 --- a/ExtraPluginCfgs/Android/googleplay/ChannelEntry.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.unity3d.player; - -public class ChannelEntry { - public static final String CHANNEL = "GooglePlay"; - - public static SDKManager.IChannelSDKAdapter createSDKAdapter() { - return null; - } - - public static String normalizeSkuList(String msg) { - return msg; - } -} diff --git a/ExtraPluginCfgs/Android/googleplay/ConfigManager.java b/ExtraPluginCfgs/Android/googleplay/ConfigManager.java deleted file mode 100644 index 359a4d8..0000000 --- a/ExtraPluginCfgs/Android/googleplay/ConfigManager.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.unity3d.player; - -public class ConfigManager { - // Common SDK parameters - public static int SDK_APPID = 20587; - public static String SDK_GAMEID = "20587"; - public static String SDK_PROJECTID = "20587"; - public static String SDK_CLOUDID = "128"; - public static String SDK_CLIENTID = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.googleplay.FishingMaster"; - - public static String SDK_LOGIN_SERVER_URL = "https://128-hwsfsdk-sdk-online01.qijihdhk.com"; - - // FCM (anti-addiction system) - public static String FCM_NAMESPACE = "128"; - public static String FCM_IAM_HOST = "tcp://fcmtcp.tuyoo.com:3563"; - public static String FCM_ANTISERVERURL = "https://fcmapi.tuyoo.com"; - - // Unity Facade callback names - public static final String UNITY_FACADE_NAME = "TYSdkFacade"; - public static final String LOGIN_CALLBACK_FUNCTION_NAME = "LoginResult"; - public static final String LINKACCOUT_CALLBACK_FUNCTION_NAME = "LinkAccoutResult"; - public static final String CHANGELINK_CALLBACK_FUNCTION_NAME = "ChangeLinkAccountResult"; - public static final String CHECKLINK_CALLBACK_FUNCTION_NAME = "CheckLinkResult"; - public static final String PAY_CALLBACK_FUNCTION_NAME = "PayResult"; - public static final String PAY_TYPE_CALLBACK_FUNCTION_NAME = "SKUListResult"; - public static final String FCM_NOTICE_FUNCTION_NAME = "FCMCallback"; - public static final String FCM_REALNAME_CALLBACK_FUNCTION_NAME = "RealNameCallback"; - public static final String INIT_CALLBACK_FUNCTION_NAME = "InitResult"; -} diff --git a/ExtraPluginCfgs/Android/googleplay/Files/google-services.json b/ExtraPluginCfgs/Android/googleplay/Files/google-services.json deleted file mode 100644 index 8ae069a..0000000 --- a/ExtraPluginCfgs/Android/googleplay/Files/google-services.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "project_info": { - "project_number": "481260393117", - "project_id": "fishing-travel", - "storage_bucket": "fishing-travel.appspot.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:481260393117:android:4e8da50d0ee3b5c207fa74", - "android_client_info": { - "package_name": "com.arkgame.ft" - } - }, - "oauth_client": [ - { - "client_id": "481260393117-jhq50gh6n2p6pat1bjhcgj3th1ke19jg.apps.googleusercontent.com", - "client_type": 1, - "android_info": { - "package_name": "com.arkgame.ft", - "certificate_hash": "c9cf2f5eaba383cbdd5b968d0342c49afabc32a2" - } - }, - { - "client_id": "481260393117-0ah0ekk7lu5r44ko2uqlfoebgak8dmhj.apps.googleusercontent.com", - "client_type": 3 - } - ], - "api_key": [ - { - "current_key": "AIzaSyBU6gAwu0O28jg7-TRd_Vx2YMCH_Baa8Bw" - } - ], - "services": { - "appinvite_service": { - "other_platform_oauth_client": [ - { - "client_id": "481260393117-0ah0ekk7lu5r44ko2uqlfoebgak8dmhj.apps.googleusercontent.com", - "client_type": 3 - } - ] - } - } - } - ], - "configuration_version": "1" -} \ No newline at end of file diff --git a/ExtraPluginCfgs/Android/googleplay/gradleTemplate.properties b/ExtraPluginCfgs/Android/googleplay/gradleTemplate.properties deleted file mode 100644 index cc49b2a..0000000 --- a/ExtraPluginCfgs/Android/googleplay/gradleTemplate.properties +++ /dev/null @@ -1,11 +0,0 @@ -org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M -org.gradle.parallel=true -unityStreamingAssets=**STREAMING_ASSETS** -# Android Resolver Properties Start -android.useAndroidX=true -android.enableJetifier=true -# Android Resolver Properties End - -android.suppressUnsupportedCompileSdk=35 - -**ADDITIONAL_PROPERTIES** diff --git a/ExtraPluginCfgs/Android/googleplay/launcherTemplate.gradle b/ExtraPluginCfgs/Android/googleplay/launcherTemplate.gradle deleted file mode 100644 index 6231ad1..0000000 --- a/ExtraPluginCfgs/Android/googleplay/launcherTemplate.gradle +++ /dev/null @@ -1,65 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'com.google.gms.google-services' - -dependencies { - implementation project(':unityLibrary') - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - } - -android { - namespace "**NAMESPACE**" - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - applicationId '**APPLICATIONID**' - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**SIGN** - - lintOptions { - abortOnError false - } - - buildTypes { - debug { - minifyEnabled **MINIFY_DEBUG** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - jniDebuggable true - } - release { - minifyEnabled **MINIFY_RELEASE** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - } - }**PACKAGING_OPTIONS****PLAY_ASSET_PACKS****SPLITS** -**BUILT_APK_LOCATION** - bundle { - language { - enableSplit = false - } - density { - enableSplit = false - } - abi { - enableSplit = true - } - } -}**SPLITS_VERSION_CODE****LAUNCHER_SOURCE_BUILD_SETUP** diff --git a/ExtraPluginCfgs/Android/googleplay/mainTemplate.gradle b/ExtraPluginCfgs/Android/googleplay/mainTemplate.gradle deleted file mode 100644 index 666e2c6..0000000 --- a/ExtraPluginCfgs/Android/googleplay/mainTemplate.gradle +++ /dev/null @@ -1,117 +0,0 @@ -apply plugin: 'com.android.library' -**APPLY_PLUGINS** - -// Android Resolver Exclusions Start -android { - packagingOptions { - exclude ('/lib/armeabi/*' + '*') - exclude ('/lib/mips/*' + '*') - exclude ('/lib/mips64/*' + '*') - exclude ('/lib/x86/*' + '*') - exclude ('/lib/x86_64/*' + '*') - } -} -// Android Resolver Exclusions End -android { - namespace "com.unity3d.player" -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation project(':channel_manifest_lib') - - api "com.android.support:support-v4:28.0.0" - api "com.android.support:appcompat-v7:28.0.0" - - api "com.google.code.gson:gson:2.8.6" - api "com.squareup.okio:okio:1.15.0" - api "com.squareup.okhttp3:okhttp:3.12.13" - api "com.squareup.retrofit2:retrofit:2.3.0" - api "com.squareup.retrofit2:converter-gson:2.2.0" - api "com.squareup.retrofit2:adapter-rxjava:2.1.0" - api "io.reactivex:rxandroid:1.2.1" - api "io.reactivex:rxjava:1.1.9" - - // Google Play In-App Review - implementation 'com.google.android.play:review:2.0.1' - implementation 'net.aihelp:android-aihelp-aar:5.3.+' - - implementation 'com.google.android.gms:play-services-auth:20.2.0' - implementation('com.android.billingclient:billing:7.0.0') - - implementation 'com.google.android.gms:play-services-basement:18.2.0' - implementation 'androidx.fragment:fragment:1.3.6' - implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.41" - implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.3.41' - implementation 'androidx.core:core:1.8.0' - - implementation 'com.miui.referrer:homereferrer:1.0.0.6' - - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - - implementation('com.facebook.android:facebook-android-sdk:16.2.0') - - implementation 'com.google.android.play:asset-delivery:2.2.2' - - implementation "androidx.credentials:credentials:1.3.0" - implementation "androidx.credentials:credentials-play-services-auth:1.3.0" - implementation "com.google.android.libraries.identity.googleid:googleid:1.1.1" - -// Android Resolver Dependencies Start - implementation 'androidx.recyclerview:recyclerview:1.2.1' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:9 - implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7 - implementation 'com.applovin.mediation:bytedance-adapter:8.1.0.3.0' // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:facebook-adapter:[6.18.0.1]' // Assets/MaxSdk/Mediation/Facebook/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:fyber-adapter:8.4.2.0' // Assets/MaxSdk/Mediation/Fyber/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:google-adapter:[23.6.0.1]' // Assets/MaxSdk/Mediation/Google/Editor/Dependencies.xml:5 - implementation 'com.applovin.mediation:ironsource-adapter:8.6.1.0.0' // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:mintegral-adapter:17.1.61.0' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:moloco-adapter:4.9.0.0' // Assets/MaxSdk/Mediation/Moloco/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:unityads-adapter:4.12.3.0' // Assets/MaxSdk/Mediation/UnityAds/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:vungle-adapter:7.4.2.2' // Assets/MaxSdk/Mediation/Vungle/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:yandex-adapter:8.1.0.0' // Assets/MaxSdk/Mediation/Yandex/Editor/Dependencies.xml:4 - implementation 'com.applovin:applovin-sdk:13.5.1' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:4 - implementation 'com.appsflyer:af-android-sdk:6.17.3' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:5 - implementation 'com.appsflyer:purchase-connector:2.2.0' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:8 - implementation 'com.appsflyer:unity-wrapper:6.17.7' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:6 - implementation 'com.google.android.ump:user-messaging-platform:2.1.0' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:5 - implementation 'com.tapjoy:tapjoy-android-unitybridge:14.5.0' // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:10 -// Android Resolver Dependencies End -**DEPS**} - -android { - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD** - } - - lintOptions { - abortOnError false - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**PACKAGING_OPTIONS** -} -**IL_CPP_BUILD_SETUP** -**SOURCE_BUILD_SETUP** -**EXTERNAL_SOURCES** diff --git a/ExtraPluginCfgs/Android/googleplay/settingsTemplate.gradle b/ExtraPluginCfgs/Android/googleplay/settingsTemplate.gradle deleted file mode 100644 index a28dd34..0000000 --- a/ExtraPluginCfgs/Android/googleplay/settingsTemplate.gradle +++ /dev/null @@ -1,48 +0,0 @@ -pluginManagement { - repositories { - **ARTIFACTORYREPOSITORY** - gradlePluginPortal() - google() - mavenCentral() - } -} - -include ':launcher', ':unityLibrary' -**INCLUDES** - -def channelUnityProjectPath = $/**DIR_UNITYPROJECT**/$.replace("\\", "/") -include ':channel_manifest_lib' -project(':channel_manifest_lib').projectDir = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_manifest_lib') - -dependencyResolutionManagement { - repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) - repositories { - **ARTIFACTORYREPOSITORY** - google() - mavenCentral() -// Android Resolver Repos Start - def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("\\", "/") - maven { - url "https://sdk.tapjoy.com/" // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:9 - } - maven { - url "https://artifact.bytedance.com/repository/pangle" // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - } - maven { - url "https://android-sdk.is.com/" // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - } - maven { - url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea" // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - } - mavenLocal() -// Android Resolver Repos End - flatDir { - dirs "${project(':unityLibrary').projectDir}/libs" - } - - maven { - url "http://sdkck.tuyoo.com/artifactory/tuyoo-component/" - allowInsecureProtocol = true - } - } -} diff --git a/ExtraPluginCfgs/Android/rustore/ChannelEntry.java b/ExtraPluginCfgs/Android/rustore/ChannelEntry.java deleted file mode 100644 index 6d9e42b..0000000 --- a/ExtraPluginCfgs/Android/rustore/ChannelEntry.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.unity3d.player; - -import android.util.Log; - -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; - -public class ChannelEntry { - public static final String CHANNEL = "Rustore"; - - public static SDKManager.IChannelSDKAdapter createSDKAdapter() { - return null; - } - - public static String normalizeSkuList(String msg) { - if (msg == null || msg.isEmpty()) return msg; - try { - JSONArray products = new JSONArray(msg); - for (int i = 0; i < products.length(); i++) { - JSONObject p = products.getJSONObject(i); - - // price is in kopecks, convert to micros: kopecks * 10000 - String price = p.optString("price", "0"); - long micros = Long.parseLong(price) * 10000; - p.put("price_amount_micros", String.valueOf(micros)); - - // Map currency → price_currency_code - String currency = p.optString("currency", ""); - if (!currency.isEmpty()) { - p.put("price_currency_code", currency); - } - - // Convert display price: "199" → "₽1.99" - float rubles = Float.parseFloat(price) / 100; - p.put("price", String.format("₽%s", rubles)); - } - return products.toString(); - } catch (JSONException e) { - Log.e("ChannelEntry", "normalizeSkuList error: " + e.getMessage()); - return msg; - } - } -} diff --git a/ExtraPluginCfgs/Android/rustore/ConfigManager.java b/ExtraPluginCfgs/Android/rustore/ConfigManager.java deleted file mode 100644 index 21029eb..0000000 --- a/ExtraPluginCfgs/Android/rustore/ConfigManager.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.unity3d.player; - -public class ConfigManager { - // Common SDK parameters - public static int SDK_APPID = 20587; - public static String SDK_GAMEID = "20587"; - public static String SDK_PROJECTID = "20587"; - public static String SDK_CLOUDID = "128"; - public static String SDK_CLIENTID = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.rustore.FishingTravel"; - - public static String SDK_LOGIN_SERVER_URL = "https://128-hwsfsdk-sdk-online01.qijihdhk.com"; - - // FCM (anti-addiction system) - public static String FCM_NAMESPACE = "128"; - public static String FCM_IAM_HOST = "tcp://fcmtcp.tuyoo.com:3563"; - public static String FCM_ANTISERVERURL = "https://fcmapi.tuyoo.com"; - - // Unity Facade callback names - public static final String UNITY_FACADE_NAME = "TYSdkFacade"; - public static final String LOGIN_CALLBACK_FUNCTION_NAME = "LoginResult"; - public static final String LINKACCOUT_CALLBACK_FUNCTION_NAME = "LinkAccoutResult"; - public static final String CHANGELINK_CALLBACK_FUNCTION_NAME = "ChangeLinkAccountResult"; - public static final String CHECKLINK_CALLBACK_FUNCTION_NAME = "CheckLinkResult"; - public static final String PAY_CALLBACK_FUNCTION_NAME = "PayResult"; - public static final String PAY_TYPE_CALLBACK_FUNCTION_NAME = "SKUListResult"; - public static final String FCM_NOTICE_FUNCTION_NAME = "FCMCallback"; - public static final String FCM_REALNAME_CALLBACK_FUNCTION_NAME = "RealNameCallback"; - public static final String INIT_CALLBACK_FUNCTION_NAME = "InitResult"; -} diff --git a/ExtraPluginCfgs/Android/rustore/baseProjectTemplate.gradle b/ExtraPluginCfgs/Android/rustore/baseProjectTemplate.gradle deleted file mode 100644 index 332c297..0000000 --- a/ExtraPluginCfgs/Android/rustore/baseProjectTemplate.gradle +++ /dev/null @@ -1,14 +0,0 @@ -plugins { - // If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity - // See which Gradle version is preinstalled with Unity here https://docs.unity3d.com/Manual/android-gradle-overview.html - // See official Gradle and Android Gradle Plugin compatibility table here https://developer.android.com/studio/releases/gradle-plugin#updating-gradle - // To specify a custom Gradle version in Unity, go do "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)" and specify a path to a custom Gradle version - id 'com.android.application' version '7.4.2' apply false - id 'com.android.library' version '7.4.2' apply false - id 'com.google.gms.google-services' version '4.3.3' apply false - **BUILD_SCRIPT_DEPS** -} - -task clean(type: Delete) { - delete rootProject.buildDir -} diff --git a/ExtraPluginCfgs/Android/rustore/gradleTemplate.properties b/ExtraPluginCfgs/Android/rustore/gradleTemplate.properties deleted file mode 100644 index cc49b2a..0000000 --- a/ExtraPluginCfgs/Android/rustore/gradleTemplate.properties +++ /dev/null @@ -1,11 +0,0 @@ -org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M -org.gradle.parallel=true -unityStreamingAssets=**STREAMING_ASSETS** -# Android Resolver Properties Start -android.useAndroidX=true -android.enableJetifier=true -# Android Resolver Properties End - -android.suppressUnsupportedCompileSdk=35 - -**ADDITIONAL_PROPERTIES** diff --git a/ExtraPluginCfgs/Android/rustore/launcherTemplate.gradle b/ExtraPluginCfgs/Android/rustore/launcherTemplate.gradle deleted file mode 100644 index 87c4030..0000000 --- a/ExtraPluginCfgs/Android/rustore/launcherTemplate.gradle +++ /dev/null @@ -1,74 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'com.google.gms.google-services' - -dependencies { - implementation project(':unityLibrary') - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - } - -android { - namespace "**NAMESPACE**" - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - applicationId '**APPLICATIONID**' - ndk { - abiFilters **ABIFILTERS** - } - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - - // ↓↓↓ 这里放你的 VK ID 占位符 ↓↓↓ - manifestPlaceholders = [ - VKIDRedirectHost : "vk.ru", - VKIDRedirectScheme: "vk54432404", - VKIDClientID : "54432404", - VKIDClientSecret : "WD6BO0CwPXsKMaaFX8Qq" - ] - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**SIGN** - - lintOptions { - abortOnError false - } - - buildTypes { - debug { - minifyEnabled **MINIFY_DEBUG** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - jniDebuggable true - } - release { - minifyEnabled **MINIFY_RELEASE** - proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG** - } - }**PACKAGING_OPTIONS****PLAY_ASSET_PACKS****SPLITS** -**BUILT_APK_LOCATION** - bundle { - language { - enableSplit = false - } - density { - enableSplit = false - } - abi { - enableSplit = true - } - } -}**SPLITS_VERSION_CODE****LAUNCHER_SOURCE_BUILD_SETUP** diff --git a/ExtraPluginCfgs/Android/rustore/mainTemplate.gradle b/ExtraPluginCfgs/Android/rustore/mainTemplate.gradle deleted file mode 100644 index 911cb7a..0000000 --- a/ExtraPluginCfgs/Android/rustore/mainTemplate.gradle +++ /dev/null @@ -1,137 +0,0 @@ -apply plugin: 'com.android.library' -**APPLY_PLUGINS** - -// Android Resolver Exclusions Start -android { - packagingOptions { - exclude ('/lib/armeabi/*' + '*') - exclude ('/lib/mips/*' + '*') - exclude ('/lib/mips64/*' + '*') - exclude ('/lib/x86/*' + '*') - exclude ('/lib/x86_64/*' + '*') - } -} -// Android Resolver Exclusions End -android { - namespace "com.unity3d.player" -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation project(':channel_manifest_lib') - - api "com.android.support:support-v4:28.0.0" - api "com.android.support:appcompat-v7:28.0.0" - - api "com.google.code.gson:gson:2.8.6" - api "com.squareup.okio:okio:1.15.0" - api "com.squareup.okhttp3:okhttp:3.12.13" - api "com.squareup.retrofit2:retrofit:2.3.0" - api "com.squareup.retrofit2:converter-gson:2.2.0" - api "com.squareup.retrofit2:adapter-rxjava:2.1.0" - api "io.reactivex:rxandroid:1.2.1" - api "io.reactivex:rxjava:1.1.9" - - // Google Play In-App Review - implementation 'com.google.android.play:review:2.0.1' - implementation 'net.aihelp:android-aihelp-aar:5.3.+' - - implementation 'com.google.android.gms:play-services-auth:20.2.0' - implementation('com.android.billingclient:billing:7.0.0') - - implementation 'com.google.android.gms:play-services-basement:18.2.0' - implementation 'androidx.fragment:fragment:1.3.6' - implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.41" - implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.41' - implementation 'org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.3.41' - implementation 'androidx.core:core:1.8.0' - - implementation 'com.miui.referrer:homereferrer:1.0.0.6' - - implementation platform('com.google.firebase:firebase-bom:34.6.0') - implementation 'com.google.firebase:firebase-analytics' - - implementation('com.facebook.android:facebook-android-sdk:16.2.0') - - implementation 'com.google.android.play:asset-delivery:2.2.2' - - implementation "androidx.credentials:credentials:1.3.0" - implementation "androidx.credentials:credentials-play-services-auth:1.3.0" - implementation "com.google.android.libraries.identity.googleid:googleid:1.1.1" - - - implementation(platform("ru.rustore.sdk:bom:2025.11.01")) - implementation("ru.rustore.sdk:pay") - implementation "ru.rustore.sdk:review:10.0.0" - implementation "com.vk.id:vkid:2.5.1" - coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2" -// Android Resolver Dependencies Start - implementation 'androidx.recyclerview:recyclerview:1.2.1' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:9 - implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7 - implementation 'com.applovin.mediation:bytedance-adapter:8.1.0.3.0' // Assets/MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:facebook-adapter:[6.18.0.1]' // Assets/MaxSdk/Mediation/Facebook/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:fyber-adapter:8.4.2.0' // Assets/MaxSdk/Mediation/Fyber/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:google-adapter:[23.6.0.1]' // Assets/MaxSdk/Mediation/Google/Editor/Dependencies.xml:5 - implementation 'com.applovin.mediation:ironsource-adapter:8.6.1.0.0' // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:mintegral-adapter:17.1.61.0' // Assets/MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml:8 - implementation 'com.applovin.mediation:moloco-adapter:4.9.0.0' // Assets/MaxSdk/Mediation/Moloco/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:unityads-adapter:4.12.3.0' // Assets/MaxSdk/Mediation/UnityAds/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:vungle-adapter:7.4.2.2' // Assets/MaxSdk/Mediation/Vungle/Editor/Dependencies.xml:4 - implementation 'com.applovin.mediation:yandex-adapter:8.1.0.0' // Assets/MaxSdk/Mediation/Yandex/Editor/Dependencies.xml:4 - implementation 'com.applovin:applovin-sdk:13.5.1' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:4 - implementation 'com.appsflyer:af-android-sdk:6.17.3' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:5 - implementation 'com.appsflyer:purchase-connector:2.2.0' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:8 - implementation 'com.appsflyer:unity-wrapper:6.17.7' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:6 - implementation 'com.google.android.ump:user-messaging-platform:2.1.0' // Assets/MaxSdk/AppLovin/Editor/Dependencies.xml:5 - implementation 'com.tapjoy:tapjoy-android-unitybridge:14.5.0' // Packages/com.unity.package-offerwall/Editor/TJPluginDependencies.xml:10 -// Android Resolver Dependencies End -**DEPS**} - -// Android Resolver Exclusions Start -android { - packagingOptions { - exclude ('/lib/armeabi/*' + '*') - exclude ('/lib/mips/*' + '*') - exclude ('/lib/mips64/*' + '*') - exclude ('/lib/x86/*' + '*') - exclude ('/lib/x86_64/*' + '*') - } -} -// Android Resolver Exclusions End -android { - ndkPath "**NDKPATH**" - - compileSdkVersion **APIVERSION** - buildToolsVersion '**BUILDTOOLS**' - - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - coreLibraryDesugaringEnabled true - } - - defaultConfig { - minSdkVersion **MINSDKVERSION** - targetSdkVersion **TARGETSDKVERSION** - ndk { - abiFilters **ABIFILTERS** - } - - versionCode **VERSIONCODE** - versionName '**VERSIONNAME**' - consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD** - } - - lintOptions { - abortOnError false - } - - aaptOptions { - noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ') - ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~" - }**PACKAGING_OPTIONS** -} -**IL_CPP_BUILD_SETUP** -**SOURCE_BUILD_SETUP** -**EXTERNAL_SOURCES** diff --git a/ExtraPluginCfgs/Android/rustore/settingsTemplate.gradle b/ExtraPluginCfgs/Android/rustore/settingsTemplate.gradle deleted file mode 100644 index 4ca778e..0000000 --- a/ExtraPluginCfgs/Android/rustore/settingsTemplate.gradle +++ /dev/null @@ -1,50 +0,0 @@ -pluginManagement { - repositories { - **ARTIFACTORYREPOSITORY** - gradlePluginPortal() - google() - mavenCentral() - } -} - -include ':launcher', ':unityLibrary' -**INCLUDES** - -def channelUnityProjectPath = $/**DIR_UNITYPROJECT**/$.replace("\\", "/") -include ':channel_manifest_lib' -project(':channel_manifest_lib').projectDir = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_manifest_lib') - -dependencyResolutionManagement { - repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) - repositories { - **ARTIFACTORYREPOSITORY** - google() - mavenCentral() - - maven{ - url "https://artifactory-external.vkpartner.ru/artifactory/vkid-sdk-android/" - } - maven{ - url "https://artifactory-external.vkpartner.ru/artifactory/maven/" - } - maven{ - url "https://artifactory-external.vkpartner.ru/artifactory/vk-id-captcha/android/" - } - -// Android Resolver Repos Start - def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("\\", "/") - maven { - url "https://android-sdk.is.com/" // Assets/MaxSdk/Mediation/IronSource/Editor/Dependencies.xml:8 - } - mavenLocal() -// Android Resolver Repos End - flatDir { - dirs "${project(':unityLibrary').projectDir}/libs" - } - - maven { - url "http://sdkck.tuyoo.com/artifactory/tuyoo-component/" - allowInsecureProtocol = true - } - } -} diff --git a/sdk-intergration/.gitignore b/sdk-intergration/.gitignore index 94a4f2e..3db1d74 100644 --- a/sdk-intergration/.gitignore +++ b/sdk-intergration/.gitignore @@ -19,6 +19,12 @@ # Asset meta data should only be ignored when the corresponding asset is also ignored !/[Aa]ssets/**/*.meta +# Channel build generated files +/[Aa]ssets/Plugins/Android/channel_gradle/ +/[Aa]ssets/Plugins/Android/channel_gradle.meta +/[Aa]ssets/Plugins/Android/channel_manifest_lib/build/ +/[Aa]ssets/Plugins/Android/channel_manifest_lib/build.meta + /AssetsBammbooooooGameShare.PNG # Uncomment this line if you wish to ignore the asset store tools plugin diff --git a/sdk-intergration/Assets/Editor/ChannelBuildTool.cs b/sdk-intergration/Assets/Editor/ChannelBuildTool.cs index 27beb8f..9703b6e 100644 --- a/sdk-intergration/Assets/Editor/ChannelBuildTool.cs +++ b/sdk-intergration/Assets/Editor/ChannelBuildTool.cs @@ -8,7 +8,7 @@ using UnityEngine; public class ChannelBuildTool { - private const string ExtraCfgRoot = "../ExtraPluginCfgs/Android"; + private const string ChannelConfigRoot = "../ChannelConfigs/Android"; private const string TysdkPlugins = "Packages/tysdk/Plugins/Android"; private const string TysdkFiles = "Packages/tysdk/Files"; private const string AssetsPlugins = "Assets/Plugins/Android"; @@ -18,6 +18,8 @@ public class ChannelBuildTool private const string DefaultProductName = "Fishing Travel"; private const string EnjoyPayProductName = "Fishing Travel: Hook & Explore"; private const string ChannelManifestLib = "channel_manifest_lib"; + private const string ChannelGradle = "channel_gradle"; + private const string ChannelMetaName = "com.arkgame.ft.channel"; private const string EmptyManifest = "\n\n"; private static readonly XNamespace AndroidNamespace = "http://schemas.android.com/apk/res/android"; private static readonly XNamespace ToolsNamespace = "http://schemas.android.com/tools"; @@ -27,11 +29,7 @@ public class ChannelBuildTool public static void SwitchChannel(string channel) { channel = NormalizeChannelName(channel); - var cfgDir = Path.Combine(ExtraCfgRoot, channel.ToLowerInvariant()); - if (!Directory.Exists(cfgDir)) - { - throw new DirectoryNotFoundException($"[ChannelSwitch] Channel config not found: {cfgDir}"); - } + var cfgDir = Path.Combine(ChannelConfigRoot, channel.ToLowerInvariant()); Debug.Log($"[ChannelSwitch] Switching to {channel}..."); CleanChannelManifestLibBuildArtifacts(); @@ -43,41 +41,13 @@ public class ChannelBuildTool SyncChannelAdapterFiles(cfgDir); // 3. Sync google-services.json - var srcGoogleServices = Path.Combine(cfgDir, "Files/google-services.json"); - if (File.Exists(srcGoogleServices)) - { - var destDir = Path.Combine(TysdkFiles); - if (!Directory.Exists(destDir)) Directory.CreateDirectory(destDir); - var destGoogleServices = Path.Combine(destDir, "google-services.json"); - File.Copy(srcGoogleServices, destGoogleServices, true); - Debug.Log($"[ChannelSwitch] google-services.json -> {destGoogleServices}"); - } + SyncGoogleServices(cfgDir); // 4. Sync channel plugin files (.aar, .jar, etc.) to tysdk package - var pluginsSrcDir = Path.Combine(cfgDir, "Plugins/Android"); - var pluginsDestDir = TysdkPlugins; - if (Directory.Exists(pluginsSrcDir)) - { - foreach (var oldPlugin in Directory.GetFiles(pluginsDestDir, "tuyoosdk_*.aar")) - File.Delete(oldPlugin); - - foreach (var pluginFile in Directory.GetFiles(pluginsSrcDir)) - { - if (pluginFile.EndsWith(".meta")) continue; - var fileName = Path.GetFileName(pluginFile); - var dest = Path.Combine(pluginsDestDir, fileName); - File.Copy(pluginFile, dest, true); - Debug.Log($"[ChannelSwitch] Plugin: {pluginFile} -> {dest}"); - } - } + SyncChannelPluginFiles(cfgDir); // 5. Set Bundle Identifier per channel - var bundleId = channel switch - { - "Flexion" => "com.arkgame.ft.flexion", - "EnjoyPay" => "com.arkgame.ft.ep", - _ => "com.arkgame.ft" - }; + var bundleId = GetBundleId(channel); PlayerSettings.SetApplicationIdentifier(BuildTargetGroup.Android, bundleId); Debug.Log($"[ChannelSwitch] Bundle Identifier -> {bundleId}"); @@ -99,16 +69,22 @@ public class ChannelBuildTool // ==================== Menu ==================== [MenuItem("Tools/Channel/Switch Channel/GooglePlay", false, 10000)] - public static void Switch_GooglePlay() => SwitchChannel("GooglePlay"); + public static void Switch_GooglePlay() => SwitchChannelTo("GooglePlay"); [MenuItem("Tools/Channel/Switch Channel/Flexion", false, 10001)] - public static void Switch_Flexion() => SwitchChannel("Flexion"); + public static void Switch_Flexion() => SwitchChannelTo("Flexion"); [MenuItem("Tools/Channel/Switch Channel/Rustore", false, 10002)] - public static void Switch_Rustore() => SwitchChannel("Rustore"); + public static void Switch_Rustore() => SwitchChannelTo("Rustore"); [MenuItem("Tools/Channel/Switch Channel/EnjoyPay", false, 10003)] - public static void Switch_EnjoyPay() => SwitchChannel("EnjoyPay"); + public static void Switch_EnjoyPay() => SwitchChannelTo("EnjoyPay"); + + private static void SwitchChannelTo(string channel) + { + RestoreChannelWorkspace(skipOnCi: true); + SwitchChannel(channel); + } // ==================== Build ==================== @@ -116,6 +92,7 @@ public class ChannelBuildTool { try { + RestoreChannelWorkspace(skipOnCi: true); CleanChannelManifestLibBuildArtifacts(); SwitchChannel(channel); @@ -148,7 +125,7 @@ public class ChannelBuildTool } finally { - SwitchChannel("GooglePlay"); + RestoreChannelWorkspace(skipOnCi: true); AssetDatabase.SaveAssets(); } } @@ -177,6 +154,12 @@ public class ChannelBuildTool [MenuItem("Tools/Channel/Build Android (Channel)/EnjoyPay Debug", false, 10107)] public static void Build_EnjoyPay_Debug() => BuildAndroidForChannel("EnjoyPay", true); + [MenuItem("Tools/Channel/Restore Workspace (Git Checkout)", false, 10200)] + public static void RestoreChannelWorkspaceWithGitCheckoutMenu() + { + RestoreChannelWorkspace(skipOnCi: false); + } + private static string NormalizeChannelName(string channel) { if (string.IsNullOrEmpty(channel)) @@ -197,10 +180,65 @@ public class ChannelBuildTool } } + private static string GetBundleId(string channel) + { + return channel switch + { + "Flexion" => "com.arkgame.ft.flexion", + "EnjoyPay" => "com.arkgame.ft.ep", + _ => "com.arkgame.ft" + }; + } + + private static void RestoreChannelWorkspace(bool skipOnCi) + { + if (skipOnCi && IsCiBuild()) + { + Debug.Log("[ChannelSwitch] Skip git checkout restore on CI."); + return; + } + + RunCommand("git", "checkout -- ."); + RunCommand("git", "clean -fd -- ."); + AssetDatabase.Refresh(ImportAssetOptions.ForceSynchronousImport); + Debug.Log("[ChannelSwitch] Workspace restored from git index."); + } + + private static bool IsCiBuild() + { + return !string.IsNullOrEmpty(System.Environment.GetEnvironmentVariable("JENKINS_URL")) || + !string.IsNullOrEmpty(System.Environment.GetEnvironmentVariable("JENKINS_HOME")) || + !string.IsNullOrEmpty(System.Environment.GetEnvironmentVariable("BUILD_NUMBER")); + } + + private static void RunCommand(string fileName, string arguments) + { + var startInfo = new System.Diagnostics.ProcessStartInfo + { + FileName = fileName, + Arguments = arguments, + UseShellExecute = false, + RedirectStandardOutput = true, + RedirectStandardError = true, + CreateNoWindow = true + }; + + using (var process = System.Diagnostics.Process.Start(startInfo)) + { + var output = process.StandardOutput.ReadToEnd(); + var error = process.StandardError.ReadToEnd(); + process.WaitForExit(); + + if (process.ExitCode != 0) + { + throw new System.InvalidOperationException($"{fileName} {arguments} failed.\n{output}\n{error}"); + } + } + } + private static void SyncRootAndroidConfigFiles(string channel, string cfgDir) { - CopyRootConfigFiles(cfgDir, "*.gradle"); - CopyRootConfigFiles(cfgDir, "*.properties"); + SyncChannelGradleFiles(channel, cfgDir); SetMainManifestChannel(channel); SyncChannelManifestLib(channel, cfgDir); } @@ -214,6 +252,11 @@ public class ChannelBuildTool File.Delete(oldJava); } + if (!Directory.Exists(cfgDir)) + { + return; + } + foreach (var javaFile in Directory.GetFiles(cfgDir, "*Adapter.java")) { var fileName = Path.GetFileName(javaFile); @@ -223,10 +266,50 @@ public class ChannelBuildTool } } + private static void SyncGoogleServices(string cfgDir) + { + var dest = Path.Combine(TysdkFiles, "google-services.json"); + var src = Path.Combine(cfgDir, "Files", "google-services.json"); + if (!File.Exists(src)) + { + Debug.Log($"[ChannelSwitch] google-services.json not copied. Checked={src}"); + return; + } + + var destDir = Path.GetDirectoryName(dest); + if (!Directory.Exists(destDir)) Directory.CreateDirectory(destDir); + File.Copy(src, dest, true); + Debug.Log($"[ChannelSwitch] google-services.json -> {dest}"); + } + + private static void SyncChannelPluginFiles(string cfgDir) + { + var pluginsSrcDir = Path.Combine(cfgDir, "Plugins", "Android"); + if (!Directory.Exists(pluginsSrcDir)) + { + Debug.Log($"[ChannelSwitch] Plugin directory not found. Checked={pluginsSrcDir}"); + return; + } + + foreach (var oldPlugin in Directory.GetFiles(TysdkPlugins, "tuyoosdk_*.aar")) + { + File.Delete(oldPlugin); + } + + foreach (var pluginFile in Directory.GetFiles(pluginsSrcDir)) + { + if (pluginFile.EndsWith(".meta")) continue; + var fileName = Path.GetFileName(pluginFile); + var dest = Path.Combine(TysdkPlugins, fileName); + File.Copy(pluginFile, dest, true); + Debug.Log($"[ChannelSwitch] Plugin: {pluginFile} -> {dest}"); + } + } + private static void SyncChannelManifestLib(string channel, string cfgDir) { var dest = Path.Combine(AssetsPlugins, ChannelManifestLib, "src"); - if (channel == "GooglePlay") + if (channel == "GooglePlay" || !Directory.Exists(cfgDir)) { WriteEmptyChannelManifestLib(dest); Debug.Log($"[ChannelSwitch] Manifest lib reset to empty default. Channel={channel}"); @@ -243,6 +326,31 @@ public class ChannelBuildTool Debug.Log($"[ChannelSwitch] Manifest: {srcManifest} -> {Path.Combine(dest, "main", "AndroidManifest.xml")}"); } + private static void SyncChannelGradleFiles(string channel, string cfgDir) + { + var src = Path.Combine(cfgDir, "Plugins", "Android", "gradle"); + var dest = Path.Combine(AssetsPlugins, ChannelGradle); + if (Directory.Exists(dest)) + { + Directory.Delete(dest, true); + } + + var destMeta = dest + ".meta"; + if (File.Exists(destMeta)) + { + File.Delete(destMeta); + } + + if (!Directory.Exists(src)) + { + Debug.Log($"[ChannelSwitch] Gradle increment reset to empty default. Channel={channel}"); + return; + } + + CopyDirectoryClean(src, dest); + Debug.Log($"[ChannelSwitch] Gradle increment: {src} -> {dest}"); + } + private static void SetMainManifestChannel(string channel) { var manifestPath = Path.Combine(AssetsPlugins, "AndroidManifest.xml"); @@ -259,23 +367,31 @@ public class ChannelBuildTool throw new InvalidDataException($"[ChannelSwitch] Main AndroidManifest application node not found: {manifestPath}"); } - var channelMeta = application.Elements() - .FirstOrDefault(x => x.Name.LocalName == "meta-data" && - (string)x.Attribute(AndroidNamespace + "name") == "com.arkgame.ft.channel"); - if (channelMeta == null) - { - channelMeta = new XElement("meta-data", - new XAttribute(AndroidNamespace + "name", "com.arkgame.ft.channel")); - application.Add(channelMeta); - } - - channelMeta.SetAttributeValue(AndroidNamespace + "value", channel); + root.SetAttributeValue("package", GetBundleId(channel)); + SetMainManifestChannelMeta(application, channel); SetMainManifestBackupRules(application, channel); doc.Save(manifestPath); AssetDatabase.ImportAsset(manifestPath, ImportAssetOptions.ForceSynchronousImport | ImportAssetOptions.ForceUpdate); Debug.Log($"[ChannelSwitch] Main manifest channel -> {channel}"); } + private static void SetMainManifestChannelMeta(XElement application, string channel) + { + var channelMeta = application.Elements() + .FirstOrDefault(x => x.Name.LocalName == "meta-data" && + (string)x.Attribute(AndroidNamespace + "name") == ChannelMetaName); + + if (channelMeta == null) + { + channelMeta = new XElement("meta-data", + new XAttribute(AndroidNamespace + "name", ChannelMetaName)); + application.Add(channelMeta); + } + + channelMeta.SetAttributeValue(AndroidNamespace + "name", ChannelMetaName); + channelMeta.SetAttributeValue(AndroidNamespace + "value", channel); + } + private static void SetMainManifestBackupRules(XElement application, string channel) { const string fullBackupContent = "android:fullBackupContent"; @@ -348,22 +464,6 @@ public class ChannelBuildTool } } - private static void CopyRootConfigFiles(string cfgDir, string searchPattern) - { - foreach (var src in Directory.GetFiles(cfgDir, searchPattern, SearchOption.TopDirectoryOnly)) - { - CopyRootConfigFile(src); - } - } - - private static void CopyRootConfigFile(string src) - { - var fileName = Path.GetFileName(src); - var dest = Path.Combine(AssetsPlugins, fileName); - File.Copy(src, dest, true); - Debug.Log($"[ChannelSwitch] Config: {src} -> {dest}"); - } - private static void CopyDirectoryClean(string src, string dest) { if (Directory.Exists(dest)) @@ -414,11 +514,12 @@ public class ChannelBuildTool if (!File.Exists(src) && UsesRustoreAddressablesContentState(channel)) { Debug.Log($"[ChannelSwitch] Channel content state not found, try legacy Rustore content state path. Channel={channel}, checked={src}"); - src = Path.Combine("../ExtraPluginCfgs", AddressablesContentState); + src = Path.Combine("../ChannelConfigs", AddressablesContentState); } if (!File.Exists(src)) { + ClearAddressablesContentState(channel); Debug.Log($"[ChannelSwitch] Addressables content state not copied. Channel={channel}, checked={src}"); return; } @@ -430,6 +531,34 @@ public class ChannelBuildTool Debug.Log($"[ChannelSwitch] Addressables content state: {src} -> {AndroidAddressablesContentState}"); } + private static void ClearAddressablesContentState(string channel) + { + if (File.Exists(AndroidAddressablesContentState)) + { + File.Delete(AndroidAddressablesContentState); + } + + var meta = AndroidAddressablesContentState + ".meta"; + if (File.Exists(meta)) + { + File.Delete(meta); + } + + var dir = Path.GetDirectoryName(AndroidAddressablesContentState); + if (Directory.Exists(dir) && !Directory.EnumerateFileSystemEntries(dir).Any()) + { + Directory.Delete(dir); + } + + var dirMeta = dir + ".meta"; + if (File.Exists(dirMeta) && !Directory.Exists(dir)) + { + File.Delete(dirMeta); + } + + Debug.Log($"[ChannelSwitch] Addressables content state cleared. Channel={channel}"); + } + private static bool UsesRustoreAddressablesContentState(string channel) { return channel == "Rustore" || channel == "EnjoyPay"; diff --git a/sdk-intergration/Assets/Plugins/Android/AndroidManifest.xml b/sdk-intergration/Assets/Plugins/Android/AndroidManifest.xml index d2b229a..a8af013 100644 --- a/sdk-intergration/Assets/Plugins/Android/AndroidManifest.xml +++ b/sdk-intergration/Assets/Plugins/Android/AndroidManifest.xml @@ -27,7 +27,8 @@ - + + diff --git a/sdk-intergration/Assets/Plugins/Android/channel_manifest_lib/src/main/AndroidManifest.xml b/sdk-intergration/Assets/Plugins/Android/channel_manifest_lib/src/main/AndroidManifest.xml index b2d3ea1..8ab5884 100644 --- a/sdk-intergration/Assets/Plugins/Android/channel_manifest_lib/src/main/AndroidManifest.xml +++ b/sdk-intergration/Assets/Plugins/Android/channel_manifest_lib/src/main/AndroidManifest.xml @@ -1,2 +1,8 @@ - + + + + + diff --git a/sdk-intergration/Assets/Plugins/Android/mainTemplate.gradle b/sdk-intergration/Assets/Plugins/Android/mainTemplate.gradle index 666e2c6..76fc1b4 100644 --- a/sdk-intergration/Assets/Plugins/Android/mainTemplate.gradle +++ b/sdk-intergration/Assets/Plugins/Android/mainTemplate.gradle @@ -115,3 +115,9 @@ android { **IL_CPP_BUILD_SETUP** **SOURCE_BUILD_SETUP** **EXTERNAL_SOURCES** + +def channelUnityProjectPath = $/**DIR_UNITYPROJECT**/$.replace("\\", "/") +def channelGradleMain = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_gradle/main.gradle') +if (channelGradleMain.exists()) { + apply from: channelGradleMain +} diff --git a/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle b/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle index a28dd34..f14f3e9 100644 --- a/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle +++ b/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle @@ -14,6 +14,11 @@ def channelUnityProjectPath = $/**DIR_UNITYPROJECT**/$.replace("\\", "/") include ':channel_manifest_lib' project(':channel_manifest_lib').projectDir = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_manifest_lib') +def channelGradleSettings = new File(channelUnityProjectPath, 'Assets/Plugins/Android/channel_gradle/settings.gradle') +if (channelGradleSettings.exists()) { + apply from: channelGradleSettings +} + dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) repositories {