diff --git a/.gitignore b/.gitignore
index fa33123c7..a26ecba4e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@ OneSignalExample/.utmp/
OneSignalExample/Packages/com.unity.asset-store-tools/
.DS_Store
+.gradle/
\ No newline at end of file
diff --git a/OneSignalExample/.gitignore b/OneSignalExample/.gitignore
index 8af868e8e..89c6cdb32 100644
--- a/OneSignalExample/.gitignore
+++ b/OneSignalExample/.gitignore
@@ -2,6 +2,7 @@
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
+/.utmp/
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
@@ -9,6 +10,7 @@
/[Bb]uilds/
/[Ll]ogs/
/[Mm]emoryCaptures/
+/UserSettings/
# Asset meta data should only be ignored when the corresponding asset is also ignored
!/[Aa]ssets/**/*.meta
@@ -58,3 +60,12 @@ sysinfo.txt
# Crashlytics generated file
crashlytics-build.properties
+# User-specific Unity Editor settings
+/[Uu]serSettings/
+
+# Gradle template backup files
+*.backup
+*.backup.meta
+*.backup2
+*.backup2.meta
+
diff --git a/OneSignalExample/Assets/OneSignal/Attribution/OneSignal.UnityPackage.Attribution.asmdef b/OneSignalExample/Assets/OneSignal/Attribution/OneSignal.UnityPackage.Attribution.asmdef
index 954c418d9..eb50b6a88 100644
--- a/OneSignalExample/Assets/OneSignal/Attribution/OneSignal.UnityPackage.Attribution.asmdef
+++ b/OneSignalExample/Assets/OneSignal/Attribution/OneSignal.UnityPackage.Attribution.asmdef
@@ -16,7 +16,7 @@
"versionDefines": [
{
"name": "com.onesignal.unity.core",
- "expression": "5.1.16",
+ "expression": "5.2.0",
"define": "ONE_SIGNAL_INSTALLED"
}
],
diff --git a/OneSignalExample/Assets/OneSignal/Editor/OneSignal.UnityPackage.Editor.asmdef b/OneSignalExample/Assets/OneSignal/Editor/OneSignal.UnityPackage.Editor.asmdef
index e02effcb1..53921af4e 100644
--- a/OneSignalExample/Assets/OneSignal/Editor/OneSignal.UnityPackage.Editor.asmdef
+++ b/OneSignalExample/Assets/OneSignal/Editor/OneSignal.UnityPackage.Editor.asmdef
@@ -16,7 +16,7 @@
"versionDefines": [
{
"name": "com.onesignal.unity.core",
- "expression": "5.1.16",
+ "expression": "5.2.0",
"define": "ONE_SIGNAL_INSTALLED"
}
],
diff --git a/OneSignalExample/Assets/OneSignal/Example/OneSignal.UnityPackage.Example.asmdef b/OneSignalExample/Assets/OneSignal/Example/OneSignal.UnityPackage.Example.asmdef
index ade4035fe..8bf8580b1 100644
--- a/OneSignalExample/Assets/OneSignal/Example/OneSignal.UnityPackage.Example.asmdef
+++ b/OneSignalExample/Assets/OneSignal/Example/OneSignal.UnityPackage.Example.asmdef
@@ -18,7 +18,7 @@
"versionDefines": [
{
"name": "com.onesignal.unity.core",
- "expression": "5.1.16",
+ "expression": "5.2.0",
"define": "ONE_SIGNAL_INSTALLED"
}
],
diff --git a/OneSignalExample/Assets/OneSignal/Example/OneSignalExampleBehaviour.cs b/OneSignalExample/Assets/OneSignal/Example/OneSignalExampleBehaviour.cs
index 5198ab7f9..800e2c8df 100644
--- a/OneSignalExample/Assets/OneSignal/Example/OneSignalExampleBehaviour.cs
+++ b/OneSignalExample/Assets/OneSignal/Example/OneSignalExampleBehaviour.cs
@@ -461,6 +461,58 @@ public void GetTags()
_log($"Get all user tags " + dictionaryString.TrimEnd(',', ' ') + "}");
}
+ public void TrackEvent()
+ {
+ // Detect platform
+ string platform =
+ Application.platform == RuntimePlatform.Android ? "android"
+ : Application.platform == RuntimePlatform.IPhonePlayer ? "ios"
+ : "unknown";
+
+ // Track event without properties
+ _log($"Tracking an event Unity-{platform}-noprops without properties");
+ OneSignal.User.TrackEvent($"Unity-{platform}-noprops");
+
+ // Track event with comprehensive properties
+ var properties = new Dictionary
+ {
+ { "someNum", 123 },
+ { "someFloat", 3.14159f },
+ { "someString", "abc" },
+ { "someBool", true },
+ {
+ "someObject",
+ new Dictionary
+ {
+ { "abc", "123" },
+ {
+ "nested",
+ new Dictionary { { "def", "456" } }
+ },
+ }
+ },
+ {
+ "someArray",
+ new List