Android Support: 5.0 (Lollipop) - 10.0 (Q)
iOS Support: iOS 11 - iOS 13
Onboarding configuration enhancements
Using version 5.2 there are new ways to configure onboarding to be more flexible on how to
The onboarding can now be configured to reopen via a configuration in the dynamic resources. To do this, a key "onboarding_version" must be assigned its own value in a JSON file config.json. This value is saved by the app when the onboarding is finished and is compared with the current key in the configuration at every app start. If the values differ, the onboarding will be displayed again.
Article swiper navigation
One step towards apps that combine articles with magazine style UX has been taken in version 5.2. Now it’s possible to create a navigation through an arbitrary set of articles (e.g. all articles of an issue or a category) having a completely flexible navigation between these articles.
A specific use case for this feature is having a table of contents for that set of articles. So the user is allowed to swipe through the set but also to directly navigate to one specific entry.
Hide publications from the native storefront
In case there is a setup with a native storefront combined with an HTML based storefront, with version 5.2 there is the option to hide specific publications from the native storefront but still access them in the HTML storefront. This way only a subset of publications is accessible through the native UX and the others may be shown in a way that combines articles with issues in an HTML based UX.
This can be set in the publication settings by activating the last checkbox on the page “hide in native storefront”
Transfer app template version identifiers for Crashlytics
In order to have a connection between crash reports and the corresponding Purple app template version from version 5.2 onwards the version identifier of the Purple Kit are transferred to Crashlytics to be shown in reports.
Access external identifier of articles and issues using JS API
Hide top bar in article context
As already available in issue views, it’s now possible to hide the top bar also in article context. This allows articles to build up their own navigation. You can find this in the following section
App Design/Advanced/Actionbar/06. Hide action bar in article content
Configure Readmode data through dynamic content
Starting with Template 5.2 you can publish and manage custom Purple DS Readmode data through the dynamic content.
You need to place all adjusted data into a "readmode" folder on root level
Improved access to dynamic resources
With version 5.1 it is possible to access files within the dynamic resources in InApp Browser & Content WebViews using the resource schema. These URLs must have the following structure:
The path should point to a file within the dynamic resources. These paths are resolved based on the preferred languages of the device.
The same applies to all relative paths if the html itself was loaded with this scheme. This allows to reduce the total size of the dynamic resource bundle by storing common files in the default folder and localization related files in the respective folders (e.g. de, en, ....). Individual resources for languages can now be overwritten.
Relative urls to other local folders don't work anymore (e.g. "../default/onboarding.html")
If you update the app to template 5.1, this scheme must be resolved (see graphic).
Configuration of the purchase proposal in preview issues
The buttons "Buy" and "Download" in the purchase suggestion for preview issues are now configurable. It is now possible to display one Custom HTML page at a time. The HTML pages are loaded from the dynamic resources.
You can find this setting in:
App Design/Advanced/Purchase Suggestion from Issue
There is a new getIssueById method that returns issue information about an issue ID. If the issue ID belongs to a preview output, the corresponding output is returned.
New action URL to open storefront in "Kiosk" context
The new action URL works like the previous action URL purple://app/resource/dynamic. Additionally the current output is closed and the Storefront-HTML is displayed in the "Kiosk".
With the key "firebase_instance_id" the Firebase Instance ID can be retrieved. This ID can be used to test InAppMessages with Firebase.
With the key "firebase_instance_token" the Firebase Instance Token can be retrieved. This token can be used to test Push (Cloudmessaging) at Firebase.
Change to WKWebView
WKWebView will be in Purple DS Apps in the future the replacement for the no longer supported UIWebView.
With the introduction of these new webview technologies some bugs will be fixed, among others the handling of audio controls, opening new windows and offline thumbnails in HTML storefronts.
Supported 3rd Party SDK-Versions
|Firebase In-App Messaging||18.0.2||6.10.0|
|Appboy / Braze||3.6.0||3.20.3|
|Play Store Billing Library||2.0.3||/|
Discontinued Purple DS Modules
Support for iOS 10 removed
As a replacement for the UIWebView which is no longer supported by Apple, a change to newly used technologies such as the WKWebView is necessary. This requires iOS 11 as the minimum operating system.
Support for Amazon Kindle devices removed
Amazon Kindle is no longer supported. Apps can no longer be launched on Kindle devices.
Hockey support removed
As Crashlytics is now the de-facto standard for crash reports the remaining Hockey feature of crash reporting has been removed. Thus, the Hockey SDK has been eliminated from building app templates.