Custom event
Pre API 2.0
// Without properties
Analytics.TrackCustomEvent("sample_event");
// With properties
Dictionary<String, String> properties = new Dictionary<String, String>()
{
{ "keyTrackEvent","valueTrackEvent" },
};
Analytics.trackCustomEvent("sample_event", eventProperties: properties);
API 2.0
JSONObject
, Bundle
, etc. are no longer supported and Properties
are used.
// Without properties
Smartlook.Instance.TrackEvent("sample_event");
// With properties
Dictionary<String, String> properties = new Dictionary<String, String>()
{
{ "keyTrackEvent","valueTrackEvent" },
};
Smartlook.Instance.TrackEvent("sample_event", properties);
Event name restrictions
- Cannot be empty or
null
.- The maximum length is 200 characters.
- Contains only alphanumeric characters and “_”, " ", “.”, “-”.
- Must start with an alphabetic character.
An event with an incorrect
name
will be dropped.
Navigation event
Pre API 2.0
Analytics.TrackNavigationEvent("SampleScreen",type: NavigationEventType.Enter);
Analytics.TrackNavigationEvent("SampleScreen",type: NavigationEventType.Exit);
API 2.0
ViewState
and ViewType
are no longer part of the API:
ViewState
is not needed because there 2 methodsenter
andexit
.ViewType
navigation events do not have any types and it's universal for all cases (Activity
,Fragment
, "custom").
Smartlook.Instance.TrackNavigationEnter("SampleScreen");
Smartlook.Instance.TrackNavigationExit("SampleScreen");
Navigation event name restrictions
- Cannot be empty or
null
.- The maximum length is 200 characters.
- Contains only alphanumeric characters and “_”, " ", “.”, “-”.
- Must start with an alphabetic character.
An event with an incorrect
name
will be dropped.
Global event properties
Pre API 2.0
Analytics.SetGlobalEventPropertiy("name","value");
API 2.0
Smartlook.Instance.eventProperties.PutString("sample_name", "sample_value");
Properties mutability
All event properties are now mutable. If immutability of certain properties is needed it must be ensured on the client-side.