Skip to content

Releases: Appboy/appboy-ios-sdk

3.0.1

16 Aug 04:01
Compare
Choose a tag to compare
Fixed:
  • Fixes an issue where calling incrementCustomUserAttribute: on ABKUser could cause a crash.

3.0.0

04 Aug 18:29
Compare
Choose a tag to compare
Breaking:
  • Adds a major performance upgrade that reduces CPU usage, memory footprint, and network traffic.
  • Removes the deprecated foursquareAccessToken property from ABKUser. To associate a Foursquare access token with a user profile, use setCustomAttributeWithKey:andStringValue: instead.
  • Note: Appboy iOS SDK version 3.0.0 will only support downgrading to iOS SDK version 2.31.0. Downgrading to versions prior to 2.31.0 may result in app crashes.

2.31.0

27 Jul 18:18
Compare
Choose a tag to compare
Breaking:
  • Open sources the Feedback view controllers and moves them into a new subspec "Feedback".
    • The "Feedback" subspec has the Appboy Feedback UI and the Core SDK. It will not include in-app messages or News Feed UI.
    • Removes the popover context for Feedback due to the deprecation of UIPopoverViewController in iOS.
    • Renames the ABKFeedbackViewControllerModalContext and ABKFeedbackViewControllerNavigationContext class to ABKModalFeedbackViewController and ABKNavigationFeedbackViewController.
    • The open-sourced Feedback view controllers offer backward compatible NUI support, although we recommend using categories or subclassing the Feedback view controllers for customization as NUI library isn't actively maintained any more. See here for customization details.
    • See our Feedback Sample app for sample implementations and customizations.
Added:
  • Adds user aliasing capability. Aliases can be used in the API and dashboard to identify users in addition to their ID. See the addAlias:withLabel: method on ABKUser for more information.
Changed:
  • Updates the AppboyKit.h to include all the public header files in the SDK.

2.30.0

16 Jun 18:47
Compare
Choose a tag to compare
Breaking:
  • Open sources the ABKModalWebViewController class, which is used to display the web URLs from push or in-app message clicks.
    • Drops NUI customization support for the navigation bar and navigation bar button item on ABKModalWebViewController. To customize the UI, create an ABKModalWebViewController category and override the corresponding method(s) exposed.
  • Open sources the ABKNoConnectionLocalization class, which provides Appboy's default localized string for "No Connection" error.
    • You can customize the localization by adding "Appboy.no-connection.message" as the key in your Localizable.strings files.
  • Removes the Appboy.bundle from the Core subspec of the SDK.
    • If you use the Core subspec, the in-app messages will not display, and trying to display Appboy's News Feed and Feedback UI will lead to unpredictable behavior.

2.29.1

11 May 18:54
Compare
Choose a tag to compare
Added:
  • Adds a new property buttonTextFont to ABKInAppMessageButton. It allows clients to set customized fonts on in-app message buttons before the in-app message is displayed.
Fixed:
  • Makes class ABKInAppMessageWindowController.h public.
  • Fixes an issue where device information was not flushed for a new user when server requests were queued for two or more users.
Changed:
  • Removes the warnings in ABKSDWebImageProxy.

2.29.0

07 Apr 17:49
Compare
Choose a tag to compare
Breaking:
  • Drops support for iOS 7.
  • Removes the shouldOpenURIExternally field from ABKInAppMessage.
