From 8e336d7e6ed7e0db54b3792e24a8f547f1632c39 Mon Sep 17 00:00:00 2001 From: AR Abdul Azeez Date: Tue, 22 Sep 2026 15:35:34 -0500 Subject: [PATCH 1/3] fix: [SDK-5335] reject null and empty identity strings Blank login, app id, language, alias, email, sms, tag key, trigger key, and custom event names were forwarded to native. One helper now drops those calls on Android and iOS. Co-authored-by: Cursor --- .../Runtime/AndroidInAppMessagesManager.cs | 27 +++++- .../Runtime/AndroidUserManager.cs | 86 ++++++++++++++++--- .../Runtime/InputGuard.cs | 42 +++++++++ com.onesignal.unity.core/Runtime/OneSignal.cs | 2 + .../Runtime/iOSInAppMessagesManager.cs | 27 +++++- .../Runtime/iOSUserManager.cs | 81 ++++++++++++++--- 6 files changed, 230 insertions(+), 35 deletions(-) create mode 100644 com.onesignal.unity.core/Runtime/InputGuard.cs diff --git a/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs b/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs index 741f760ac..45d6df26f 100644 --- a/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs +++ b/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs @@ -27,6 +27,7 @@ using System; using System.Collections.Generic; +using OneSignalSDK; using OneSignalSDK.Android.Utilities; using OneSignalSDK.InAppMessages; using OneSignalSDK.InAppMessages.Internal; @@ -56,16 +57,34 @@ public bool Paused set => _inAppMessages.Call("setPaused", value); } - public void AddTrigger(string key, string value) => + public void AddTrigger(string key, string value) + { + if (InputGuard.Missing(key, "addTrigger: key")) return; + if (value == null) + { + UnityEngine.Debug.LogError("OneSignal: addTrigger: value is required"); + return; + } _inAppMessages.Call("addTrigger", key, value); + } - public void AddTriggers(Dictionary triggers) => + public void AddTriggers(Dictionary triggers) + { + if (InputGuard.MissingEntries(triggers, "addTriggers", true)) return; _inAppMessages.Call("addTriggers", triggers.ToMap()); + } - public void RemoveTrigger(string key) => _inAppMessages.Call("removeTrigger", key); + public void RemoveTrigger(string key) + { + if (InputGuard.Missing(key, "removeTrigger: key")) return; + _inAppMessages.Call("removeTrigger", key); + } - public void RemoveTriggers(params string[] keys) => + public void RemoveTriggers(params string[] keys) + { + if (InputGuard.MissingAny(keys, "removeTriggers: key")) return; _inAppMessages.Call("removeTriggers", keys.ToArrayList()); + } public void ClearTriggers() => _inAppMessages.Call("clearTriggers"); diff --git a/com.onesignal.unity.android/Runtime/AndroidUserManager.cs b/com.onesignal.unity.android/Runtime/AndroidUserManager.cs index 1b7242a67..008061148 100644 --- a/com.onesignal.unity.android/Runtime/AndroidUserManager.cs +++ b/com.onesignal.unity.android/Runtime/AndroidUserManager.cs @@ -27,6 +27,7 @@ using System; using System.Collections.Generic; +using OneSignalSDK; using OneSignalSDK.Android.User.Models; using OneSignalSDK.Android.Utilities; using OneSignalSDK.User; @@ -73,7 +74,11 @@ public IPushSubscription PushSubscription public string Language { - set => _user.Call("setLanguage", value); + set + { + if (InputGuard.Missing(value, "setLanguage: language")) return; + _user.Call("setLanguage", value); + } } public Dictionary GetTags() @@ -82,35 +87,88 @@ public Dictionary GetTags() return obj.MapToDictionary(); } - public void AddTag(string key, string value) => _user.Call("addTag", key, value); + public void AddTag(string key, string value) + { + if (InputGuard.Missing(key, "addTag: key")) return; + if (value == null) + { + UnityEngine.Debug.LogError("OneSignal: addTag: value is required"); + return; + } + _user.Call("addTag", key, value); + } - public void AddTags(Dictionary tags) => _user.Call("addTags", tags.ToMap()); + public void AddTags(Dictionary tags) + { + if (InputGuard.MissingEntries(tags, "addTags", true)) return; + _user.Call("addTags", tags.ToMap()); + } - public void RemoveTag(string key) => _user.Call("removeTag", key); + public void RemoveTag(string key) + { + if (InputGuard.Missing(key, "removeTag: key")) return; + _user.Call("removeTag", key); + } - public void RemoveTags(params string[] keys) => + public void RemoveTags(params string[] keys) + { + if (InputGuard.MissingAny(keys, "removeTags: key")) return; _user.Call("removeTags", keys.ToArrayList()); + } - public void AddAlias(string label, string id) => _user.Call("addAlias", label, id); + public void AddAlias(string label, string id) + { + if (InputGuard.Missing(label, "addAlias: label") || InputGuard.Missing(id, "addAlias: id")) return; + _user.Call("addAlias", label, id); + } - public void AddAliases(Dictionary aliases) => + public void AddAliases(Dictionary aliases) + { + if (InputGuard.MissingEntries(aliases, "addAliases", false)) return; _user.Call("addAliases", aliases.ToMap()); + } - public void RemoveAlias(string label) => _user.Call("removeAlias", label); + public void RemoveAlias(string label) + { + if (InputGuard.Missing(label, "removeAlias: label")) return; + _user.Call("removeAlias", label); + } - public void RemoveAliases(params string[] labels) => + public void RemoveAliases(params string[] labels) + { + if (InputGuard.MissingAny(labels, "removeAliases: label")) return; _user.Call("removeAliases", labels.ToArrayList()); + } - public void AddEmail(string email) => _user.Call("addEmail", email); + public void AddEmail(string email) + { + if (InputGuard.Missing(email, "addEmail: email")) return; + _user.Call("addEmail", email); + } - public void RemoveEmail(string email) => _user.Call("removeEmail", email); + public void RemoveEmail(string email) + { + if (InputGuard.Missing(email, "removeEmail: email")) return; + _user.Call("removeEmail", email); + } - public void AddSms(string sms) => _user.Call("addSms", sms); + public void AddSms(string sms) + { + if (InputGuard.Missing(sms, "addSms: sms")) return; + _user.Call("addSms", sms); + } - public void RemoveSms(string sms) => _user.Call("removeSms", sms); + public void RemoveSms(string sms) + { + if (InputGuard.Missing(sms, "removeSms: sms")) return; + _user.Call("removeSms", sms); + } - public void TrackEvent(string name, Dictionary properties = null) => + public void TrackEvent(string name, Dictionary properties = null) + { + if (InputGuard.Missing(name, "trackEvent: name")) return; _user.Call("trackEvent", name, properties?.ToMap()); + } public void Initialize() { diff --git a/com.onesignal.unity.core/Runtime/InputGuard.cs b/com.onesignal.unity.core/Runtime/InputGuard.cs new file mode 100644 index 000000000..cba115dfa --- /dev/null +++ b/com.onesignal.unity.core/Runtime/InputGuard.cs @@ -0,0 +1,42 @@ +using System.Collections.Generic; +using UnityEngine; + +namespace OneSignalSDK +{ + internal static class InputGuard + { + public static bool Missing(string value, string api) + { + if (!string.IsNullOrEmpty(value)) return false; + Debug.LogError("OneSignal: " + api + " is required"); + return true; + } + + public static bool MissingAny(string[] values, string api) + { + if (values == null) return Missing(null, api); + foreach (var value in values) + { + if (Missing(value, api)) return true; + } + return false; + } + + public static bool MissingEntries(IDictionary values, string api, bool allowEmptyValue) + { + if (values == null) return Missing(null, api); + foreach (var pair in values) + { + if (Missing(pair.Key, api + ": key")) return true; + if (allowEmptyValue) + { + if (pair.Value != null) continue; + Debug.LogError("OneSignal: " + api + ": value is required"); + return true; + } + if (Missing(pair.Value, api + ": value")) return true; + } + return false; + } + } +} diff --git a/com.onesignal.unity.core/Runtime/OneSignal.cs b/com.onesignal.unity.core/Runtime/OneSignal.cs index 5fb760ed9..0b6308af6 100755 --- a/com.onesignal.unity.core/Runtime/OneSignal.cs +++ b/com.onesignal.unity.core/Runtime/OneSignal.cs @@ -145,6 +145,7 @@ public static bool ConsentRequired /// Your application id from the OneSignal dashboard public static void Initialize(string appId) { + if (InputGuard.Missing(appId, "initialize: appId")) return; OneSignal.Default.Initialize(appId); } @@ -172,6 +173,7 @@ public static void Initialize(string appId) /// public static void Login(string externalId, string jwtBearerToken = null) { + if (InputGuard.Missing(externalId, "login: externalId")) return; OneSignal.Default.Login(externalId, jwtBearerToken); } diff --git a/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs b/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs index 43f0b446d..281412cc3 100644 --- a/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs +++ b/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs @@ -28,6 +28,7 @@ using System; using System.Collections.Generic; using System.Runtime.InteropServices; +using OneSignalSDK; using OneSignalSDK.InAppMessages; using OneSignalSDK.InAppMessages.Internal; using OneSignalSDK.InAppMessages.Models; @@ -105,16 +106,34 @@ public bool Paused set => _oneSignalInAppMessagesSetPaused(value); } - public void AddTrigger(string key, string value) => + public void AddTrigger(string key, string value) + { + if (InputGuard.Missing(key, "addTrigger: key")) return; + if (value == null) + { + Debug.LogError("OneSignal: addTrigger: value is required"); + return; + } _oneSignalInAppMessagesAddTrigger(key, value.ToString()); + } - public void AddTriggers(Dictionary triggers) => + public void AddTriggers(Dictionary triggers) + { + if (InputGuard.MissingEntries(triggers, "addTriggers", true)) return; _oneSignalInAppMessagesAddTriggers(Json.Serialize(triggers)); + } - public void RemoveTrigger(string key) => _oneSignalInAppMessagesRemoveTrigger(key); + public void RemoveTrigger(string key) + { + if (InputGuard.Missing(key, "removeTrigger: key")) return; + _oneSignalInAppMessagesRemoveTrigger(key); + } - public void RemoveTriggers(params string[] keys) => + public void RemoveTriggers(params string[] keys) + { + if (InputGuard.MissingAny(keys, "removeTriggers: key")) return; _oneSignalInAppMessagesRemoveTriggers(Json.Serialize(keys)); + } public void ClearTriggers() => _oneSignalInAppMessagesClearTriggers(); diff --git a/com.onesignal.unity.ios/Runtime/iOSUserManager.cs b/com.onesignal.unity.ios/Runtime/iOSUserManager.cs index 66ddd3449..2c55d9bbc 100644 --- a/com.onesignal.unity.ios/Runtime/iOSUserManager.cs +++ b/com.onesignal.unity.ios/Runtime/iOSUserManager.cs @@ -28,6 +28,7 @@ using System; using System.Collections.Generic; using System.Runtime.InteropServices; +using OneSignalSDK; using OneSignalSDK.iOS.User.Models; using OneSignalSDK.User; using OneSignalSDK.User.Internal; @@ -125,7 +126,11 @@ public IPushSubscription PushSubscription public string Language { - set => _oneSignalUserSetLanguage(value); + set + { + if (InputGuard.Missing(value, "setLanguage: language")) return; + _oneSignalUserSetLanguage(value); + } } public Dictionary GetTags() @@ -138,36 +143,86 @@ public Dictionary GetTags() return dict; } - public void AddTag(string key, string value) => _oneSignalUserAddTag(key, value); + public void AddTag(string key, string value) + { + if (InputGuard.Missing(key, "addTag: key")) return; + if (value == null) + { + Debug.LogError("OneSignal: addTag: value is required"); + return; + } + _oneSignalUserAddTag(key, value); + } - public void AddTags(Dictionary tags) => + public void AddTags(Dictionary tags) + { + if (InputGuard.MissingEntries(tags, "addTags", true)) return; _oneSignalUserAddTags(Json.Serialize(tags)); + } - public void RemoveTag(string key) => _oneSignalUserRemoveTag(key); + public void RemoveTag(string key) + { + if (InputGuard.Missing(key, "removeTag: key")) return; + _oneSignalUserRemoveTag(key); + } - public void RemoveTags(params string[] keys) => + public void RemoveTags(params string[] keys) + { + if (InputGuard.MissingAny(keys, "removeTags: key")) return; _oneSignalUserRemoveTags(Json.Serialize(keys)); + } - public void AddAlias(string label, string id) => _oneSignalUserAddAlias(label, id); + public void AddAlias(string label, string id) + { + if (InputGuard.Missing(label, "addAlias: label") || InputGuard.Missing(id, "addAlias: id")) return; + _oneSignalUserAddAlias(label, id); + } - public void AddAliases(Dictionary aliases) => + public void AddAliases(Dictionary aliases) + { + if (InputGuard.MissingEntries(aliases, "addAliases", false)) return; _oneSignalUserAddAliases(Json.Serialize(aliases)); + } - public void RemoveAlias(string label) => _oneSignalUserRemoveAlias(label); + public void RemoveAlias(string label) + { + if (InputGuard.Missing(label, "removeAlias: label")) return; + _oneSignalUserRemoveAlias(label); + } - public void RemoveAliases(params string[] labels) => + public void RemoveAliases(params string[] labels) + { + if (InputGuard.MissingAny(labels, "removeAliases: label")) return; _oneSignalUserRemoveAliases(Json.Serialize(labels)); + } - public void AddEmail(string email) => _oneSignalUserAddEmail(email); + public void AddEmail(string email) + { + if (InputGuard.Missing(email, "addEmail: email")) return; + _oneSignalUserAddEmail(email); + } - public void RemoveEmail(string email) => _oneSignalUserRemoveEmail(email); + public void RemoveEmail(string email) + { + if (InputGuard.Missing(email, "removeEmail: email")) return; + _oneSignalUserRemoveEmail(email); + } - public void AddSms(string sms) => _oneSignalUserAddSms(sms); + public void AddSms(string sms) + { + if (InputGuard.Missing(sms, "addSms: sms")) return; + _oneSignalUserAddSms(sms); + } - public void RemoveSms(string sms) => _oneSignalUserRemoveSms(sms); + public void RemoveSms(string sms) + { + if (InputGuard.Missing(sms, "removeSms: sms")) return; + _oneSignalUserRemoveSms(sms); + } public void TrackEvent(string name, Dictionary properties = null) { + if (InputGuard.Missing(name, "trackEvent: name")) return; if (properties != null) _oneSignalUserTrackEvent(name, Json.Serialize(properties)); else From d160fe94a1ff12fd154cd68f22f50f980ae78b3b Mon Sep 17 00:00:00 2001 From: AR Abdul Azeez Date: Thu, 24 Sep 2026 12:28:44 -0500 Subject: [PATCH 2/3] fix: [SDK-5335] keep setLanguage("") as the device language reset Empty language is the only reset path. Null is still rejected. Co-authored-by: Cursor --- com.onesignal.unity.android/Runtime/AndroidUserManager.cs | 7 ++++++- com.onesignal.unity.ios/Runtime/iOSUserManager.cs | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/com.onesignal.unity.android/Runtime/AndroidUserManager.cs b/com.onesignal.unity.android/Runtime/AndroidUserManager.cs index 008061148..9e5bdc6d8 100644 --- a/com.onesignal.unity.android/Runtime/AndroidUserManager.cs +++ b/com.onesignal.unity.android/Runtime/AndroidUserManager.cs @@ -76,7 +76,12 @@ public string Language { set { - if (InputGuard.Missing(value, "setLanguage: language")) return; + // Empty string is the reset to the device language. Null is not. + if (value == null) + { + Debug.LogError("OneSignal: setLanguage: language is required"); + return; + } _user.Call("setLanguage", value); } } diff --git a/com.onesignal.unity.ios/Runtime/iOSUserManager.cs b/com.onesignal.unity.ios/Runtime/iOSUserManager.cs index 2c55d9bbc..0298d21bd 100644 --- a/com.onesignal.unity.ios/Runtime/iOSUserManager.cs +++ b/com.onesignal.unity.ios/Runtime/iOSUserManager.cs @@ -128,7 +128,12 @@ public string Language { set { - if (InputGuard.Missing(value, "setLanguage: language")) return; + // Empty string is the reset to the device language. Null is not. + if (value == null) + { + Debug.LogError("OneSignal: setLanguage: language is required"); + return; + } _oneSignalUserSetLanguage(value); } } From 94f81038b97aa2940094a8985fbc4c302058cc0c Mon Sep 17 00:00:00 2001 From: AR Abdul Azeez Date: Fri, 25 Sep 2026 12:47:23 -0500 Subject: [PATCH 3/3] fix: [SDK-5335] format input guards for csharpier CI rejects the single-line returns the formatter wants expanded. Co-authored-by: Cursor --- .../Runtime/AndroidInAppMessagesManager.cs | 12 ++++-- .../Runtime/AndroidUserManager.cs | 42 +++++++++++++------ .../Runtime/InputGuard.cs | 27 ++++++++---- com.onesignal.unity.core/Runtime/OneSignal.cs | 6 ++- .../Runtime/iOSInAppMessagesManager.cs | 12 ++++-- .../Runtime/iOSUserManager.cs | 42 +++++++++++++------ 6 files changed, 97 insertions(+), 44 deletions(-) diff --git a/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs b/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs index 45d6df26f..62467df3e 100644 --- a/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs +++ b/com.onesignal.unity.android/Runtime/AndroidInAppMessagesManager.cs @@ -59,7 +59,8 @@ public bool Paused public void AddTrigger(string key, string value) { - if (InputGuard.Missing(key, "addTrigger: key")) return; + if (InputGuard.Missing(key, "addTrigger: key")) + return; if (value == null) { UnityEngine.Debug.LogError("OneSignal: addTrigger: value is required"); @@ -70,19 +71,22 @@ public void AddTrigger(string key, string value) public void AddTriggers(Dictionary triggers) { - if (InputGuard.MissingEntries(triggers, "addTriggers", true)) return; + if (InputGuard.MissingEntries(triggers, "addTriggers", true)) + return; _inAppMessages.Call("addTriggers", triggers.ToMap()); } public void RemoveTrigger(string key) { - if (InputGuard.Missing(key, "removeTrigger: key")) return; + if (InputGuard.Missing(key, "removeTrigger: key")) + return; _inAppMessages.Call("removeTrigger", key); } public void RemoveTriggers(params string[] keys) { - if (InputGuard.MissingAny(keys, "removeTriggers: key")) return; + if (InputGuard.MissingAny(keys, "removeTriggers: key")) + return; _inAppMessages.Call("removeTriggers", keys.ToArrayList()); } diff --git a/com.onesignal.unity.android/Runtime/AndroidUserManager.cs b/com.onesignal.unity.android/Runtime/AndroidUserManager.cs index 9e5bdc6d8..8e8e3d47d 100644 --- a/com.onesignal.unity.android/Runtime/AndroidUserManager.cs +++ b/com.onesignal.unity.android/Runtime/AndroidUserManager.cs @@ -94,7 +94,8 @@ public Dictionary GetTags() public void AddTag(string key, string value) { - if (InputGuard.Missing(key, "addTag: key")) return; + if (InputGuard.Missing(key, "addTag: key")) + return; if (value == null) { UnityEngine.Debug.LogError("OneSignal: addTag: value is required"); @@ -105,73 +106,88 @@ public void AddTag(string key, string value) public void AddTags(Dictionary tags) { - if (InputGuard.MissingEntries(tags, "addTags", true)) return; + if (InputGuard.MissingEntries(tags, "addTags", true)) + return; _user.Call("addTags", tags.ToMap()); } public void RemoveTag(string key) { - if (InputGuard.Missing(key, "removeTag: key")) return; + if (InputGuard.Missing(key, "removeTag: key")) + return; _user.Call("removeTag", key); } public void RemoveTags(params string[] keys) { - if (InputGuard.MissingAny(keys, "removeTags: key")) return; + if (InputGuard.MissingAny(keys, "removeTags: key")) + return; _user.Call("removeTags", keys.ToArrayList()); } public void AddAlias(string label, string id) { - if (InputGuard.Missing(label, "addAlias: label") || InputGuard.Missing(id, "addAlias: id")) return; + if ( + InputGuard.Missing(label, "addAlias: label") + || InputGuard.Missing(id, "addAlias: id") + ) + return; _user.Call("addAlias", label, id); } public void AddAliases(Dictionary aliases) { - if (InputGuard.MissingEntries(aliases, "addAliases", false)) return; + if (InputGuard.MissingEntries(aliases, "addAliases", false)) + return; _user.Call("addAliases", aliases.ToMap()); } public void RemoveAlias(string label) { - if (InputGuard.Missing(label, "removeAlias: label")) return; + if (InputGuard.Missing(label, "removeAlias: label")) + return; _user.Call("removeAlias", label); } public void RemoveAliases(params string[] labels) { - if (InputGuard.MissingAny(labels, "removeAliases: label")) return; + if (InputGuard.MissingAny(labels, "removeAliases: label")) + return; _user.Call("removeAliases", labels.ToArrayList()); } public void AddEmail(string email) { - if (InputGuard.Missing(email, "addEmail: email")) return; + if (InputGuard.Missing(email, "addEmail: email")) + return; _user.Call("addEmail", email); } public void RemoveEmail(string email) { - if (InputGuard.Missing(email, "removeEmail: email")) return; + if (InputGuard.Missing(email, "removeEmail: email")) + return; _user.Call("removeEmail", email); } public void AddSms(string sms) { - if (InputGuard.Missing(sms, "addSms: sms")) return; + if (InputGuard.Missing(sms, "addSms: sms")) + return; _user.Call("addSms", sms); } public void RemoveSms(string sms) { - if (InputGuard.Missing(sms, "removeSms: sms")) return; + if (InputGuard.Missing(sms, "removeSms: sms")) + return; _user.Call("removeSms", sms); } public void TrackEvent(string name, Dictionary properties = null) { - if (InputGuard.Missing(name, "trackEvent: name")) return; + if (InputGuard.Missing(name, "trackEvent: name")) + return; _user.Call("trackEvent", name, properties?.ToMap()); } diff --git a/com.onesignal.unity.core/Runtime/InputGuard.cs b/com.onesignal.unity.core/Runtime/InputGuard.cs index cba115dfa..383825784 100644 --- a/com.onesignal.unity.core/Runtime/InputGuard.cs +++ b/com.onesignal.unity.core/Runtime/InputGuard.cs @@ -7,34 +7,45 @@ internal static class InputGuard { public static bool Missing(string value, string api) { - if (!string.IsNullOrEmpty(value)) return false; + if (!string.IsNullOrEmpty(value)) + return false; Debug.LogError("OneSignal: " + api + " is required"); return true; } public static bool MissingAny(string[] values, string api) { - if (values == null) return Missing(null, api); + if (values == null) + return Missing(null, api); foreach (var value in values) { - if (Missing(value, api)) return true; + if (Missing(value, api)) + return true; } return false; } - public static bool MissingEntries(IDictionary values, string api, bool allowEmptyValue) + public static bool MissingEntries( + IDictionary values, + string api, + bool allowEmptyValue + ) { - if (values == null) return Missing(null, api); + if (values == null) + return Missing(null, api); foreach (var pair in values) { - if (Missing(pair.Key, api + ": key")) return true; + if (Missing(pair.Key, api + ": key")) + return true; if (allowEmptyValue) { - if (pair.Value != null) continue; + if (pair.Value != null) + continue; Debug.LogError("OneSignal: " + api + ": value is required"); return true; } - if (Missing(pair.Value, api + ": value")) return true; + if (Missing(pair.Value, api + ": value")) + return true; } return false; } diff --git a/com.onesignal.unity.core/Runtime/OneSignal.cs b/com.onesignal.unity.core/Runtime/OneSignal.cs index 0b6308af6..ebf08f67b 100755 --- a/com.onesignal.unity.core/Runtime/OneSignal.cs +++ b/com.onesignal.unity.core/Runtime/OneSignal.cs @@ -145,7 +145,8 @@ public static bool ConsentRequired /// Your application id from the OneSignal dashboard public static void Initialize(string appId) { - if (InputGuard.Missing(appId, "initialize: appId")) return; + if (InputGuard.Missing(appId, "initialize: appId")) + return; OneSignal.Default.Initialize(appId); } @@ -173,7 +174,8 @@ public static void Initialize(string appId) /// public static void Login(string externalId, string jwtBearerToken = null) { - if (InputGuard.Missing(externalId, "login: externalId")) return; + if (InputGuard.Missing(externalId, "login: externalId")) + return; OneSignal.Default.Login(externalId, jwtBearerToken); } diff --git a/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs b/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs index 281412cc3..9bef50cff 100644 --- a/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs +++ b/com.onesignal.unity.ios/Runtime/iOSInAppMessagesManager.cs @@ -108,7 +108,8 @@ public bool Paused public void AddTrigger(string key, string value) { - if (InputGuard.Missing(key, "addTrigger: key")) return; + if (InputGuard.Missing(key, "addTrigger: key")) + return; if (value == null) { Debug.LogError("OneSignal: addTrigger: value is required"); @@ -119,19 +120,22 @@ public void AddTrigger(string key, string value) public void AddTriggers(Dictionary triggers) { - if (InputGuard.MissingEntries(triggers, "addTriggers", true)) return; + if (InputGuard.MissingEntries(triggers, "addTriggers", true)) + return; _oneSignalInAppMessagesAddTriggers(Json.Serialize(triggers)); } public void RemoveTrigger(string key) { - if (InputGuard.Missing(key, "removeTrigger: key")) return; + if (InputGuard.Missing(key, "removeTrigger: key")) + return; _oneSignalInAppMessagesRemoveTrigger(key); } public void RemoveTriggers(params string[] keys) { - if (InputGuard.MissingAny(keys, "removeTriggers: key")) return; + if (InputGuard.MissingAny(keys, "removeTriggers: key")) + return; _oneSignalInAppMessagesRemoveTriggers(Json.Serialize(keys)); } diff --git a/com.onesignal.unity.ios/Runtime/iOSUserManager.cs b/com.onesignal.unity.ios/Runtime/iOSUserManager.cs index 0298d21bd..a6246e93c 100644 --- a/com.onesignal.unity.ios/Runtime/iOSUserManager.cs +++ b/com.onesignal.unity.ios/Runtime/iOSUserManager.cs @@ -150,7 +150,8 @@ public Dictionary GetTags() public void AddTag(string key, string value) { - if (InputGuard.Missing(key, "addTag: key")) return; + if (InputGuard.Missing(key, "addTag: key")) + return; if (value == null) { Debug.LogError("OneSignal: addTag: value is required"); @@ -161,73 +162,88 @@ public void AddTag(string key, string value) public void AddTags(Dictionary tags) { - if (InputGuard.MissingEntries(tags, "addTags", true)) return; + if (InputGuard.MissingEntries(tags, "addTags", true)) + return; _oneSignalUserAddTags(Json.Serialize(tags)); } public void RemoveTag(string key) { - if (InputGuard.Missing(key, "removeTag: key")) return; + if (InputGuard.Missing(key, "removeTag: key")) + return; _oneSignalUserRemoveTag(key); } public void RemoveTags(params string[] keys) { - if (InputGuard.MissingAny(keys, "removeTags: key")) return; + if (InputGuard.MissingAny(keys, "removeTags: key")) + return; _oneSignalUserRemoveTags(Json.Serialize(keys)); } public void AddAlias(string label, string id) { - if (InputGuard.Missing(label, "addAlias: label") || InputGuard.Missing(id, "addAlias: id")) return; + if ( + InputGuard.Missing(label, "addAlias: label") + || InputGuard.Missing(id, "addAlias: id") + ) + return; _oneSignalUserAddAlias(label, id); } public void AddAliases(Dictionary aliases) { - if (InputGuard.MissingEntries(aliases, "addAliases", false)) return; + if (InputGuard.MissingEntries(aliases, "addAliases", false)) + return; _oneSignalUserAddAliases(Json.Serialize(aliases)); } public void RemoveAlias(string label) { - if (InputGuard.Missing(label, "removeAlias: label")) return; + if (InputGuard.Missing(label, "removeAlias: label")) + return; _oneSignalUserRemoveAlias(label); } public void RemoveAliases(params string[] labels) { - if (InputGuard.MissingAny(labels, "removeAliases: label")) return; + if (InputGuard.MissingAny(labels, "removeAliases: label")) + return; _oneSignalUserRemoveAliases(Json.Serialize(labels)); } public void AddEmail(string email) { - if (InputGuard.Missing(email, "addEmail: email")) return; + if (InputGuard.Missing(email, "addEmail: email")) + return; _oneSignalUserAddEmail(email); } public void RemoveEmail(string email) { - if (InputGuard.Missing(email, "removeEmail: email")) return; + if (InputGuard.Missing(email, "removeEmail: email")) + return; _oneSignalUserRemoveEmail(email); } public void AddSms(string sms) { - if (InputGuard.Missing(sms, "addSms: sms")) return; + if (InputGuard.Missing(sms, "addSms: sms")) + return; _oneSignalUserAddSms(sms); } public void RemoveSms(string sms) { - if (InputGuard.Missing(sms, "removeSms: sms")) return; + if (InputGuard.Missing(sms, "removeSms: sms")) + return; _oneSignalUserRemoveSms(sms); } public void TrackEvent(string name, Dictionary properties = null) { - if (InputGuard.Missing(name, "trackEvent: name")) return; + if (InputGuard.Missing(name, "trackEvent: name")) + return; if (properties != null) _oneSignalUserTrackEvent(name, Json.Serialize(properties)); else