The primary change since 1.4.2 is the merged code for Pugpig for Magazines and Pugpig for Continuous Publishing on iOS. We've merged code and UI to achieve a single product and template that can be be configured in the traditional edition based (PPfM) and continuous (PPfCP) ways but is now even more flexible and allows us to start offering a dual publishing configuration too (editions and continuous feeds). This work has led to changes across config, UI, server API, theming, and downloads so is a large upgrade. We therefore recommend reading the details below and planning some time to upgrade, test and submit.
We have a new set of supported configuration keys in this upgrade. Most of these are supported on the server-side in our Server API feed spec however to help customers upgrade who may not be able to add these server changes quickly we have provided config.plist keys inside the app container. We may deprecate some of the app side config in future so we recommend planning the changes into your 2106 Server pipeline if you manage this.
New keys to be aware of and what to set in your config.plist when you upgrade:
- Enable Storefront - this is one of the main config keys you need to use to determine a traditional edition based app or a continuous one. Edition based apps should have this set to True (YES), Continuous ones should set this to False (NO)
- Enable Zoomed Pages - this is a secondary config key that should be set to True (Yes) for edition based apps and False (NO) for continuous ones.
- Enable Auto Open Document - this is a config key used to determine continuous app behaviour, however it can be used for some edition based use cases like a Daily publication where users aren't inclined to care about old or back editions. For upgrades to maintain existing behaviour you should set this to False (NO).
The keys below are more applied to Continuous apps so can be ignored or set to False:
- Enable Auto Open TOC - this will auto-open the Table of Contents panel every time you enter the edition. This is a typical feature in Continuous applications. It could be used in edition based Magazine apps although we'd recommend setting to False if you want to maintain traditional behaviour in your upgrade.
- Enable Latest News - this turns on the Latest News ticker available inside the Tiled Table of Contents only again a typical feature in Continuous apps)
- Enable Pull to Refresh TOC - this turns on Pull to refresh functionality inside the Table of Contents (typical feature in Continuous applications and only available in Tiled Table of Contents)
However please note these keys can be set per edition server side, this will allow you to then support different editions with different Table of Contents types and behaviours.
Please also check if you make use of Overflow Theme key overrides you use the label 'reorder' and not 'edit.
We now support progressive downloads based on the edition feed type. We had progressive download functionality on by default for Pugpig for Continuous Publishing and now we have merged the two, editions can also be downloaded progressively (as long as the feed type is compatible). What this means is you get into the document as soon as it has content that is ready, you can start reading page 1 before the other pages have completed. Previously the user would have to wait until the entire edition download had completed before they could start reading. We also made some improvements to the page loading view before all the content is ready. Progressive downloads will happen by default in iOS version 1.5.0 if the feed is classic ATOM or new page-per-zips (supported through our Distribution Service). Progressive downloads is not supported with older packaged zips and so with these style feeds you will fallback to the usual download where you wait until the whole edition has completed before you see any content, this is no different to the traditional behaviour in Pugpig for Magazines pre 1.5.0.
If you wish to retain the old way of downloading (non-progressive downloads) for the time being we do offer a manual override. Add to config.plist under features the following key: <key>Enable Progressive Download</key> and set to No/False. Otherwise the app will handle the download based on the type of OPDS endpoint feed automatically.
IMPORTANT: Please note we do not currently support progressive downloads on Android - this will come in 2016. All types of feeds work on Android however the download will mean the user has to wait until the whole edition has completed before they can view content.
Xcode 7 Notes
You should upgrade your environments to Xcode 7 (this is available in Apple's developer portal). Before building with Xcode 7 you should do the following:
- Upgrade to latest Pugpig Products version available following any upgrade instructions
- Turn off App Transport Security (ATS) - you can find instructions on how online - http://iosdevtips.co/post/121756573323/ios-9-xcode-7-http-connect-server-error
- UIRequiresFullScreen to silence submission-time error caused by absence of Launch.xib
- Turn off bitcode in build settings
- Ensure deployment target is iOS 7 +
UI Visual Changes
Here is an overview of the visual changes between 1.4.2 and 1.5.1 release:
- The Storefront view will continue to have a horizontal directional scroll on iPad and Android and a vertical scroll on iPhone and Web. Future releases will offer a vertical scroll on all platforms and device sizes
- The Storefront view logo has now moved into the top toolbar on iPad and Android (like iPhone already was)
- The Storefront view filter group labels 'All Issues | Downloaded at the bottom below edition covers have now moved into a Burger icon with side-menu (like iPhone already has). This is now consistent across iPhone and iPad. Android’s storefront view has filters along the top as scrollable tabs but will also adopt this side-menu. This allows for a 1 to many number of filter groups. iPhone had a side-menu already but this was a Burger icon and the icon has changed to a Library one. You can always override this if you wish.
- The Settings, Accounts and Scrapbook links are now consistently positioned in the toolbar across platforms and devices (far right of toolbar)
- The Storefront side-menu and edition Table of Contents now appear over the content/page/view consistently across platforms and devices.
- The Table of Contents can now be set to a full-screen width for all devices and orientations
- The Tiled Table of Contents has been changed to be full-screen width for all devices on Android and iOS.
- Removed the preload screen (which may affect sponsorship) - you now see the Storefront background, toolbar and brand themeing whilst the download of the OPDS feed is completed. Once edition or page content is ready it will be shown.
- Added a page loading screen mask which can be themed. This will show out of the box for all your pages, it shows a logo, page title and summary when it is being downloaded & user waits for the content to display.
Other visual behaviour changes to note:
- Progressive download ie. straight into the first page for every edition will just happen out of the box if your feed supports it. This means when a user taps download for an edition, as soon as page 1 (typically the cover) is ready it will zoom the user into that page whilst downloading all the other pages in the background, previously you had to wait for entire download progress to complete to start reading. If a user jumps to a page further in the download would prioritise that page first before carrying on with the others. You can choose to force this off but we're not sure why you would want to.
- No longer filtered by section for Continuous apps - swipe off last page in one section onto first page of the next section. This is how magazine, edition based apps always worked.
- One search result per page - The search panel will only show one row entry per page even when the term exists multiple times in that page
We can share visuals for the above. If you want to see these before upgrading, just get in touch.
Theme keys and localisable strings
Please find below a full up to date set of available theme keys and localisable strings in version 1.5.0/1.5.1 of our iOS Pugpig app containers.