Skip to content

Releases: urbanairship/ios-library

20.0.2

26 Nov 22:58
775fecb

Choose a tag to compare

Patch release that fixes an issue with delayed video playback in Scenes when initially loading or paging and addresses a direct open attribution race condition which could cause direct open events to be missed in some edge cases.

Changes

  • Fixed an issue where the video ready callback was not assigned before observers were set up, causing the pager to miss the ready signal and advance before they loaded completely.
  • Fixed a potential race condition that could result in missed direct open attributions by ensuring notification response handling completes synchronously before the app becomes active.

19.11.4

25 Nov 02:51
782f4bf

Choose a tag to compare

Patch release that fixes an issue with delayed video playback in Scenes when initially loading or paging. Applications that use videos in Scenes must update to resolve the playback delays.

Changes

  • Fixed an issue where the video ready callback was not assigned before observers were set up, causing the pager to miss the ready signal and advance before the loaded completely.

19.11.3

19 Nov 01:31
80201c8

Choose a tag to compare

Patch release that further addresses the direct open attribution race condition introduced in 19.0.0. While 19.11.0 attempted to fix this issue by introducing a synchronous completion handler method, the implementation still executed work asynchronously, which could cause direct open events to be missed in some edge cases.

Changes

  • Fixed a potential race condition that could result in missed direct open attributions by ensuring notification response handling completes synchronously before the app becomes active.

20.0.1

14 Nov 16:59
2646384

Choose a tag to compare

Patch release that fixes YouTube video playback in In-App Automation and Scenes. Applications that use YouTube videos in Scenes and non-html In-App Automations (IAA) must update to resolve playback errors.

Changes

  • Fixed looping behavior in video views within Scenes.
  • Fixed Message Center icon display when icons are enabled.
  • Fixed pager indicator accessibility to prevent duplicate VoiceOver announcements.
  • Added dismiss action to banner in-app messages for improved VoiceOver accessibility.
  • Fixed YouTube video embedding to comply with YouTube API Client identification requirements.

19.11.2

14 Nov 19:27
a2823de

Choose a tag to compare

Patch release that fixes YouTube video playback in In-App Automation and Scenes. Applications that use YouTube videos in Scenes and non-html In-App Automations (IAA) must update to resolve playback errors.

Changes

  • Fixed YouTube video embedding to comply with YouTube API Client identification requirements.

20.0.0

09 Oct 22:18
ec72ac9

Choose a tag to compare

Major SDK release with several breaking changes. See the Migration Guide for more info.

Changes

  • Xcode 26+ is now required.
  • Updated minimum deployment target to iOS 16+.
  • Refactored Message Center and Preference Center UI to provide clearer separation between navigation and content views. See the migration guide for API changes.
  • Introduced modern, block-based and async APIs as alternatives to common delegate protocols (PushNotificationDelegate, DeepLinkDelegate, etc.). The delegate pattern is still supported but will be deprecated in a future release.
  • Refactored core Airship components to use protocols instead of concrete classes, improving testability and modularity. See the migration guide for protocol renames and class-to-protocol conversions.
  • Added support for split view in the Message Center, improving the layout on larger devices.
  • Updated the Preference Center with a refreshed design and fixed UI issues on tvOS and visionOS.
  • Fixed Package.swift to remove macOS as a supported platform.
  • CustomViews within a Scene can now programmatically control their parent Scene, enabling more dynamic and interactive custom content.
  • Accessibility updates for Scenes.
  • New AirshipDebug package that exposes insights and debugging capabilities into the Airship SDK for development builds, providing enhanced visibility into SDK behavior and performance.
  • Removed automatic collection of connection_type and carrier device properties

19.11.1

07 Oct 22:24
2f1be0e

Choose a tag to compare

Patch release addressing the longstanding Swift concurrency crash (GH-434) and improving the internal rate-limiting system for better stability and efficiency.

Changes

  • Refactored WorkRateLimiter to improve efficiency and reliability, reduce memory overhead, and eliminate unnecessary temporary allocations.
  • Added stronger safeguards to WorkRateLimiter prevent rare edge-case crashes in rate-limiting logic.

19.11.0

01 Oct 01:57
3880a1d

Choose a tag to compare

This is an important update for apps using manual push notification integration (automaticSetup = false). We are addressing a lifecycle issue caused by Apple's async notification delegate being called on a background thread, unlike the main-thread-guaranteed completionHandler version. To align with the correct lifecycle, we are deprecating our async handler and introducing a new completionHandler method. Using the async version can cause
direct open counts to be lower than expected.

Changes

  • Added a new synchronous AppIntegration.userNotificationCenter(_:didReceive:withCompletionHandler:) method. Apps must use this and the corresponding synchronous delegate method to ensure notification responses are handled before the app becomes active.
  • The async AppIntegration.userNotificationCenter(_:didReceive:) method is now deprecated.
  • Landing pages no longer display for push notifications received when the app is in the foreground.

19.10.0

22 Sep 17:47
f93ef24

Choose a tag to compare

Minor release that adds a new flag to work around the critical crash (GH-434) affecting Swift 5 apps on Xcode 16.1+. The problematic feature is now disabled by default.

Changes

  • Added isDynamicBackgroundWaitTimeEnabled flag. This defaults to false to avoid the crash. It is strongly recommended to keep this false for Swift 5 apps. Swift 6 apps can safely set this to true to restore previous behaviors.

19.9.2

16 Sep 17:59

Choose a tag to compare

Patch release that resolves a crash eminating from the Thomas video player, fixes a bug that causes Scenes to sometimes display after being stopped, and fixes some UI bugs exposed by iOS 26.

Changes

  • Fixed refreshing out of date In-App Automations and Scenes before displaying.
  • Fixed KVO in ThomasVideoPlayer to use modern patterns and properly release observers.
  • Fixed Message Center title bar theming in iOS 26.
  • Improved tab bar UI in iOS 26.