Manage user tracking and opt-out
masterEvents are associated with users via a userToken. You can set this token at three levels of granularity:
- Global: Set
Insights.shared?.userTokenfor a default value across all events. - Application: Provide a
userTokenduringInsights.registerto apply it to every event tracked by that app. - Individual Event: Pass a
userTokendirectly to an event method (e.g.,clicked) to override previous defaults.
User Opt-out: To respect a user's request to stop tracking, set the isActive property to false on the Insights instance.
// Global userToken default value
Insights.shared?.userToken = "userToken"
// Application userToken, overrides global default
Insights.register(appId: "yourApplicationID",
apiKey: "yourAPIKey",
userToken: "userToken")
// Event userToken, overrides previous defaults
Insights.shared?.clicked(eventName: "eventName",
indexName: "indexName",
objectID: "objectID1",
userToken: "userToken")
// Opt-out of tracking
Insights.shared?.isActive = false