Upgrade from 3.x to 3.13.0
UpdatedThis page introduces a new CioAppDelegateWrapper
pattern for iOS that simplifies push notification setup and eliminates the need for method swizzling.
What changed?
The changes are mainly to align our SDK APIs across different platforms. No functional changes to be expected.
Upgrade process
Attributes
profileAttributes
property is deprecated- Getter has no replacement, the mobile SDK doesn’t expose the user’s profile attributes
- Setter is replaced with
setProfileAttributes(attributes: [String: Any])
deviceAttributes
property is deprecated- Getter has no replacement, the mobile SDK doesn’t expose the user’s device attributes
- Setter is replaced with
setDeviceAttributes(attributes: [String: Any])
Tracking
Identifying a user
- These variants of
identify
are deprecated:identify<T: Codable>(traits: T)
where traits are a generic typeidentify<RequestBody: Codable>(userId: String, traits: RequestBody?)
- You should use this instead:
identify(userId: String, traits: [String: Any]?)
setProfileAttributes(attributes: [String: Any])
can now be used to track anonymous profile attributes
- These variants of
Tracking an event
- These variants of
track
are deprecated:track<RequestBody: Codable>(name: String, properties: RequestBody?)
where traits are a generic type
- You should use this instead:
track(name: String, properties: [String: Any]?)
- These variants of
Screen tracking
- These variants of
screen
are deprecated:screen<RequestBody: Codable>(title: String, properties: RequestBody?)
where traits are a generic type
- You should use this instead:
screen(title: String, properties: [String: Any]?
- These variants of