Releases: Iterable/iterable-swift-sdk
6.5.9 (Deprecated)
Deprecation notice
This version of the SDK is deprecated. Do not use it.
This version of Iterable's iOS SDK include changes to help keep a user's Iterable profile in sync with their physical device's push settings for your app (by keeping the device's notificationsEnabled
flag up-to-date in Iterable).
However, it also includes a bug that can prevent the SDK from receiving silent push notifications, which in turn can prevent end users from receiving expected in-app and embedded messages.
If you've started building on this version of the SDK, please roll back to a previous version while we work on a fix.
Added
- Support for JSON-only in-app messages. JSON-only messages are now handled by the
onNew
handler and consumed after retrieval. - Enhanced notification state tracking, to align with system notification permissions changes.
Changed
- Reorganized files and updated documentation URL in podspec.
6.5.8
Fixed
- Fixed incorrect tracking of pushOpen for push notifications with Wake App enabled. Tracking now happens only when users tap to open the app.
- Fixed the default
notificationsEnabled
value returned whenautoPushRegistration
is set tofalse
.
Changed
- Updated repository name on Fastline script and podspec files.
- Comments out outdated tests that need to be revisited.
- Updated sample app to use generic URLs.
6.5.8-beta1
Added
- introduces ThreadSafeOrderedDictionary which is a wrapper around the OrderedDictionary to ensure thread safety. Thanks to @Rspoon3
Fixed
- Prevents crashes relating to the Core Data's persistent store failing to load. Thanks to @bfahey :)
- Fixed incorrect tracking of pushOpen for push notifications with Wake App enabled. Tracking now happens only when users tap to open the app.
6.6.0-beta2
- This release fixes beta1 release which was released from the wrong branch.
6.5.7
Fixed
- Fixed deeplink re-routing issue where delegate would only return
false
value. Thanks to @scottasoutherland :)
6.5.6
6.5.5
Added
This version of Iterable's iOS SDK provides more insight into JWT refresh failures, so you can take appropriate action in your application code.
-
When a JWT refresh fails (for any of various reasons), the SDK calls
onAuthFailure(_ authFailure: AuthFailure)
on theIterableAuthDelegate
instance you provided to the SDK at initialization. TheAuthFailure
object provides more information about the failure. This method replacesonTokenRegistrationFailed(_ reason: String?)
. -
To set a retry policy for JWT refreshes, you can set the
retryPolicy
property onIterableConfig
to aRetryPolicy
object. Use this object to specify:- The maximum number of consecutive JWT-related request failures the SDK should allow before giving up, Defaults to 10.
- The interval between each JWT refresh attempt. Defaults to 6 seconds.
- A backoff strategy: linear or exponential. Defaults to linear.
-
You manually pause JWT refresh attempts by calling
IterableAPI.pauseAuthRetries(true)
Changed
onAuthFailure(_ authFailure: AuthFailure)
replacesonTokenRegistrationFailed(_ reason: String?)
. If you've implementedonTokenRegistrationFailed
, you'll need to update your application code.
6.5.4
6.5.3
6.5.2
Fixed
- The Privacy Manifest has been relocated to the resources folder within the SDK. This adjustment facilitates the inclusion of the SDK's privacy manifest in the generation process.
- Resolved a bug where a scheduled authentication token refresh would occur even if the user had logged out in the interim.
Changed
- Improved the Out Of The Box (OOTB) Embedded CardView image content view by setting it to aspect fill. This change ensures a consistent appearance across web, iOS, and Android platforms.