From 33085e033d3fc57932be26cba0bfd4c2a130b20d Mon Sep 17 00:00:00 2001 From: Natalie Bunduwongse Date: Fri, 1 Nov 2024 10:44:44 +1300 Subject: [PATCH] test: ios builder --- sample/Assets/Editor/MacBuilder.cs | 3 +- .../{AndroidBuilder.cs => MobileBuilder.cs} | 46 +++++++++++++------ ...dBuilder.cs.meta => MobileBuilder.cs.meta} | 0 sample/Assets/Editor/WindowsBuilder.cs | 3 +- sample/Assets/Scenes/SelectAuthMethod.unity | 14 +++--- sample/ProjectSettings/ProjectSettings.asset | 11 +++-- 6 files changed, 50 insertions(+), 27 deletions(-) rename sample/Assets/Editor/{AndroidBuilder.cs => MobileBuilder.cs} (67%) rename sample/Assets/Editor/{AndroidBuilder.cs.meta => MobileBuilder.cs.meta} (100%) diff --git a/sample/Assets/Editor/MacBuilder.cs b/sample/Assets/Editor/MacBuilder.cs index f838b0522..a38af0742 100644 --- a/sample/Assets/Editor/MacBuilder.cs +++ b/sample/Assets/Editor/MacBuilder.cs @@ -71,7 +71,8 @@ private static BuildPlayerOptions CreateBuildPlayerOptions(string buildPath, Bui "Assets/Scenes/ZkEvmGetBalance.unity", "Assets/Scenes/ZkEvmGetTransactionReceipt.unity", "Assets/Scenes/ZkEvmSendTransaction.unity", - "Assets/Scenes/ImxNftTransfer.unity" + "Assets/Scenes/ImxNftTransfer.unity", + "Assets/Scenes/ZkEVMSignTypedData.unity" }, locationPathName = buildPath, target = BuildTarget.StandaloneOSX, diff --git a/sample/Assets/Editor/AndroidBuilder.cs b/sample/Assets/Editor/MobileBuilder.cs similarity index 67% rename from sample/Assets/Editor/AndroidBuilder.cs rename to sample/Assets/Editor/MobileBuilder.cs index 3b829da1f..da06770f3 100644 --- a/sample/Assets/Editor/AndroidBuilder.cs +++ b/sample/Assets/Editor/MobileBuilder.cs @@ -6,32 +6,36 @@ using System; using System.IO; -public class AndroidBuilder +public class MobileBuilder { - private const string DefaultBuildPath = "Builds/Android/SampleApp.apk"; + private const string DefaultAndroidBuildPath = "Builds/Android/SampleApp.apk"; + private const string DefaultiOSBuildPath = "Builds/iOS"; static void Build() { - BuildPlayer(DefaultBuildPath, BuildOptions.Development); + var platform = GetPlatformFromArgs(); + string defaultBuildPath = platform == BuildTarget.Android ? DefaultAndroidBuildPath : DefaultiOSBuildPath; + BuildPlayer(defaultBuildPath, BuildOptions.Development, platform); } static void BuildForAltTester() { - BuildPlayer(DefaultBuildPath, BuildOptions.Development | BuildOptions.IncludeTestAssemblies, true); + var platform = GetPlatformFromArgs(); + string defaultBuildPath = platform == BuildTarget.Android ? DefaultAndroidBuildPath : DefaultiOSBuildPath; + BuildPlayer(defaultBuildPath, BuildOptions.Development | BuildOptions.IncludeTestAssemblies, platform, true); } - - private static void BuildPlayer(string defaultBuildPath, BuildOptions buildOptions, bool setupForAltTester = false) + private static void BuildPlayer(string defaultBuildPath, BuildOptions buildOptions, BuildTarget platform, bool setupForAltTester = false) { try { string buildPath = GetBuildPathFromArgs(defaultBuildPath); - BuildPlayerOptions buildPlayerOptions = CreateBuildPlayerOptions(buildPath, buildOptions); + BuildPlayerOptions buildPlayerOptions = CreateBuildPlayerOptions(buildPath, buildOptions, platform); if (setupForAltTester) { - SetupAltTester(buildPlayerOptions); + SetupAltTester(buildPlayerOptions, platform); } var results = BuildPipeline.BuildPlayer(buildPlayerOptions); @@ -39,7 +43,7 @@ private static void BuildPlayer(string defaultBuildPath, BuildOptions buildOptio if (setupForAltTester) { // Clean up AltTester settings after build - AltBuilder.RemoveAltTesterFromScriptingDefineSymbols(BuildTargetGroup.Android); + AltBuilder.RemoveAltTesterFromScriptingDefineSymbols(platform == BuildTarget.Android ? BuildTargetGroup.Android : BuildTargetGroup.iOS); RemoveAltFromScene(buildPlayerOptions.scenes[0]); } } @@ -62,7 +66,20 @@ private static string GetBuildPathFromArgs(string defaultBuildPath) return defaultBuildPath; } - private static BuildPlayerOptions CreateBuildPlayerOptions(string buildPath, BuildOptions buildOptions) + private static BuildTarget GetPlatformFromArgs() + { + string[] args = Environment.GetCommandLineArgs(); + for (int i = 0; i < args.Length; i++) + { + if (args[i] == "--platform" && i + 1 < args.Length) + { + return args[i + 1].Equals("iOS", StringComparison.OrdinalIgnoreCase) ? BuildTarget.iOS : BuildTarget.Android; + } + } + return BuildTarget.Android; // Default to Android if no platform is specified + } + + private static BuildPlayerOptions CreateBuildPlayerOptions(string buildPath, BuildOptions buildOptions, BuildTarget platform) { return new BuildPlayerOptions { @@ -74,17 +91,18 @@ private static BuildPlayerOptions CreateBuildPlayerOptions(string buildPath, Bui "Assets/Scenes/ZkEvmGetBalance.unity", "Assets/Scenes/ZkEvmGetTransactionReceipt.unity", "Assets/Scenes/ZkEvmSendTransaction.unity", - "Assets/Scenes/ImxNftTransfer.unity" + "Assets/Scenes/ImxNftTransfer.unity", + "Assets/Scenes/ZkEVMSignTypedData.unity" }, locationPathName = buildPath, - target = BuildTarget.Android, + target = platform, options = buildOptions }; } - private static void SetupAltTester(BuildPlayerOptions buildPlayerOptions) + private static void SetupAltTester(BuildPlayerOptions buildPlayerOptions, BuildTarget platform) { - AltBuilder.AddAltTesterInScriptingDefineSymbolsGroup(BuildTargetGroup.Android); + AltBuilder.AddAltTesterInScriptingDefineSymbolsGroup(platform == BuildTarget.Android ? BuildTargetGroup.Android : BuildTargetGroup.iOS); AltBuilder.CreateJsonFileForInputMappingOfAxis(); var instrumentationSettings = new AltInstrumentationSettings(); diff --git a/sample/Assets/Editor/AndroidBuilder.cs.meta b/sample/Assets/Editor/MobileBuilder.cs.meta similarity index 100% rename from sample/Assets/Editor/AndroidBuilder.cs.meta rename to sample/Assets/Editor/MobileBuilder.cs.meta diff --git a/sample/Assets/Editor/WindowsBuilder.cs b/sample/Assets/Editor/WindowsBuilder.cs index 31b2f5037..35d752fb3 100644 --- a/sample/Assets/Editor/WindowsBuilder.cs +++ b/sample/Assets/Editor/WindowsBuilder.cs @@ -71,7 +71,8 @@ private static BuildPlayerOptions CreateBuildPlayerOptions(string buildPath, Bui "Assets/Scenes/ZkEvmGetBalance.unity", "Assets/Scenes/ZkEvmGetTransactionReceipt.unity", "Assets/Scenes/ZkEvmSendTransaction.unity", - "Assets/Scenes/ImxNftTransfer.unity" + "Assets/Scenes/ImxNftTransfer.unity", + "Assets/Scenes/ZkEVMSignTypedData.unity" }, locationPathName = buildPath, target = BuildTarget.StandaloneWindows64, diff --git a/sample/Assets/Scenes/SelectAuthMethod.unity b/sample/Assets/Scenes/SelectAuthMethod.unity index 378265488..f16c03e39 100644 --- a/sample/Assets/Scenes/SelectAuthMethod.unity +++ b/sample/Assets/Scenes/SelectAuthMethod.unity @@ -206,8 +206,8 @@ MonoBehaviour: m_TargetGraphic: {fileID: 416242725} m_HandleRect: {fileID: 416242724} m_Direction: 0 - m_Value: 1 - m_Size: 1 + m_Value: 0 + m_Size: 0.9999999 m_NumberOfSteps: 0 m_OnValueChanged: m_PersistentCalls: @@ -1323,7 +1323,7 @@ MonoBehaviour: m_TargetGraphic: {fileID: 167431872} m_HandleRect: {fileID: 167431871} m_Direction: 2 - m_Value: 1 + m_Value: 0 m_Size: 1 m_NumberOfSteps: 0 m_OnValueChanged: @@ -1673,8 +1673,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 905.59955, y: 0} - m_SizeDelta: {x: 1771.1991, y: 0} + m_AnchoredPosition: {x: 1259.3727, y: 0} + m_SizeDelta: {x: 2478.7454, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1661390145 MonoBehaviour: @@ -1768,8 +1768,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 905.59955, y: 0} - m_SizeDelta: {x: 1771.1991, y: 0} + m_AnchoredPosition: {x: 1259.3727, y: 0} + m_SizeDelta: {x: 2478.7454, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1688502349 MonoBehaviour: diff --git a/sample/ProjectSettings/ProjectSettings.asset b/sample/ProjectSettings/ProjectSettings.asset index 6143ee258..0b2facda7 100644 --- a/sample/ProjectSettings/ProjectSettings.asset +++ b/sample/ProjectSettings/ProjectSettings.asset @@ -155,13 +155,15 @@ PlayerSettings: androidSupportedAspectRatio: 1 androidMaxAspectRatio: 2.1 applicationIdentifier: + Android: com.immutable.ImmutableSample Standalone: com.immutable.unitysample + iPhone: com.immutable.Immutable-Sample buildNumber: Standalone: 0 VisionOS: 0 iPhone: 0 tvOS: 0 - overrideDefaultApplicationIdentifier: 1 + overrideDefaultApplicationIdentifier: 0 AndroidBundleVersionCode: 1 AndroidMinSdkVersion: 26 AndroidTargetSdkVersion: 33 @@ -232,7 +234,7 @@ PlayerSettings: tvOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 - appleEnableAutomaticSigning: 0 + appleEnableAutomaticSigning: 1 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 appleEnableProMotion: 0 @@ -529,7 +531,7 @@ PlayerSettings: logObjCUncaughtExceptions: 1 enableCrashReportAPI: 0 cameraUsageDescription: - locationUsageDescription: + locationUsageDescription: Not used microphoneUsageDescription: bluetoothUsageDescription: switchNMETAOverride: @@ -774,6 +776,7 @@ PlayerSettings: scriptingDefineSymbols: Android: VUPLEX_STANDALONE Standalone: VUPLEX_STANDALONE + iPhone: additionalCompilerArguments: Standalone: - -nullable+ @@ -801,7 +804,7 @@ PlayerSettings: allowUnsafeCode: 0 useDeterministicCompilation: 1 enableRoslynAnalyzers: 1 - selectedPlatform: 2 + selectedPlatform: 3 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 1