Prerequisite knowledge
 
  • This article requires that the reader has knowledge of the iOS Developer portal as well as access to DPS App Builder.
User level: All
 
Required Adobe products (retail)
 
Additional required other products (third-party/labs/open source)
 
 

 
Introduction

Adobe DPS allows readers to download content on their own schedule by tapping on an icon in their library, but the reader must always open the app and tap on a folio in order to read. Publishers who use Apple Newsstand have been able to push content to their readers using Newsstand for several years, but corporate publishers and publishers who produce non-Newsstand apps have been left without a method to push content to readers outside of the Newsstand. This changes with DPS version 32.1, which introduces Background Downloads for non-Newsstand apps running on iOS 8 or later devices. In this article, we will explore setting up push notifications with Apple and using the DPS Notifications Dashboard to deliver folios to readers outside of Newsstand.
 

 
The Low Down on Downloads

As a magazine publishing platform, DPS was designed to provide readers and publishers options for delivering content. Initially, readers were required to download issues to their tablets by tapping the issue in their library. Later, when Apple released Newsstand, DPS publishers could take advantage of Newsstand Notifications, which would deliver content to the app without the user having to open the app. In order to receive the content, the device needs access to Wi-Fi. Newsstand downloads are not available over 3G or 4G connections. Publishers typically push content overnight so that readers will have new issues ready to read the next day. This feature goes hand in hand with Newsstand Subscriptions.
 
Many corporate publishers have use cases that require unattended downloads as well. Consider the iPad used in a retail store as a touch display. The retailer wants to publish new folios to the app without needing to ask store personnel to manually download the new folios on each and every iPad across their thousands of retail stores. They would prefer to schedule an unattended delivery so that store personnel can wake up the iPad in the morning with the new content already loaded.
 
Consider the sales enablement scenario in which a manufacturer wants to ensure that the latest pricing information is available to the sales force. The manufacturer would also prefer to schedule unattended delivery of new content to the iPad. Both of these scenarios and every other corporate publishing scenario was barred from unattended delivery of content due to the limitation that only Newsstand apps could receive unattended downloads.
 
Apple introduced background downloading for non-Newsstand apps in iOS 8. DPS Release 32.1 extends background downloads to DPS publishers whose readers use iOS 8. This applies to both retail (iTunes) and Enterprise (privately published) apps, and represents an important advancement of how publishers deliver content to their readers outside of Newsstand.
 
In order to use this feature, publishers need to have a Push enabled Viewer App and readers with iOS 8 on their devices. Due to limitations imposed by iOS Content Protection, the app cannot use the DPS Secure Content option, as this option encrypts the app and its content when the device is locked.
 

 
Enabling Push Notifications

Push notifications have been available for retail (iTunes) apps in DPS for many years. Adobe added Push notifications for Enterprise (private) apps early in 2014. One critical requirement for using Push notifications is that your app must have an iOS App ID associated with it. Apple allows you to create apps with or without App IDs. Apps without App IDs are built using Wildcard certificates in the Apple iOS Developer Center. For Enterprise apps, Wildcard-based apps are useful, because it allows a team of developers to create apps using the same mobileprovision files and .p12 certificates. Those apps can then be resigned and distributed to Enterprise users via an MDM solution. Push notifications are not available to apps built using Wildcard mobileprovision files, however, because the Apple Push Notification Service (APNS) requires that the app has a unique certificate that allows APNS to locate and target apps for notifications.
 
The steps to enable Push Notifications are as follows; they are the same for Retail and Enterprise Apps:
 
  1. Create an iOS App ID in the iOS Developer Portal
  2. Enable Push Notifications for the App ID
  3. Generate Developer and Production Push Certificates for the App ID
  4. Install the Push Certificates in your Keychain
  5. Export the Push Certificates as .p12 certificates from your Keychain
  6. Create Developer and Distribution mobileprovision file for your App ID
Apple’s End User License Agreement prevents us from taking screen shots of the process, so you should consult Apple’s documentation for enabling Push Notifications for iOS Apps for more details.
 
With the new mobileprovision file in hand, you can now build your DPS app using the DPS App Builder. Once you build your app, you can add the Push certificates to the app in the Adobe DPS Notifications Dashboard.
 
To open the Dashboard, log in to digitalpublishing.acrobat.com using the Adobe ID used for the application and click the Notifications button at the bottom of the button stack on the left. If your Notifications button is grey, then you logged in with an Adobe ID that is not associated with the Application role.
 
Figure 1. Click the Notifications button to open the Notifications Dashboard

Figure 1. Click the Notifications button to open the Notifications Dashboard

 

Once you have the Notifications Dashboard open, you will see two tabs: Notifications and Certificates. If you have no certificates uploaded to the Notifications Dashboard, the Dashboard will open in the Certificates tab. If you see a CERTIFICATE ALERT warning that you have no viewers associated with this account, then you need to go back to DPS App Builder and ensure that you chose this Application ID when you built your app.
 
Figure 2. If you see this warning, you need to rebuild your Viewer and choose the correct Application ID.

Figure 2. If you see this warning, you need to rebuild your Viewer and choose the correct Application ID.

 

In order to send Push notifications, you need to upload your APNS certificates (.p12 files) to the Notification Dashboard. You will need to upload Developer and Production .p12 files, even if you built an Enterprise DPS app, which is always a Distribution app. To upload your APNS certificates to the Dashboard, click the gear icon to open the Certificates dialog.
 
Figure 3. Click the gear to open the Certificate dialog

Figure 3. Click the gear to open the Certificate dialog

 

Browse to your Developer and Production .p12 files and enter the passwords you used when you created them. When finished, click Add to upload the certificates.
 
