Releases: Appboy/appboy-ios-sdk
Releases · Appboy/appboy-ios-sdk
2.21.0
- Drops support for iOS 6. Appboy SDK requires iOS 7 as the minimum supported iOS version.
- Updates the podspec to fetch the latest version of SDWebImage.
- Replaced deprecated NSURLConnection with NSURLSession.
- Adds support for deep link with Unicode. When url string has non-English character, the SDK will encode the url string to create a valid deep link NSURL.
- Updates the SDK to always call
canOpenURL:
before opening a deep link. After this change, the SDK will only direct deep links whose schemes are whitelisted. - Updates push registration to immediately send up the push token.
- Fixed the bug that the slideup in-app message's background was still transparent even with 100% opacity.
2.20.1
- Implements an optimization in push handling to not prefetch the News Feed when a push arrives and the app is in the background.
- Fixes an issue where in certain conditions NSUserDefault blocking would cause custom events logged in the main thread to result in UI freezing.
2.20.0
- Removed the delegate method
onInAppMessageHTMLButtonClicked:buttonID:
fromABKInAppMessageControllerDelegate
protocol. - Adds Carthage support.
- Fixes a multithreading issue where logging custom events from different threads would sporadically cause errors.
- Now the
onInAppMessageHTMLButtonClicked:clickedURL:buttonID:
delegate method will be called every time a URL is clicked. The method used to be only called when there was a button ID in the URL link. - Fixes the issue where a close button's color on modal and full in-app messages didn't respect the opacity value.
- Updates the feedback element to reject messages that contain only whitespace.
- Updates remote push handling to call the completion handler passed in every time (a code path previously existed that would return without calling it).
- Fixes an issue where failure to download HTML in-app message assets mid-download resulted in display without assets.
2.19.3
- Adds a new feature allowing manual control of deep link handling in push notications. To use this, add a
ABKPushURIDelegate
value for theABKPushURIDelegate
key in theappboyOptions
dictionary ofstartWithApiKey:inApplication:inApplication:withAppboyOptions:
. Also updates theABKPushURIDelegate
integration to be initialized through that integration point. - Fixes an issue where duplicate data could be recorded when a force quit or crash occurs after a network request completed successfully, but before any other activity (such as leaving the app, putting it to sleep, updating an attribute or firing some other event or purchase) occurred.
- Adds guarding against a possible crash caused by a user's offline state being corrupted and not including an active session when a network request occurred.
2.19.2
- Fixes a bug where users who went from being eligible for triggered messages to not being eligible for any triggered messages didn't see their local triggers configuration get updated. This has already been fixed with a server-side update for affected versions; this update fixes the issue client-side.
- Updates headers to be compatible with Swift 2.2.
- Adds warning when messaging doesn't succeed because SDWebImage is not integrated.
2.19.1
- Analytics are now logged for in-app messages and in-app message buttons with 'ABKInAppMessageNoneClickAction' click actions.
ABKInAppMessageNoneClickAction
is set when an in-app message on the dashboard has a click action that only closes the in-app message; formerly this did not count as a click. - Fixes the benign issue that caused the log message
*** -[NSKeyedUnarchiver initForReadingWithData:]: data is NULL
. - Fixes an issue where NULL campaign IDs in push messages (e.g. from a REST API push message without a specified campaign id) resulted in push-clicked triggers for triggered in-app messages not firing.
- Fixes an issue where calling
changeUser
between identified users caused the read/unread state of the news feed cards of the old user to be set as the new user's read/unread states. - Fixes an issue where a user attribute value that had been set to multiple different values created a state that would not let you set the original value again. The bug was introduced in version 2.17.1.
- Adds sample code for a universal link in Stopwatch.
2.19.0
- Adds support for action-based, locally triggered in-app messages. In-app messages are now sent to the device at session start with associated trigger events. The SDK will display in-app messages in near real-time when the trigger event associated with a message occurs. Trigger events can be app opens, push opens, purchases, and custom events.
- Deprecates the old system of requesting in-app message display, now collectively known as 'original' in-app messaging, where messages were limited to displaying at app start.