Bolt Release Notes - iOS App
Table of Contents
4.3 - Released 2024-12-11
4.2 - Released 2024-10-21
4.1.8 - Released 2024-08-09
4.1.3 - Released 2024-06-27
4.0 - Released 2024-05-08
3.23 - Released 2024-04-04
3.22 - Released 2024-03-27
3.21 - Released 2024-03-05
3.20 - Released 2024-01-25
3.19 - Released 2023-11-23
3.18 - Released 2023-11-14
3.17 - Released 2023-09-18
3.16 - Download error messaging (Released 2023-06-30)
3.15 - Performance improvements (2023-05-30)
3.14 - State restoration (Released 2023-04-18)
3.13.5 - iOS API updates (Released 2023-01-26)
3.12.6 - Bug fixes and performance improvements (Released 2023-01-26)
3.12 - Scrubber section picker, Airship Preference Centre and content pre-fetching (Released 2023-01-17)
3.11 - Right to left support and rotation lock (Released 2022-11-21)
3.10 - Subscription levels (beta) and Rotation (Released 2022-09-23)
3.9 - Preview mode and Edition Auto Archiving (Released 2022-07-14)
3.8 - Download, PDF and DFP improvements (Released 2022-05-20)
3.7 - Metered Paywall exclusions (Released 2022-04-07)
3.6 - Hard paywall PKCE auth (Released 2022-04-01)
3.5 - Collection Sets, Voucher codes (Released 2022-03-22)
3.4 - Hidden tabs, Dark mode (Released 2022-01-18)
3.3 - Double page spreads (Released 2021-11-15)
3.2 - Enhanced PDF (Released 2021-09-27)
3.1 - Metered paywall and PDF quality (Released 2021-08-26)
3.0 - Storefronts and Editions (Released 2021-07-30)
2.35 - Audio player update (Released 2021-07-15)
2.34 - Metered Paywall (Released 2021-05-14)
2.33 - ATT (Released 2021-04-15)
2.32 - Bug fixes and optimisations
2.31 - PKCE Receipt Postback
2.30 - Analytics
2.29 - Bug fixes & performance improvements
2.28 - Analytics for purchasing
2.27 - Analytics opt-out
2.26 - Web-based sign in
2.25 - SDK updates
2.24 - Dynamic Timeline Theming
2.23 - Audio Player
2.22 - SDKs
2.21 - Deeplinking Behaviour
2.20 - Background Downloading
2.19 - Firebase Deeplinking
2.18 - Subscriptions
2.17 - Provisional Push
2.16 - Appsflyer
2.13 - Audio player improvements
2.12 - Timelines
2.10 - Native audio player
2.9 - Image viewer and background push
2.8 - State Restoration
2.7 - Deep-linking
2.6 - Help screens, customisation and SDKs
2.5 - Customisation and receipt post back
2.4 - Timeline groups
2.3 - Timeline reordering
2.2 - In-App Purchases
2.1 - Multiple Timelines
1.3 - Offline Support
What's included in the latest version of Pugpig Bolt for iOS. For more detailed breakdowns of major changes check out our update posts.
In order to upgrade to a new version, an app release is required.
4.3 - Released 2024-12-11
Major changes
- Added support for the Viafoura commenting SDK.
Additional changes
- Added a new analytics event
BoltLaunchedWithURL
that tracks when the app is opened via an external URL. - Added a new analytics event
BoltTextResize
that tracks when a user interacts with the text resize slider in settings.
4.2 - Released 2024-10-21
Major changes
- Articles will now remember a user's progress. If they leave and return to the article at a later date they will be at the same position.
- Added support for a second trailing toolbar icon.
- You can now display a logo or title on any tab type, or you can show nothing. Previously content tabs would show your logo, while search, saved and settings tabs would show the tab title.
Additional changes
- Added 0.75x and 1.25x speeds to the audio player and new matching analytics events.
- The content url for Google Ad Manager requests is now more flexible, and can be set to the canonical URL for a piece of content. This should result in higher yields for these ads, which we'll be monitoring post-launch. Read more about this here.
4.1.8 - Released 2024-08-09
Major changes
N/A
Additional changes
- Optimised background downloading for editions including better download metrics and logging.
- OneSignal in-app messages can now be triggered based on viewing a certain screen.
- Applied voucher codes can now be cleared from the hidden menu.
- Support for UA / GA3 has been removed.
- SDK updates -
- Firebase 10.24.0
- Firebase 10.24.0
4.1.3 - Released 2024-06-27
This version fixes a widespread issue causing timelines in the app to fail to load, or to load incorrectly with missing assets.
Major changes
- Added support for a push preference centre for customers using OneSignal.
- Added a new user setting for toggling between double and single page view when in landscape.
- Added full page interstitial advert capabilities with Google Ad Manager.
- You can now opt out of any analytics events that you don't wish to receive.
Additional changes
- Added support for a new type of webview tab.
- Added optional alternative method of tracking for Chartbeat analytics, using URL rather than view id.
- Added the option to enable SKAN postback in app config, required for some third party advertising attribution tracking.
4.0 - Released 2024-05-08
Major changes
- Targets iOS 17, this is required for app updates or submissions from 2024-04-29
- Adds support for Privacy Manifests for third-party SDKs, this is required for app updates or submissions from 2024-05-01
Additional changes
- Extended property value limit to 500 characters for customers using Google Analytics 360.
- Fixed an issue where analytics could send with an ‘unknown’ value when a user opens the app after a background download has occurred.
- SDK updates -
- Firebase 10.23.0
- Airship 18.0.1
- OneSignal 5.1.3
- Pushly 1.3.5
- Mixpanel 4.2.3
- Facebook 17.0.0
- DotMetrics 1.7.7
- Chartbeat 1.5.2
- Comscore 6.12.2
- AppsFlyer 6.14.1
- Lottie 4.1.1
- SegmentIO 1.5.8
- Permutive 2.1.0
- AEP 5.0.0
- Braze 8.2.1
3.23 - Released 2024-04-04
Major changes
- Added the ability to the OneTrust consent modal on startup and require user interaction with it
3.22 - Released 2024-03-27
Major changes
- We now support a full end-to-end redirect service. You'll no longer need to handle any of the set up on your side, we'll manage it all.
- Added support for Google's UMP consent provider.
- CMP SDKs now pass the user's consent status to content and timeline webviews, re-enabling full Google Ad support in GDPR regions
Additional changes
- Added the ability to override the screen_view and screen_class GA4-defined custom dimensions to the screen view event.
3.21 - Released 2024-03-05
Major changes
- Added a new scroll depth analytics event to track how much of an article your users are reading.
- Added the option to hide native banner ads for specific users.
- Improved back button behaviour for Enhanced PDF editions. It will now take the user back to their previous view, rather than always returning to the table of contents or Storefront.
- Expanded our content visibility (private/marketing) feature to apply to individual pieces of content as well as whole collections.
- Expanded our issue-based auth implementation to allow support for individual pieces of content as well as whole collections.
Additional changes
- Alignment of items on the timeline picker can now be leading or centred. Behaviour on larger screens or with fewer timelines is improved
- Metered paywall banner can now be hidden after a few seconds
- Save and share icons can now be hidden from the toolbar when inside an article
- Added an optional blur for content behind the paywall
- Added new analytics dimensions for tab group and filter group
- Added a new analytics dimension to see whether a user has any single issue purchases
- Added a new analytics event for PKCE auth token renewal
- User-scoped parameters now also send as event-scoped (GA4)
- Removed any tracking for screen events while the app is in the background
- Improved logging for auth state
- Updated Lottie SDK to 4.4.0
- Updated OneTrust SDK to 202401.1.0
- Updated OneTrust implementation to support per-build versions, so you do not need to use the latest version we have updated to
3.20 - Released 2024-01-25
Major changes
- The Google Mobile Ads inspector is now accessible from the hidden menu on the settings page.
- Added the ability to set an external URL parameter for dark mode, so your website can know if users coming from the app are in dark mode.
- Improved targeting for banner ads on the timeline. Ads can now be targeted by timeline taxonomies.
Additional changes
- Article banner ads will no longer show on pages visible via the metered paywall.
- Audio/Video total and elapsed duration analytics dimensions are now numerical, rather than strings
- Fixed an issue where signing in via app onboarding screens would send you back to the first onboarding screen.
3.19 - Released 2023-11-23
Major changes
- All supported third party SDKs with updates available have been updated to the latest available versions:
- Firebase - 10.17.0
- Airship - 17.5.1
- OneSignal - 5.0.2
- Mixpanel - 4.1.4
- Comscore - 6.11.0
- AppsFlyer - 6.12.2
- Facebook - 16.2.1
- Google Mobile Ads - 10.12.0
- Added new audio events for seek forward/backward (15 seconds) buttons and improved consistency of skip backward button.
- Added video tracking support to Dotmetrics.
- Logs now show if a download happens in foreground or background.
3.18 - Released 2023-11-14
Major changes
- Added the option to display a background on sticky banner ads (the ones stuck to the tab bar at the bottom of articles or timelines) following Google recommendations.
- Query strings to external domains now applies to iframes within the app.
Additional changes
- Added new bridge to identify content paywall state.
- Currently used to not show ads if the paywall is present.
3.17 - Released 2023-09-18
Major changes
- Renaming and tidying all ‘param’ parameter analytics labels to be event-specific so they’re more useful
- Easier bug reporting with the /c/logs/send option, which also allows to set an email default
- Can now share app logs with VoiceOver
- We now use persistent device cookie storage for web auth, iOS will show a system dialog warning the user
Additional changes
- App logs now include whether or not you are in admin mode
- Native bottom sticky banner now supports multiple sizes
- Previously only 320x50, now 320x50 or 300x50
- External links to alias domains will open externally if not linking to content
- Added support for a search modal deeplink, /c/search
- Optimised edition behaviour so that when editions are opened, unless actually updating the content, they no longer appear to redownload
- Updated OneTrust SDK to latest version - 202309.1.0
- Various minor bug fixes and improvements
- Removed toast messages
- Removed support for Matomo
- Dropped iOS 14 support
3.16 - Download error messaging (Released 2023-06-30)
- The storefront will now surface error messages for failed edition downloads
- Local storage data is now preserved across device backups, meaning article progress will persist if the app is installed on a new iOS device.
- Account registration no longer requires the app to also have in-app purchases
- The content URL in Google Ads request via the SDK will now be the app's bundle id
- Added support for Airship Message Center
- PugpigSubscriberStatus, PugpigNotificationsAllowedStatus and UserID now track as user level, as well as event level, parameters
3.15 - Performance improvements (2023-05-30)
- Substantial improvements to downloading, editions should now download faster
- Improved event tracking for content downloads
- Additional specified domains can now have access to the bridge, improving embed support
- Support for triggering background downloads of content
- Much better handling of links to content on alias domains that isn't yet in the app
3.14 - State restoration (Released 2023-04-18)
- Users will now be returned to where they were in an edition when they return to it, for editions without ToCs
- A users state when they backgrounded the app will now be remembered when they foreground it again
- Improved support for external link entitlement on iOS 16 and above
- Dynamic timelines can now be featured in the timeline picker
- Improvements to offline content availability and reliability
3.13.5 - iOS API updates (Released 2023-01-26)
- Targets iOS 16 (along with necessary SDK updates)
- Minimum supported iOS version is now iOS 14
- Adds support for external link entitlement on iOS 16 and above
- Removed old-style native subscription linking, this is now accomplished with web-based auth
3.12.6 - Bug fixes and performance improvements (Released 2023-01-26)
- Fixed bugs relating to the edition scrubber in dark mode
- Added a new analytics event for the dark mode toggle in settings
3.12 - Scrubber section picker, Airship Preference Centre and content pre-fetching (Released 2023-01-17)
- The edition scrubber can now optionally display an interactive list of sections, allowing users to more quickly navigate to them
- Added support for Airship Preference Center
- Change the parental gate to only display once per session, once successfully answered
- Added new tracking capabilities for push notification opt-in
- Tweaked pre-fetch behaviour to more reliably have content available when offline
- Fixed bugs pertaining to interrupted purchases, such as when having to verify payment information or get parental approval
- Added rich push support for OneSignal
- Updated SDKs:
- Facebook 15.1.0
3.11 - Right to left support and rotation lock (Released 2022-11-21)
- Added full Right to Left support for all app features
- Added the ability to optionally lock the app to portrait
- Audio title in action menu will now wrap to 2 lines
- Updated SDKs:
- Airship 16.9.3
- AppsFlyer 6.8.1
- Branch 1.43.1
- Chartbeat 1.5.0
- Facebook 14.1.0
- Firebase 9.6.0
- Google Mobile Ads 9.11.0
- GTM 7.4.2
- Lottie 3.4.3
- Omniture 4.21.2
- OneSignal 3.11.2
- Nielsen 8.2.0
- Permutive 1.5.0
- Zendesk 5.5.0
3.10 - Subscription levels (beta) and Rotation (Released 2022-09-23)
- Added the ability to configure subscription levels within your app that allows a user to upgrade or downgrade to receive different features (Beta)
- Added rotation between portrait and landscape on mobile devices
- Added the ability to print directly from the share menu
- Re-enabled background downloading
- Fixed an issue causing the app to crash when zooming in on PDF editions
- Added support for Chartbeat 1.4.9
- Updated Airship SDK to 16.9.2
- Updated Firebase SDK to 9.4.1
- Updated Lottie to 3.4.1
3.9 - Preview mode and Edition Auto Archiving (Released 2022-07-14)
- Added the ability to automatically delete editions that haven’t been interacted with in a given amount of time
- Added the ability to preview draft content within a live app, using a pugpig provided code
- Added the ability to display a message from your auth response on the app paywall that differs from the standard one shown to all logged out users
- Added support for displaying dates and times in different formats on timeline cards
- Improved receipt postback/cross entitlement flow to ensure users always see the link subscription button if eligible
- Fixed an issue where you could only share the even numbered page of a double page spread when in the single page/mobile view
- Added support for user authentication DUTA model
- Updated Facebook SDK to 13.2
- Disabled background downloading pending a fix in 3.10
3.8 - Download, PDF and DFP improvements (Released 2022-05-20)
- Improvements and fixes for edition downloading
- Downloaded content on Storefront tabs should more consistently stay downloaded
- Storefront download indicators should now consistently reflect the state of the edition
- Downloads can now be cancelled from the storefront
- Improvements to double pages spread PDF behaviour and appearance
- Fixed an issue where tap to zoom would take you to a different location than intended
- The first and last pages in a double page spread edition now fit the display better
- Improvements to DFP ad functionality
- We now set a content URL in DFP ad requests for content view pages
- Added the ability to include custom data tags in DFP ads
- Updated collection sets screen to be more in line with existing onboarding screen design
- Added the ability to delete individual editions via the storefront
3.7 - Metered Paywall exclusions (Released 2022-04-07)
- Added the ability to exclude specific content from the metered paywall
- Various bug fixes
3.6 - Hard paywall PKCE auth (Released 2022-04-01)
- Added support for using PKCE authentication on a hard paywall
- Added the ability to exclude certain content from a subscription
- Added support for having different coloured tab icons on the bottom navigation menu
- Increased the Max zoom level on PDFs from 4x to 6x
- The required auth screen can now optionally show the register screen rather than the sign in screen
3.5 - Collection Sets, Voucher codes (Released 2022-03-22)
- Added Collection set support, which allows a users to select specific regions/locales to receive content from
- Improved voucher code support, allowing users to redeem more than one code at a time without having to log out
- Added a parental gate option for apps aimed at children. This will show when a user tries to access either an in-app purchase, or external link
- Added support for OneSignal
- Now targeting iOS 15
3.4 - Hidden tabs, Dark mode (Released 2022-01-18)
- You can now configure tabs which do not display on the bottom tab bar, but are accessible from a deeplink
- Support for dark mode throughout the app, including inheriting from the system setting
- Users can now initiate the download of specific editions from the storefront, and see which editions they have downloaded
3.3 - Double page spreads (Released 2021-11-15)
- Support for viewing PDFs as a double-page spread
- Ability to configure whether a link opens the PKCE login or register flow
- Ensured signed in users remain signed in when updating from Publish to Bolt
- Images on the timeline can now be opened in the full screen gallery view
- Printing support
3.2 - Enhanced PDF (Released 2021-09-27)
- Enhanced PDF support - users can tap on articles in the PDF view to open the HTML version of that article
- Ability to skip the table of contents when opening an edition and go straight to the first page
- Improved edition navigator with page numbers and section names
3.1 - Metered paywall and PDF quality (Released 2021-08-26)
- Increased PDF fidelity
- Ability to meter the in-app paywall, giving the users the ability to read a customisable number of articles before being presented with the paywall
- Ability to dismiss the miniplayer with a swipe gesture
3.0 - Storefronts and Editions (Released 2021-07-30)
- Support for editions of HTML or single-page PDF content
- Storefront tabs displaying edition covers in various layouts
- Single issue purchasing
- Editions can be explicitly downloaded and stored on the device
- Support for deeplinks to specific editions
2.35 - Audio player update (Released 2021-07-15)
- Audio player visual refresh Increased the metadata we show on the context menu to include duration, artwork and optional custom data
- Updated download behaviour for both single tracks and all tracks
- Added a miniplayer giving users the ability to control playback from anywhere in the app
2.34 - Metered Paywall (Released 2021-05-14)
- Added support for metered paywalls, allowing users to read a set amount of articles for free before needing to subscribe
- Added Single issue purchase support
2.33 - ATT (Released 2021-04-15)
- Added support for Apple's App Tracking Transparency, allowing users to opt-in or out of tracking
2.32 - Bug fixes and optimisations
- Various small fixes and improvements
2.31 - PKCE Receipt Postback
- Added receipt postback support for 4.1 auth providers so users can link their in-app subscriptions to an existing account
2.30 - Analytics
- Added an analytics event for if a user changes their app icon
2.29 - Bug fixes & performance improvements
- Bug fixes & performance improvements
2.28 - Analytics for purchasing
- Added and adjusted analytics events for purchase-related actions ie restoring a subscription or dismissing a paywall
2.27 - Analytics opt-out
- Added the ability to toggle analytics tracking on or off from a settings item
- The app will now deeplink to iOS push settings if a user has already seen the push permission prompt
2.26 - Web-based sign in
- Added support for web-based sign in
- Added a new method for removing the floating audio icon Improvements to image gallery view to prevent image extending off the screen
- Added support for gifs in the image gallery
2.25 - SDK updates
- Added support for Facebook core SDK
- Updated Airship SDK to latest version
2.24 - Dynamic Timeline Theming
- Ability to dynamically theme timeline picker, toolbar logo and toolbar from values in the feed on a per timeline basis
- Added support for hidden timelines, not visible in the timeline picker
- Restored ability to link to a specific position on the timeline
- Added the ability to choose your own app icon from a settings screen Improved content fetching on app re-foreground (more often)
- Added support for Branch SDK
- Added support for Mixpanel analytics and push notifications
2.23 - Audio Player
- Implemented new Audio Player with queue and download management capabilities Implemented floating audio icon for quick access from anywhere in the app.
2.22 - SDKs
- Updated Firebase and Adobe Analytics SDKs to latest versions
2.21 - Deeplinking Behaviour
- Changed deeplinking behaviour for 2nd level pages - now pushed onto the stack rather than opening in original tab
- Removed Zendesk chat support
2.20 - Background Downloading
- Added support for full screen video help screens
- Added fully fledged background downloader to ensure content is up to date
- Added support for Firebase in-app messaging
- Added pull to refresh functionality to timelines
- Added a text resize option in settings
- Improved analytics reporting for help screens
- Articles now show as read when swiping through content
- Timelines now show a last updated time
- Dropped iOS 10 support for customers using Airship
2.19 - Firebase Deeplinking
- Added support for Firebase push notification deeplinking
2.18 - Subscriptions
- Added additional theming options for subscription modal
- Added new command deeplinks for sign-in; subscribe and onboarding screens
- Additional subscription modal visual improvements
- Fixed an issue where edit timelines in settings didn't load
- Dropped support for receipt postback on iOS 10
2.17 - Provisional Push
- Added support for provisional/deliver-quietly push on iOS 12 and above
- Added deeplink to the receipt postback UI
2.16 - Appsflyer
- Added support for Appsflyer
2.13 - Audio player improvements
- Added the ability to theme timeline error screen
- Added a loading/buffering indicator to the audio player
- Added the ability to pause buffering
- Tapping the audio player now maximises it rather than minimising
2.12 - Timelines
- Added support for private and marketing timelines
- Added a themable border to top of audio player
2.10 - Native audio player
- Update Lottie to 3.0.4
- Update Airship to 10.2.1
- Added the option to display the toolbar logo when in content view
- Added native audio support
- Added the ability to play audio within the app through a dedicated, themable UI
- Dropped support for iOS 9
2.9 - Image viewer and background push
- Added the ability to open in-content images in a swipable, full-screen view
- Added support for search as a custom web view tab
- Ability to open the saved timeline from settings
- Feed updates can now be triggered by a background push
2.8 - State Restoration
- Added state restoration which will remember your position in the app indefinitely
- The app will now remember your position inside a content view for 30 days
- Add DFP key-value pairs for platform and and ad unit to improve target ability
2.7 - Deep-linking
- Added support for iTunes promoted purchases
- Reworked deep-linking to preserve the context of content, enabling saving, sharing and swiping between linked-to content
2.6 - Help screens, customisation and SDKs
- Toolbars in the content view now minimise on scroll
- Toolbars in the tab view are now minimised, not invisible, when toggled off
- Added native onboarding screens which show on first run
- Added the ability to deep-link to timelines and other tabs
- Added the ability to show a short animation on app open
- Added support for Adobe Analytics
- Single timeline apps no longer show the "customise your timelines" toast message
- New sign-in screen with support for multiple links, the absence of a cancel button and much greater theming capabilities
- Added support for the Zendesk Chat, Guide and Support SDKs
- Added support for Urban Airship
- Added support for customisable settings screens, with external help screens
- Added the ability to toggle a tabs toolbar off via config
- 3rd party push provider support added
- Made the today widget work correctly with multiple timeline groups
2.5 - Customisation and receipt post back
- Added support for a hard paywall which cannot be dismissed until the user has signed-in
- Tabs can now be web views, allowing almost anything to be hosted within the app
- Bottom menu can be entirely customised in terms of composition, icons, names and theme
- Added support for iTunes receipt postback, allowing in-app purchases to be associated to an entity in a 3rd party subscription system
2.4 - Timeline groups
- Added support for timeline groups, AKA multiple multiple timelines
- Added configuration mode, allowing the preview of new configs within the live app before deploying them.
2.3 - Timeline reordering
- Added the ability to choose the order in which your timelines appear
- Added a message which pops on first run and informs users of the ability to choose and reorder timelines
- Made the today widget work correctly with multiple timelines
2.2 - In-App Purchases
- Added the ability to purchase access to premium content via auto-renewing subscriptions from the App Store
- Added a paywall that gives users the opportunity to sign in or purchase a subscription from the timeline or in the content view
- Timelines can now contain a mixture of paid and free content
- IAP purchases support
- iTunes introductory pricing
- Supports having a different layout for the first article in a timeline
2.1 - Multiple Timelines
- Added support for multiple timelines. The app can now present numerous timelines which the user can swipe between. The user can also edit which timelines they see
- The app can now feature help, terms and conditions and help screens
- Added "share this app" and "rate this app" functionality
- Added a settings view, accessible via the bottom menu
- Redesigned bottom menu, providing access to the saved timeline and settings
- Improved saved timeline behaviour
- Added the ability to swipe between widgets within the content view
- Added the ability to serve DFP ads in the content view via a 320x50 bottom banner
- Bolt now uses our new version of the timeline, which is much faster than previous iterations
1.3 - Offline Support
- Offline support. Bolt now pre-caches content that can be read later without a connection
- Paywall. Bolt content can now be hidden behind a paywall connected to your authorisation system
- Support for Playbuzz content as an iFrame in the app's timeline
- Various bug fixes and optimisations