Figure 4. Browse to your APNS Certificates and click “Add” to upload.

Figure 4. Browse to your APNS Certificates and click “Add” to upload.

 

Now that you have uploaded your APNS certificates, you should no longer see a CERTIFICATE ALERT. It is important to note that APNS certificates are valid for one year. You will need to have current certificates installed in order to send notifications, so you will need to re-issue APNS certificates in the iOS Developer Portal each year and upload them to the DPS Notifications Dashboard.
 

 
Pushing Your Folio

In order to push a folio, switch to the Notifications tab in the Notifications Dashboard. The Dashboard will show you the history of Notifications that you have sent to your app. It will be empty upon first launch. DPS offers two kinds of Push Notifications: Text Notifications and Background Downloads.
 
Text Notifications are messages that you can send to apps to communicate with your users. These messages can be configured with actions so that when the user taps or swipes the message, a folio or article might open, or the library or a custom slot might open. These messages can also open a URL. To learn more about sending Text Notifications to your DPS app, please read the Push Notification Documentation.
 
Background Downloads are different in that they send the actual folio to the Viewer rather than a message. This feature has been available for Newsstand apps and is now available to all apps built with DPS R32.1 and higher, running on iOS 8 or higher.
 
To schedule a background download, click the plus sign in the upper left hand corner of the Dashboard and choose Background Download.
 
Figure 5. Click the “+” icon to initiate a Background Download

Figure 5. Click the “+” icon to initiate a Background Download

 

Select the folio you want to send from the list. If you have multiple renditions as shown in figure 6, select only one of the iOS renditions. The notification system will deliver all of the renditions of the selected folio to iOS devices that are running iOS8 and have accepted Push Notifications. Once you have selected your folio, choose Next to schedule the push.
 
Figure 6. Choose the folio you want to push. If your folio contains multiple renditions, then choose one of the iOS renditions. In this example, the iPad rendition is selected.

Figure 6. Choose the folio you want to push. If your folio contains multiple renditions, then choose one of the iOS renditions. In this example, the iPad rendition is selected.

 

There are several delivery options you must configure in order to schedule the push.
 
App ID: If you have multiple Push Certificates installed, you will need to choose an App ID. For most customers, there is no need to change the option here.
 
Application Type: Select which app you will target. For Enterprise apps, the choice will be Developer. For Retail (iTunes), you can target either the Developer or Distribution app.
 
Notification Time: You can schedule the date and time for your notification. This is convenient for publishers who want to deliver content overnight but who don’t want an employee to sit by the Dashboard waiting for 2:00 am.
 
Text Notification (iOS 8 Only): This option lets you send a text message to devices for which the content is not entitled. Those devices need to be running iOS 8 and the Viewer needs to be Version 32 or higher. This is relevant in Newsstand scenarios where a customer’s subscription may have lapsed, and a new issue becomes available to which they have no entitlement. This option lets you inform those customers of the new issue. For Enterprise use cases, it allows an Enterprise publisher to notify a sales team member who has not completed a qualifying training that new content is available, and the text message might be to direct the sales team member to the corporate training center.
 
Figure 7. Background Download options. In this example, the folio will be sent on November 19, 2014 at 2:15 AM to the Distribution Viewer. No text message will be sent.

Figure 7. Background Download options. In this example, the folio will be sent on November 19, 2014 at 2:15 AM to the Distribution Viewer. No text message will be sent.

 

Once you have configured your delivery options, click Send to schedule your Background Download. You may get a message that no devices are associated with your App ID. This will happen because no users have started their app and accepted Push Notifications. Once one or more users have accepted Push Notifications, you can push Send to schedule the Background Download.
 
On the reader side, the reader will not notice that anything has happened. When they open their application, however, the folio will now be available for reading in their library, and they will not need to download the folio in order to read it. Unlike Newsstand notifications which are limited to once in a 24 hour period, this system allows you to schedule multiple downloads in a 24 hour period. Know that your reader’s Wi-Fi bandwidth will determine how fast content can be delivered, that the Viewer cannot use Secure Content, and that delivery over 3G and 4G is not supported. In addition, it is not possible to update an existing folio using this method.
 
While it is impossible to update an existing folio, it is possible to take a two-step approach to keep content up to date. The two steps include removing the folio from the library/storefront and then pushing the new folio to the device. The easiest way to remove a folio from the library/storefront is to unpublish it. To use this method, the publisher would need to create a custom library that compared the list of published folios to the ones on the device, and then used the folio.archive() method in the Library SDK to delete the folios that are no longer published. An alternative is to use entitlement, where you would remove a folio from entitlement and then hide it from the reader in the library/storefront. Either of these methods will be effective for removing the old folio once the user starts the app and browses to the library. To get the new content onto the iPad, simply push a new folio. From the user’s perspective, they will only see the updated folio in their library and will not know that something has been removed, unless you call it to their attention with a new folio name or library preview image.
 

 
Where to go from here

DPS Release 32.1 represents a turning point for customers who want to provide unattended delivery of folios to their readers outside of Apple’s Newsstand. Publishers can choose when and how often to deliver content, enabling a host of Enterprise applications that previously required a user to supervise content downloads. Unattended downloads offers a “hands off” option for sales enablement use cases, ensuring that the most current content is always available. DPS Apps used in kiosks can now receive content overnight, enabling publishers to update their store displays and trade show displays without user intervention. Although this feature is not available for Secure Content customers while the device is in a locked state, it should offer most DPS customers a more streamlined method to manage content on remote iPads.
 
Comments are currently closed as we migrate to a new commenting system. In the interim, please provide any feedback using our feedback form. Thank you for your patience.