Changelog

SDK Changelog from the new version of SDK 3.0.0

3.6.0 (2025-06-26)

  • Enhanced card UI with customizable borders and an optional pulse animation on the first item: card ui customizations
  • Added option to enable a pulse animation on the first bubble : bubble animation
  • Fixed font weight and style mapping from JOIN Studio

3.5.0 (2025-06-09)

  • Added the possibility of using an api-key to secure data received by the SDK : Init with Api Key
  • Added multi-language compatibility with JOIN Studio

3.4.4 (2025-05-03)

  • Fixed a standalone player that blocked user interaction in the application after it had disappeared.

3.4.3 (2025-05-23)

  • Fixed several video sounds playing at the same time when returning to the app with the player already open

3.4.2 (2025-05-20)

  • Fixed of the video sound that starts when the application is relaunched
  • Fixed video update after editing from JOIN studio
  • Fixed player crash in standalone mode that could occur on some devices on iOS 18

3.4.1 (2025-03-26)

  • Added reply interaction in stories
  • Removed dSYM files for the simulator to reduce SDK size

3.4.0 (2025-02-28)

  • Advanced Analytics feature
    • Added setTrackingUserId function to use user ID in analytics
    • Added sendConversion function
    • Added setSegmentationKey function
    • Added new listener joinStoriesAnalyticsCallback(event: JOINTrackingEvent, payload: [String: Any?])
    • Documentation
  • Added JOINStories.initSDK() which replaces the deprecated JOINStoriesConfiguration.setValues(:teamId) method to initialize the SDK.

3.3.0 (2025-02-06)

  • Added refresh method to fetch each widget manually : Refresh manually
  • Fixed multipoll result after adding a user response
  • Fixed display of correct video after stories reordered

3.2.0 (2025-01-27)

  • Added reorderedReadStories parameter to dynamically change the order of stories already viewed : Reorder stories already viewed
  • Added ctaUrl data in analytics callback on StoryClickOnCallToAction event
  • Reduced to 6px the space between the bubble and the label
  • Improved grid card widget integration for SwiftUI application
  • Fixed data request sent for quizzes interaction
  • Fixed interaction visibility when story page transition

3.1.11 (2024-12-13)

  • Fixed a crash in AVCustomPlayer.setSelectedVideo(playerItem:) caused by thread management issues
  • Fixed an issue where the onPlayerDismissed listener was not triggered when clicking on the last chapter
  • Fixed a bug preventing Quizzes/Polls responses from being sent due to incorrect data encoding

3.1.10 (2024-10-14)

  • Fixed a threading issue between the UI update and video caching that could cause some users to crash

3.1.9 (2024-10-02)

  • Make analytics event type Equatable so that types can be compared with each other

3.1.8 (2024-09-30)

  • Improved video cache management to avoid random crashes
  • Added dSYM files to SDK build to simplify debugging

3.1.7 (2024-09-18)

  • Fixed a random crash related to a concurrent request issue for video cache management

3.1.6 (2024-09-02)

  • Downgraded the SDK build version from Swift 6 to Swift 5

3.1.5 (2024-09-02)

  • Converted the eventType parameter to Enum and add the eventTypeName parameter to callbacks for analytics use
  • Added the possibility of adding nullable delegate in setDelegate function

3.1.4 (2024-07-11)

  • Fixed interactions (polls & quizzes) size based on screen size; some screen sizes could cause non-proportional scaling of the interactions.
  • Disabled multiple clicks on the widget to prevent issues caused by users attempting to spam click.

3.1.3 (2024-05-28)

  • Fixed crash when there was NaN and infinite value for the poll percentage
  • Fixed the bubble loader to stop when the reader is displayed
  • Fixed eventOwner parameter for better tracking of analytics by application
  • Improved interactions UI
  • Improved experience in the player reducing ready-to-play timer

3.1.2 (2024-04-19)

  • Fixed onPlayerFetchSuccess listener not being triggered at the right time
  • Fixed storyClickOnCallToAction listener which was also triggered by other interactions

3.1.1 (2024-04-18)

  • Added Polls feature; you can add polls from JOIN Studio and see on native stories
  • Fixed storyClicked analytics data which did not correctly return the id of the story clicked on
  • Improved analytics integration

3.1.0 (2024-04-09)

  • Added Quizzes feature; you can add quizzes from JOIN Studio and see on native stories
  • Added JOINStories.dismissPlayer() function to dismiss the player manually
  • Added itemCount parameter in onTriggerFetchSuccess delegate to find out the number of stories in a widget
  • Improved loader when in low network

3.0.4 (2024-03-08)

  • Fixed video cache when the story is updated
  • Fixed crash when alias is wrong
  • Fixed crash when parent view controller was nil
  • Improved transition from one story to another without pausing the previous story

3.0.3 (2024-03-06)

  • Added contentInsets parameter to add padding in widget
  • Improved label size management
  • Improved cover/icon animation
  • Improved standalone player for iPad

3.0.2 (2024-02-23)

  • Improved stepper animation that wasn't smooth

3.0.1 (2024-02-22)

  • Improved animation and landscape mode for iPad

3.0.0 (2024-02-22)

  • Web Stories player replaced by a native Stories player with AVPlayer library
  • Improved interaction and gestures:
    • More responsive and fluid gestures.
    • Native interactions for a better user experience.
    • Takes into account user display preferences and improves accessibility constraints.
  • Simplified widget integration:
    • Ease of use: Widgets can be added with less code and complexity.
  • Added analytics listeners for story playback:
    • Advanced tracking: Addition of new listeners to track user navigation in stories.