From 1052e8f9e2c7bf3edc4a0902aec9c60acf494637 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Freire?= Date: Tue, 23 Jul 2024 12:34:49 +0200 Subject: [PATCH 1/2] Avoid using Analytics module in platforms that don't have it Console platforms don't have this module so this code would break. --- .../InputSystem/NativeInputRuntime.cs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs b/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs index 34d149f461..9c388c4fc0 100644 --- a/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs +++ b/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs @@ -9,7 +9,6 @@ using System.Reflection; using UnityEditor; using UnityEditorInternal; - #endif // This should be the only file referencing the API at UnityEngineInternal.Input. @@ -394,7 +393,7 @@ public Action onProjectChange public void SendAnalytic(InputAnalytics.IInputAnalytic analytic) { - #if (UNITY_EDITOR) + #if (UNITY_EDITOR && ENABLE_CLOUD_SERVICES_ANALYTICS) #if (UNITY_2023_2_OR_NEWER) EditorAnalytics.SendAnalytic(analytic); #else @@ -402,14 +401,14 @@ public void SendAnalytic(InputAnalytics.IInputAnalytic analytic) EditorAnalytics.RegisterEventWithLimit(info.Name, info.MaxEventsPerHour, info.MaxNumberOfElements, InputAnalytics.kVendorKey); EditorAnalytics.SendEventWithLimit(info.Name, analytic); #endif // UNITY_2023_2_OR_NEWER - #elif UNITY_ANALYTICS // Implicitly: !UNITY_EDITOR + #elif (!UNITY_EDITOR && ENABLE_CLOUD_SERVICES_ANALYTICS) // Implicitly: !UNITY_EDITOR var info = analytic.info; Analytics.Analytics.RegisterEvent(info.Name, info.MaxEventsPerHour, info.MaxNumberOfElements, InputAnalytics.kVendorKey); if (analytic.TryGatherData(out var data, out var error)) Analytics.Analytics.SendEvent(info.Name, data); else Debug.Log(error); // Non fatal - #endif // UNITY_EDITOR + #endif //UNITY_EDITOR && ENABLE_CLOUD_SERVICES_ANALYTICS } #endif // UNITY_ANALYTICS || UNITY_EDITOR From 5fd4595dd1e2f9b9ee0953384b50b37e5506acd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Freire?= Date: Wed, 24 Jul 2024 10:53:07 +0200 Subject: [PATCH 2/2] Improvement based on PR review --- .../InputSystem/NativeInputRuntime.cs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs b/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs index 9c388c4fc0..af5230a7d0 100644 --- a/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs +++ b/Packages/com.unity.inputsystem/InputSystem/NativeInputRuntime.cs @@ -393,22 +393,24 @@ public Action onProjectChange public void SendAnalytic(InputAnalytics.IInputAnalytic analytic) { - #if (UNITY_EDITOR && ENABLE_CLOUD_SERVICES_ANALYTICS) - #if (UNITY_2023_2_OR_NEWER) + #if ENABLE_CLOUD_SERVICES_ANALYTICS + #if (UNITY_EDITOR) + #if (UNITY_2023_2_OR_NEWER) EditorAnalytics.SendAnalytic(analytic); - #else + #else var info = analytic.info; EditorAnalytics.RegisterEventWithLimit(info.Name, info.MaxEventsPerHour, info.MaxNumberOfElements, InputAnalytics.kVendorKey); EditorAnalytics.SendEventWithLimit(info.Name, analytic); - #endif // UNITY_2023_2_OR_NEWER - #elif (!UNITY_EDITOR && ENABLE_CLOUD_SERVICES_ANALYTICS) // Implicitly: !UNITY_EDITOR + #endif // UNITY_2023_2_OR_NEWER + #elif (UNITY_ANALYTICS) // Implicitly: !UNITY_EDITOR var info = analytic.info; Analytics.Analytics.RegisterEvent(info.Name, info.MaxEventsPerHour, info.MaxNumberOfElements, InputAnalytics.kVendorKey); if (analytic.TryGatherData(out var data, out var error)) Analytics.Analytics.SendEvent(info.Name, data); else - Debug.Log(error); // Non fatal - #endif //UNITY_EDITOR && ENABLE_CLOUD_SERVICES_ANALYTICS + Debug.Log(error); // Non fatal + #endif //UNITY_EDITOR + #endif //ENABLE_CLOUD_SERVICES_ANALYTICS } #endif // UNITY_ANALYTICS || UNITY_EDITOR