diff --git a/sdk-intergration/Assets/Plugins/Android/baseProjectTemplate.gradle b/sdk-intergration/Assets/Plugins/Android/baseProjectTemplate.gradle new file mode 100644 index 0000000..4c4b996 --- /dev/null +++ b/sdk-intergration/Assets/Plugins/Android/baseProjectTemplate.gradle @@ -0,0 +1,14 @@ +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.1.2' apply false + id 'com.android.library' version '7.1.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/sdk-intergration/Assets/Plugins/Android/baseProjectTemplate.gradle.meta b/sdk-intergration/Assets/Plugins/Android/baseProjectTemplate.gradle.meta new file mode 100644 index 0000000..07b73cb --- /dev/null +++ b/sdk-intergration/Assets/Plugins/Android/baseProjectTemplate.gradle.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: da5ce0ca5136f4d0bb4aa7c6ba8e94bb +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/sdk-intergration/Assets/Plugins/Android/launcherTemplate.gradle b/sdk-intergration/Assets/Plugins/Android/launcherTemplate.gradle new file mode 100644 index 0000000..869e51a --- /dev/null +++ b/sdk-intergration/Assets/Plugins/Android/launcherTemplate.gradle @@ -0,0 +1,64 @@ +apply plugin: 'com.android.application' +apply plugin: 'com.google.gms.google-services' + +dependencies { + implementation project(':unityLibrary') + implementation(platform("com.google.firebase:firebase-bom:33.6.0")) + implementation("com.google.firebase:firebase-analytics") + } + +android { + 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/sdk-intergration/Assets/Plugins/Android/launcherTemplate.gradle.meta b/sdk-intergration/Assets/Plugins/Android/launcherTemplate.gradle.meta new file mode 100644 index 0000000..65c421f --- /dev/null +++ b/sdk-intergration/Assets/Plugins/Android/launcherTemplate.gradle.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 92e3cb9b3082046489d61d8a7ba982be +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle b/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle index a988bd1..73133c1 100644 --- a/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle +++ b/sdk-intergration/Assets/Plugins/Android/settingsTemplate.gradle @@ -17,6 +17,7 @@ dependencyResolutionManagement { google() mavenCentral() // 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 } diff --git a/sdk-intergration/Packages/tysdk/Editor/AndroidBuildProcessor.cs b/sdk-intergration/Packages/tysdk/Editor/AndroidBuildProcessor.cs new file mode 100644 index 0000000..31f8eea --- /dev/null +++ b/sdk-intergration/Packages/tysdk/Editor/AndroidBuildProcessor.cs @@ -0,0 +1,20 @@ +using System.IO; +using UnityEditor.Android; + +namespace tysdk.editor +{ + + public class AndroidPostBuildProcessor : IPostGenerateGradleAndroidProject + { + public int callbackOrder => 1; + + public void OnPostGenerateGradleAndroidProject(string path) + { + UnityEngine.Debug.Log($"OnPostGenerateGradleAndroidProject {path}"); + var projectPath = Directory.GetParent(path).ToString(); + var googleServicesJsonPath = "Packages/tysdk/Files/google-services.json"; + var googleServicesTargetPath = Path.Combine(projectPath, "launcher/google-services.json"); + File.Copy(googleServicesJsonPath, googleServicesTargetPath, true); + } + } +} diff --git a/sdk-intergration/Packages/tysdk/Editor/AndroidBuildProcessor.cs.meta b/sdk-intergration/Packages/tysdk/Editor/AndroidBuildProcessor.cs.meta new file mode 100644 index 0000000..94687ef --- /dev/null +++ b/sdk-intergration/Packages/tysdk/Editor/AndroidBuildProcessor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a2476ed86dea148a3b7327293f8372cd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/sdk-intergration/Packages/tysdk/Files/google-services.json b/sdk-intergration/Packages/tysdk/Files/google-services.json new file mode 100644 index 0000000..8ae069a --- /dev/null +++ b/sdk-intergration/Packages/tysdk/Files/google-services.json @@ -0,0 +1,47 @@ +{ + "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/sdk-intergration/Packages/tysdk/Files/google-services.json.meta b/sdk-intergration/Packages/tysdk/Files/google-services.json.meta new file mode 100644 index 0000000..5b32ace --- /dev/null +++ b/sdk-intergration/Packages/tysdk/Files/google-services.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: de52d9ff9949f4d54b71776fb23da414 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/sdk-intergration/ProjectSettings/AndroidResolverDependencies.xml b/sdk-intergration/ProjectSettings/AndroidResolverDependencies.xml index c801cd1..2b0910a 100644 --- a/sdk-intergration/ProjectSettings/AndroidResolverDependencies.xml +++ b/sdk-intergration/ProjectSettings/AndroidResolverDependencies.xml @@ -26,7 +26,7 @@ - + diff --git a/sdk-intergration/ProjectSettings/ProjectSettings.asset b/sdk-intergration/ProjectSettings/ProjectSettings.asset index 6f61599..3b3933f 100644 --- a/sdk-intergration/ProjectSettings/ProjectSettings.asset +++ b/sdk-intergration/ProjectSettings/ProjectSettings.asset @@ -252,8 +252,8 @@ PlayerSettings: useCustomMainManifest: 1 useCustomLauncherManifest: 0 useCustomMainGradleTemplate: 1 - useCustomLauncherGradleManifest: 0 - useCustomBaseGradleTemplate: 0 + useCustomLauncherGradleManifest: 1 + useCustomBaseGradleTemplate: 1 useCustomGradlePropertiesTemplate: 1 useCustomGradleSettingsTemplate: 0 useCustomProguardFile: 0