From f0132e9d859920ad74d67febffb3e92e6a83364c Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 18:07:34 +0700 Subject: [PATCH 1/7] Update AppBundleBuilder.cs Proposing change for #160 --- .../Internal/BuildTools/AppBundleBuilder.cs | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs index ace53d43..ffe33b81 100644 --- a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs +++ b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs @@ -88,8 +88,6 @@ private enum BuildStatus private EventWaitHandle _progressBarWaitHandle; private AndroidSdkVersions _minSdkVersion; private string _packageName; - private int _versionCode; - private string _versionName; private PostBuildCallback _createBundleAsyncOnSuccess = delegate { }; private IEnumerable _assetPackManifestTransformers; @@ -117,8 +115,6 @@ public virtual bool Initialize(BuildToolLogger buildToolLogger) // Cache information that is only accessible from the main thread. _minSdkVersion = PlayerSettings.Android.minSdkVersion; _packageName = PlayerSettings.GetApplicationIdentifier(BuildTargetGroup.Android); - _versionCode = PlayerSettings.Android.bundleVersionCode; - _versionName = PlayerSettings.bundleVersion; _assetPackManifestTransformers = AssetPackManifestTransformerRegistry.Registry.ConstructInstances(); var initializedManifestTransformers = true; @@ -639,14 +635,16 @@ private void MoveSymbolsZipFile(string aabFilePath) return; } - var symbolsFilePath = Path.Combine(_workingDirectoryPath, GetSymbolsFileName(AndroidPlayerFilePrefix)); + string symbolVersionFile = string.Format("{0}-v{1}.symbols.zip",PlayerSettings.bundleVersion,PlayerSettings.Android.bundleVersionCode); + + var symbolsFilePath = Path.Combine(_workingDirectoryPath,AndroidPlayerFilePrefix + "-" + symbolVersionFile); if (!File.Exists(symbolsFilePath)) { // The file won't exist for Mono builds or if EditorUserBuildSettings.androidCreateSymbolsZip is false. return; } - var outputSymbolsFileName = GetSymbolsFileName(Path.GetFileNameWithoutExtension(aabFilePath)); + var outputSymbolsFileName = Path.GetFileNameWithoutExtension(aabFilePath) + + "-" + symbolVersionFile; var outputSymbolsFilePath = Path.Combine(outputDirectoryPath, outputSymbolsFileName); if (File.Exists(outputSymbolsFilePath)) { @@ -657,11 +655,6 @@ private void MoveSymbolsZipFile(string aabFilePath) File.Move(symbolsFilePath, outputSymbolsFilePath); } - private string GetSymbolsFileName(string prefix) - { - return string.Format("{0}-{1}-v{2}.symbols.zip", prefix, _versionName, _versionCode); - } - private static void CopyFilesRecursively(DirectoryInfo sourceDirectory, DirectoryInfo destinationDirectory) { foreach (var sourceSubdirectory in sourceDirectory.GetDirectories()) @@ -888,4 +881,4 @@ private string DisplayBuildError(string errorType, string errorMessage) return _buildErrorMessage; } } -} \ No newline at end of file +} From 02f49385f2ec4870d751bd5189d05567a90df501 Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 18:11:16 +0700 Subject: [PATCH 2/7] Update AppBundleBuilder.cs --- .../Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs index ffe33b81..535aef1f 100644 --- a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs +++ b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs @@ -644,7 +644,7 @@ private void MoveSymbolsZipFile(string aabFilePath) return; } - var outputSymbolsFileName = Path.GetFileNameWithoutExtension(aabFilePath) + + "-" + symbolVersionFile; + var outputSymbolsFileName = Path.GetFileNameWithoutExtension(aabFilePath) + "-" + symbolVersionFile; var outputSymbolsFilePath = Path.Combine(outputDirectoryPath, outputSymbolsFileName); if (File.Exists(outputSymbolsFilePath)) { From 3bb1bd0106b6abe2d5851dcf9ae9d0fb8fa0cc32 Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 18:30:07 +0700 Subject: [PATCH 3/7] Update AppBundleBuilder.cs --- .../Internal/BuildTools/AppBundleBuilder.cs | 31 ++++++++++++++++--- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs index 535aef1f..2f53dd0e 100644 --- a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs +++ b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs @@ -22,18 +22,26 @@ using Google.Android.AppBundle.Editor.Internal.Config; using Google.Android.AppBundle.Editor.Internal.Utils; using UnityEditor; +using UnityEditor.Build.Reporting; using UnityEngine; #if UNITY_2018_4_OR_NEWER && !NET_LEGACY using System.Threading.Tasks; #endif +// IPreprocessBuild was deprecated in 2018.1 in favor of IPreprocessBuildWithReport. +#if UNITY_2018_1_OR_NEWER +using IPreprocessBuildCompat = UnityEditor.Build.IPreprocessBuildWithReport; +#else +using IPreprocessBuildCompat = UnityEditor.Build.IPreprocessBuild; +#endif + namespace Google.Android.AppBundle.Editor.Internal.BuildTools { /// /// Helper to build an Android App Bundle file on Unity. /// - public class AppBundleBuilder : IBuildTool + public class AppBundleBuilder : IBuildTool,IPreprocessBuildCompat { public delegate void PostBuildCallback(string finishedAabFilePath); @@ -88,6 +96,8 @@ private enum BuildStatus private EventWaitHandle _progressBarWaitHandle; private AndroidSdkVersions _minSdkVersion; private string _packageName; + private int _versionCode; + private string _versionName; private PostBuildCallback _createBundleAsyncOnSuccess = delegate { }; private IEnumerable _assetPackManifestTransformers; @@ -110,6 +120,14 @@ public AppBundleBuilder( _zipUtils = zipUtils; } + public int callbackOrder { get { return int.MaxValue; } } + + public void OnPreprocessBuild(BuildReport report) + { + _versionCode = PlayerSettings.Android.bundleVersionCode; + _versionName = PlayerSettings.bundleVersion; + } + public virtual bool Initialize(BuildToolLogger buildToolLogger) { // Cache information that is only accessible from the main thread. @@ -635,16 +653,14 @@ private void MoveSymbolsZipFile(string aabFilePath) return; } - string symbolVersionFile = string.Format("{0}-v{1}.symbols.zip",PlayerSettings.bundleVersion,PlayerSettings.Android.bundleVersionCode); - - var symbolsFilePath = Path.Combine(_workingDirectoryPath,AndroidPlayerFilePrefix + "-" + symbolVersionFile); + var symbolsFilePath = Path.Combine(_workingDirectoryPath, GetSymbolsFileName(AndroidPlayerFilePrefix)); if (!File.Exists(symbolsFilePath)) { // The file won't exist for Mono builds or if EditorUserBuildSettings.androidCreateSymbolsZip is false. return; } - var outputSymbolsFileName = Path.GetFileNameWithoutExtension(aabFilePath) + "-" + symbolVersionFile; + var outputSymbolsFileName = GetSymbolsFileName(Path.GetFileNameWithoutExtension(aabFilePath)); var outputSymbolsFilePath = Path.Combine(outputDirectoryPath, outputSymbolsFileName); if (File.Exists(outputSymbolsFilePath)) { @@ -655,6 +671,11 @@ private void MoveSymbolsZipFile(string aabFilePath) File.Move(symbolsFilePath, outputSymbolsFilePath); } + private string GetSymbolsFileName(string prefix) + { + return string.Format("{0}-{1}-v{2}.symbols.zip", prefix, _versionName, _versionCode); + } + private static void CopyFilesRecursively(DirectoryInfo sourceDirectory, DirectoryInfo destinationDirectory) { foreach (var sourceSubdirectory in sourceDirectory.GetDirectories()) From a5a1a9fbc068d379a290e18fd4418dffa02ac6f6 Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 18:31:19 +0700 Subject: [PATCH 4/7] Update AppBundleBuilder.cs From dfa89de7d6b7a3ab878ef2cc8ccc029f56faa407 Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 18:37:38 +0700 Subject: [PATCH 5/7] Update AppBundleBuilder.cs --- .../Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs index 2f53dd0e..33c51f5f 100644 --- a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs +++ b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs @@ -22,7 +22,6 @@ using Google.Android.AppBundle.Editor.Internal.Config; using Google.Android.AppBundle.Editor.Internal.Utils; using UnityEditor; -using UnityEditor.Build.Reporting; using UnityEngine; #if UNITY_2018_4_OR_NEWER && !NET_LEGACY @@ -122,7 +121,11 @@ public AppBundleBuilder( public int callbackOrder { get { return int.MaxValue; } } - public void OnPreprocessBuild(BuildReport report) +#if UNITY_2018_1_OR_NEWER + public void OnPreprocessBuild(UnityEditor.Build.Reporting.BuildReport report) +#else + public void OnPreprocessBuild(BuildTarget target, string outputPath) +#endif { _versionCode = PlayerSettings.Android.bundleVersionCode; _versionName = PlayerSettings.bundleVersion; From f8b3c424684b0d4ff0f5c5f37190de260c76044a Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 18:42:32 +0700 Subject: [PATCH 6/7] Update AppBundleBuilder.cs --- .../Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs index 33c51f5f..7774c81e 100644 --- a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs +++ b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs @@ -119,7 +119,7 @@ public AppBundleBuilder( _zipUtils = zipUtils; } - public int callbackOrder { get { return int.MaxValue; } } + public int callbackOrder { get { return 99; } } #if UNITY_2018_1_OR_NEWER public void OnPreprocessBuild(UnityEditor.Build.Reporting.BuildReport report) From c7c95cffbe2bdea3fb0bb2fbba4b7712f86ca5c2 Mon Sep 17 00:00:00 2001 From: Thaina Yu Date: Wed, 1 Dec 2021 19:20:19 +0700 Subject: [PATCH 7/7] Update AppBundleBuilder.cs --- .../Internal/BuildTools/AppBundleBuilder.cs | 28 +++++-------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs index 7774c81e..a088e8de 100644 --- a/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs +++ b/GooglePlayPlugins/com.google.android.appbundle/Editor/Scripts/Internal/BuildTools/AppBundleBuilder.cs @@ -28,19 +28,12 @@ using System.Threading.Tasks; #endif -// IPreprocessBuild was deprecated in 2018.1 in favor of IPreprocessBuildWithReport. -#if UNITY_2018_1_OR_NEWER -using IPreprocessBuildCompat = UnityEditor.Build.IPreprocessBuildWithReport; -#else -using IPreprocessBuildCompat = UnityEditor.Build.IPreprocessBuild; -#endif - namespace Google.Android.AppBundle.Editor.Internal.BuildTools { /// /// Helper to build an Android App Bundle file on Unity. /// - public class AppBundleBuilder : IBuildTool,IPreprocessBuildCompat + public class AppBundleBuilder : IBuildTool { public delegate void PostBuildCallback(string finishedAabFilePath); @@ -119,18 +112,6 @@ public AppBundleBuilder( _zipUtils = zipUtils; } - public int callbackOrder { get { return 99; } } - -#if UNITY_2018_1_OR_NEWER - public void OnPreprocessBuild(UnityEditor.Build.Reporting.BuildReport report) -#else - public void OnPreprocessBuild(BuildTarget target, string outputPath) -#endif - { - _versionCode = PlayerSettings.Android.bundleVersionCode; - _versionName = PlayerSettings.bundleVersion; - } - public virtual bool Initialize(BuildToolLogger buildToolLogger) { // Cache information that is only accessible from the main thread. @@ -193,7 +174,12 @@ public virtual AndroidBuildResult BuildAndroidPlayer(BuildPlayerOptions buildPla }; // Do not use BuildAndSign since this signature won't be used. - return _androidBuilder.Build(updatedBuildPlayerOptions); + var buildResult = _androidBuilder.Build(updatedBuildPlayerOptions); + + _versionCode = PlayerSettings.Android.bundleVersionCode; + _versionName = PlayerSettings.bundleVersion; + + return buildResult; } ///