Bolt Release Notes - Android App
Table of Contents
What's included in the latest version of Pugpig Bolt for Android. 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.
Note that dates are in YYYY-MM-DD format
4.1 - Released 2024-09-03
Major changes
- 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.
- SDK updates -
- Airship 18.1.6
- Comscore 6.11.1
4.0 - Released 2024-08-15
Major changes
- Targets API level 34 (Android 14), this is a requirement for app submissions after 31/8/2024.
- Improvements to the underlying navigation framework of the app.
The changes to Bolt Android are subtle yet significant and we would encourage you to read more about them in our Bolt Android 4.0 update post.
- 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.
Additional changes
- Various bug fixes and performance improvements as part of our Android 14 regression testing.
- Optimised background downloading for editions including better download metrics and logging.
- Tab bar can now optionally persist when inside an article.
- Added optional alternative method of tracking for Chartbeat analytics, using URL rather than view id.
- Added the ability to create Android builds without any Google services, which can be submitted in locations such as China.
- Applied voucher codes can now be cleared from the hidden menu.
- Removed support for custom app icons.
- Removed support for Omniture.
- Removed support for Branch.
- SDK updates -
- Firebase 32.8.1
- Airship 17.8.0
- Onesignal 5.1.13
- Pushly 1.2.5
- Mixpanel 7.5.2
- Onetrust 202402.1.0.0
- Google Services 4.4.1
- Google Ad Services 22.6.0
- Google app store 6.1.0
- Amazon app store 3.0.4
- Adobe 2.9.3
3.24 - Released 2024-05-16
Major changes
- Added support for Google Ad Manager interstitial adverts
3.23 - Released 2024-04-11
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
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.
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 6.3.0
- Updated OneTrust SDK to 202401.1.0.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-10
Major changes
- 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.
- 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
- 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.
- Fixed an issue where tapping the back button on a page accessed via toolbar icon would take the user to an incorrect page.
3.19 - Released 2023-12-13
Major changes
- All supported third party SDKs with updates available have been updated to the latest available versions:
- Firebase - 32.5.0
- Airship - 17.3.0
- OneSignal - 5.0.3
- Google Analytics - 18.0.4
- Mixpanel - 7.3.2
- Chartbeat - 1.7.3
- Comscore - 6.10.0
- AppsFlyer - 6.12.4
- Facebook - 16.2.0
- Zendesk Support - 5.2.0
- Google Mobile Ads - 22.5.0
- Google Tag Manager - 18.0.3
- 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.
Additional changes
- Added new content web view bridge to be able to mark content as excluded from native touches.
- This will allow carousels and other content to swipe/scroll without moving the page.
- Ensure users who update their device to Android 13 will see the native push prompt.
- Matched 'last updated' banner behaviour to iOS, ensuring it more accurately reflects the update time.
3.18 - Released 2023-11-23
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-25
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
- Matched back button behaviour to iOS on hidden tabs. It is now shown in the toolbar rather than only relying on the native system tray back button
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
- Added an image count to galleries on Android to match iOS
- Re-introduced the toolbar back button when users are on a hidden tab, rather than only relying on the native button
3.16 - Billing Library 6, Material 3 and download error messages (Released 01/08/2023)
- Updated to Google Billing Library 6, this utilises Google Play's new in-app purchase framework
- Updated many UI elements to follow Material 3 guidelines
- 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 Android 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 parameters to Mixpanel and Firebase
3.15 - Link handling, Amazon purchasing updates and download improvements (Released 05/06/2023)
- Improved event tracking for content downloads
- Additional specified domains can now have access to the native bridge, improving embed support
- Support for triggering background downloads of content
- Improvements to memory usage and performance
- Much better handling of links to content on alias domains that isn't in the app yet
- Updated to Amazon Billing Library 3.0.3, fixing several bugs
- Updated Ipsos/Dotmetrics SDK to 1.17.3
3.14 - State restoration (Released 28/04/2023)
- Users will now be returned to where they were in an edition when they return to it, for editions without ToCs.
- A user's state when they backgrounded the app will now be remembered when they foreground it again
- Dynamic timelines can now be featured in the timeline picker
- Significant downloader changes to bring inline with iOS
- Improvements to memory usage and performance
- Added support for double page spreads
3.13.6 - Android API version updates (Released 14/02/2023)
- Targets Android API level 33
- Removed old-style native subscription linking, this is now handled by web-based auth
3.12.9 - Bug fixes and performance improvements (Released 26/01/2023)
- Fixed an issue that could cause certain links to crash the app when opened
- 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 17/01/2023)
- 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
- The metered paywall now applies to content that is only interacted with on the timeline, such as video or audio cards
- Tweaked pre-fetch behaviour to more reliably have content available when offline
- Updated SDKs:
- Airship 16.8.0
3.11 - Right to left support (Released 25/11/2022)
- Added full Right to Left support for all app features
- Added the ability to optionally lock the app to portrait
- Changed the appearance of the app loading mask to a spinner
- Updated SDKs
- Firebase (31.0.2)
- Google Ads (21.3.0)
- GA and GTM (18.0.2)
- Removed support for NewRelic
3.10 - Subscription levels and performance (Released 04/10/2022)
- Added subscription levels, this allows apps to feature subscriptions in multiple tiers with different levels of benefits. Users are able to upgrade or downgrade from within the app (Beta)
- Several improvements to the paywall UI
- Numerous performance improvements, mainly focused on mitigating out-of-memory issues.
- Several crash fixes
- Update Appsflyer SDK to 6.9.0
- Text resize now applies to the storefront as well
- Apps can now be used in landscape in all device. 3.11 will add the ability to disable this on phone if desired
- Updated Facebook SDK to 13.2
- This release temporarily breaks single issue purchases on Amazon devices. This will be resolved in the next release.
3.9 - Preview mode and Edition Auto Archiving (Released 14/07/2022)
- 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
- Added support for user authentication DUTA model
- Updated Facebook SDK to 13.2
3.8 - Download, PDF and DFP improvements (Released 23/05/22)
- 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 exclusion (Released 07/05/22)
- Added the ability to exclude specific content from the metered paywall
- The required auth screen can now optionally show the register screen rather than the sign in screen
3.6 - PKCE auth on hard paywall (Released 04/04/22)
- Added support for using PKCE authentication on a hard paywall
- Added support for having different coloured tab icons on the bottom navigation menu
- Added the ability to opt-in (from a default opt-out state) to AAID collection
- Fixed anchor linking for media cards on the timeline
- Updated Airship to version 16.2
- Increased PDF image resolution
3.5 - Android API 31 (Released 14/03/22)
- We are now targeting Android API level 31
- Added support for OneSignal
- Added support for Blueshift
3.4 - Timeline sets, Voucher codes (Released 03/02/22)
- Added timeline set support which shows a screen during the onboarding process that allows users to filter the set of selected timelines. Ideal for apps featuring multiple regions or languages
- Added voucher code support allowing users to get access by entering a code. Can be used to redeem multiple offers without losing the previous ones
- Increased PDF fidelity
- Added the ability to display a subscribe button on the storefront
- The metered paywall banner can now link to any URL or deeplink
3.3 - Hidden tabs, Dark mode, Background fetch (Released 15/12/21)
- Improved background fetch capabilities to enable content to update while the app is not in use
- You can now configure tabs which do not display on the bottom tab bar, but are accessible from a deeplink
- Added support for dark mode, which can be configured via your device settings
- Added buttons to the storefront to allow the download of individual editions, and indicate which editions are currently available offline
3.2 - Enhanced PDF (Released 15/11/21)
- 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
- 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 08/10/21)
- Ability to meter the 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 03/09/21)
- 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.18 - Metered Paywall and Audio player update (09/08/21)
- 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
- Improved audio player with a visual refresh
- Added more theming options to app help screens that show on first launch
- Various SDKs updated to their latest versions - OneSignal, GTM, Firebase, Airship and Appsflyer
- Improved support for localisable strings and relative timestamps on the timeline
2.17 - Bug fixes & performance improvements (Released 23/04/21)
- Updated Facebook SDK to 9.1
- Added support for additional settings deeplinks
2.16 - Airship
- Improved support for Airship in-app automations
- Updated Airship SDK to latest version
2.15 - Bug fixes & performance improvements
- Various bug fixes and optimisations
2.14 - PKCE Receipt Postback
- Added support for custom dimensions being added to Firebase screenview events
- Added "Review this app" prompt after a certain level of user engagement
- Added receipt postback support for PKCE auth providers so users can link their in-app subscriptions to an existing account
- Improved toolbar behaviour when vertically scrolling through content
2.13 - PKCE Auth and Analytics
- Added analytics events for actions within the audio player
- Added support for PKCE-based Oauth flows
- Added support for Mixpanel push notifications
- Added the ability to toggle analytics tracking on or off from a settings item
- Added a new settings item that can open an external link
2.12 - Audio floater
- Implemented themable floating audio icon for quick access from anywhere in the app
- Added a new method for removing the floating audio icon
-
Added support for Facebook core SDK
2.11 - Audio player
- Implemented new Audio player with queue management capabilities
- Added support for hidden timelines, not visible in the timeline picker
- Added support for per tab toolbar icons that can open a URL
2.10 - Dynamic timeline theming
- Added the ability to dynamically theme timeline picker, toolbar logo and toolbar from values in the feed on a per timeline basis
- Added the ability to choose a custom app icon from a screen in settings
- Added support for custom analytics dimensions passed through into content
- Added support for Mixpanel analytics
- Added support for New Relic
- Added support for Branch
- Updated minimum supported version to lollipop (API 21)
2.9 - Timeline performance
- Updated Zendesk, Appsflyer and Adobe SDKs to latest versions
- Added the option to include a video to the app onboarding screens
- Added pull to refresh functionality to timelines
- Added a text resize option in settings
- Added support for round icons
- Added support for creating 3rd party accounts after in-app purchases
- Improved downloading of timelines to improve performance
- Timelines now show a last updated time
- Move crash reporting from Fabric to Firebase
2.8 - AndroidX & Text resize
- Initial support for AndroidX
- Updated to Java 8 to allow Exoplayer capabilities
- Updated Airship SDK to latest version
- Added the ability to show a video on the onboarding screen
- Added the ability to theme the toolbar logo in content view
- Added Analytics event for tapping onboarding action button
- Added firebase in-app messaging support
- Added the ability to resize text from settings
- Updated the image layout for the onboarding screen
- Audio player will now be dismissed if the track finishes or if the app is force closed
- Paywall now displays authorisation message, sign in and and subscribe buttons when necessary
- Stories are now set to read if user stays on an article for 3 seconds
2.7 - Purchasing
- Added new pricing strings and the ability to add purchase calls to action on certain buttons
- Add support for localisable strings with substitutions
- Added the ability to deep link to onboarding screens
2.6 - Firebase Deep-linking & Native Audio
- Added the ability to edit timeline in settings
- Added native font theming for timeline picker
- Added deep linking support for firebase
- Added support for external URLs as in-app deep links
- Added deep link support to subscription modal and sign in screen
- Added ability to theme Sign in and Subscribe cancel buttons
- Added ability to set custom settings banner background colour
- Added support for free trial/introductory pricing
- Added additional theming options for subs modal
- Added option to have a help screen deep-link action button
- Added ability to handle subscriptions that are no longer actively sold
- Added native audio support
- Added background colour to audio player if album art does not exist
- Content view toolbar will now hide on scroll
- Added default image for audio notifications
- Removed time from audio player notifications
- Disabled buttons now visually reflect the fact that they're disabled
2.5 - Timeline Deep-linking
- Added support for deep-links to non-content areas of the app
- Added support for deep-linking to specific timeline groups
- Added support for Airship tags and named user capabilities
- Added ability to deep-link to a specific timeline within a timeline group
2.4 - Private & Marketing Timelines
- Updated Amazon IAP SDK to v2.0.76
- Added support for the latest Zendesk SDK
- Added support for both private and marketing timelines
- Added the ability to include saved timeline in a settings tab
- Added draft tag to draft timelines in preview builds
- Added progress indicator dots for onboarding pages
- Added image gallery viewer - a user can tap on an image to swipe through all in an article
- Added the ability to open article URLs as deeplinks
- Improved theming options for settings page
- Onboarding images now scale to fit on smaller devices
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.5 - 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