Added:
  • Adds the property openUrlInWebView to ABKInAppMessage, ABKInAppMessageButton and ABKCard. This property determines if the URL associated with the object will be opened in a UIWebView.
  • Adds a Javascript interface to HTML in-app messages with ability to log custom events, log purchases, set user attributes, navigate users, and close the message.
  • Adds an abDeepLink query field to HTML in-app messages, which defaults to false. To prevent the SDK from opening deep links in a UIWebView, specify abDeepLink=true in your link (e.g., https://www.appboy.com?abDeepLink=true).
  • Adds the ABKURLDelegate protocol for customizing URL handling across channels. Set the ABKURLDelegate by passing a delegate object to the ABKURLDelegateKey in the appboyOptions of startWithApiKey:inApplication:withAppboyOptions:. See our Stopwatch sample application for a Universal Link implementation sample.
  • Adds the following utility methods to ABKPushUtils for detecting if a push notification was sent by Appboy for internal feature purposes:
    • + (BOOL)isAppboyInternalUserNotification:(UNNotificationResponse *)response;
    • + (BOOL)isAppboyInternalRemoteNotification:(NSDictionary *)userInfo;
    • + (BOOL)isUninstallTrackingUserNotification:(UNNotificationResponse *)response;
    • + (BOOL)isGeofencesSyncUserNotification:(UNNotificationResponse *)response;
    • + (BOOL)isGeofencesSyncRemoteNotification:(NSDictionary *)userInfo;
    • These methods can be used to ensure that your app does not take any undesired or unnecessary actions upon receiving Appboy's internal content-available notifications (e.g., pinging your server for content).
Changed:
  • Deprecates ABKPushURIDelegate. If you were previously using ABKPushURIDelegate, use ABKURLDelegate instead.
  • Deprecates userNotificationWasSentFromAppboy: and pushNotificationWasSentFromAppboy: on Appboy. Use isAppboyUserNotification: and isAppboyRemoteNotification: on ABKPushUtils instead.
  • Deprecates shouldFetchTestTriggersFlagContainedInPayload: on ABKPushUtils.

2.28.0

27 Mar 21:39
Compare
Choose a tag to compare
Breaking:
  • Removes support for watchOS 1, including Appboy WatchKit SDK and all public APIs for watchOS in Appboy iOS SDK.
Added:
  • Added ABKSDWebImageProxy to access the SDWebImage framework. This will prevent the Core subspec of the SDK from calling any SDWebImage methods directly.

2.27.0

13 Mar 20:01
Compare
Choose a tag to compare
Breaking:
  • Removes the following deprecated items: the bio field of ABKUser, the setIsSubscribedToEmails: method of ABKUser, and the getResourceEndpoint: method of the ABKAppboyEndpointDelegate protocol.
Added:
  • Added support for registering geofences and messaging on geofence events. Please reach out to success@appboy.com for more information about this feature.
  • Adds Appboy default push categories which can be fetched from ABKPushUtils.
    • To use the Appboy default push categories, you need to manually add the Appboy categories when you register for push. You can get the Appboy categories from [ABKPushUtils getAppboyUNNotificationCategorySet] or [ABKPushUtils getAppboyUIUserNotificationCategorySet].
    • In this version, we add four sets of push action buttons: accept/decline, yes/no, confirm/cancel, more. These will be available as button sets on the dashboard when creating an iOS push campaign.
    • All Appboy push action buttons support localization.
  • Adds support for web link and deep link handling of push action buttons.
Fixed:
  • Fixes the issue where the combination of the Core subspec of the SDK and a non-supported version of SDWebImage framework can cause apps to crash.
Changed:
  • HTML in-app messages now log body click analytics on all links that are not appboy://customEvent and do not include the abButtonId query field. Previously, no body click analytics were logged.
Removed:
  • Removes deprecated method - (NSString *)getResourceEndpoint:(NSString *)appboyResourceEndpoint from ABKAppboyEndpointDelegate.
  • Removes deprecated property bio and deprecated method - (BOOL)setIsSubscribedToEmails:(BOOL)subscribed from ABKUser.

2.26.0

24 Feb 23:24
Compare
Choose a tag to compare
Breaking:
  • Adds support for SDWebImage version 4.0.0 with GIF support. SDWebImage version 3.x will not be supported from this version on. Please make sure you are using the correct version of SDWebImage.framework. Note: SDWebImage 4.0.0 relies on FLAnimatedImage - users integrating in ways besides CocoaPods should ensure they link the FLAnimatedImage framework if they want GIF support.
  • Removes the url property from subclasses of ABKCard. This property has been renamed to urlString and moved onto the ABKCard superclass.
Added:
  • Adds Cocoapods subspecs "Core" and "UI".
    • The "UI" subspsec has the full feature set of the current SDK. This is the default subspec when no subspec is specified in the Podfile.
    • The "Core" subspec removes the SDWebImage framework dependency. This is for apps who do not use any Appboy UI that leverages images (News Feed, in-app messages). If you use the "Core" subspec, in-app messages with images will not display, and the News Feed will render with plain white images.
  • Makes ABKThemableFeedNavigationBar.h and ABKNavigationBar.h public.
    • Addresses #68
  • Adds an unsafeInstance method that returns a nonoptional Appboy instance. If used before calling startWithApiKey: an exception will be thrown.
    • Addresses #45.
  • Adds ABKIDFADelegate protocol that can be used to create a delegate to pass Appboy the IDFA in startWithApiKey: in the appboyOptions dictionary under the ABKIDFADelegateKey key. Alternative to existinng ABKIdentifierForAdvertisingProvider compile flag solution.
Changed:
  • Disables the -webkit-touch-callout property on HTML in-app messages. Long presses and 3D Touch on links will no longer display pop-ups with additional link information.

2.26.0-beta

03 Feb 21:50
Compare
Choose a tag to compare
2.26.0-beta Pre-release
Pre-release
Breaking:
  • Adds support for SDWebImage version 4.0.0 with GIF support. SDWebImage version 3.x will not be supported from this version on.
  • Note: please make sure you are using the correct version of SDWebImage.framework.
  • Note: please make sure you also link FLAnimatedImage.framework.