-
Notifications
You must be signed in to change notification settings - Fork 101
4.0 tutorial for Newsstand
Using Baker is simple and even if there are some technicalities involved, it's doable with just basic technical knowledge.
This tutorial assumes that you choose the Newsstand publication support in Baker. If you're not sure, read here.
REQUIREMENTS
- A Mac with Xcode
- An Apple iOS Developer account (required to test Newsstand and publish to the store).
- A server (to store your issues)
- Create your issues using the [HPub tutorial](How to package an HPub).
-
Zip the publication and rename from zip to [Hpubs](hpub specification)
- remember to select all the files and zip them, do not zip the folder
- the file extension must be
filename.hpub
, notfilename.zip.hpub
orfilename.hpub.zip
-
Upload the each Hpub to your web server (just the Hpub). Test and make sure that you can download them from a browser. (e.g.
http://example.com/publication/issue1.hpub
). - Prepare a cover thumbnail image in PNG format for each publication and upload them on the server as well.
Note that you won't have to put the hpub files in the books/
folder (or anywhere in your app really). They will have to go on an external server along with the covers and the shelf.json
file.
- Create the
shelf.json
file following the instructions for Newsstand shelf JSON. - Validate the
shelf.json
file with JSONLint to make sure it's correct. - Upload the
shelf.json
file to your web server (e.g. tohttp://example.com/baker/shelf.json
). Test that you can download it correctly.
Example shelf.json
file with a single issue. Notice the path of the hpub and the cover files:
[
{
"name": "a-study-in-scarlet",
"title": "A Study in Scarlet",
"info": "The original masterpiece by Sir A. Conan Doyle",
"date": "1887-10-21 22:50:36",
"cover": "http://example.com/a-study-in-scarlet/a-study-in-scarlet.png",
"url": "http://example.com/a-study-in-scarlet/a-study-in-scarlet.hpub"
}
]
To meet the App Store requirements for a Newsstand app, you must provide a free subscription. You can create one on iTunes Connect. Follow Apple instructions to do that, we can't unfortunately provide support for the Apple side of things.
- You need to have your application already created in iTunes Connect (don't worry, it's not submitting anything yet).
- From the iTunes Connect page for your application, select Manage In App Purchases.
- Click the Create New button.
- Select Free Subscription.
- Fill in all the required form fields. Baker will need a reference to the Product ID, which will be something similar to
com.example.Baker.subscriptions.free
.
- Download and unzip the latest version from the website.
- Open
Baker.xcodeproj
in the latest version of Xcode. - Change the Bundle ID in Baker to your own Bundle ID (which you can find on iTunes Connect).
- Replace the icon files (ios-icon-*.png, check the Apple Guidelines for reference).
- Within Xcode, open file
Constants.h
inside theBakerShelf
folder. - Set
NEWSSTAND_MANIFEST_URL
to the fullshelf.json
URL (e.g.http://example.com/baker/shelf.json
). - Set
FREE_SUBSCRIPTION_PRODUCT_ID
to the iTunes Connect Product ID of your free subscription (e.g.com.example.Baker.subscriptions.free
). - (optional) Set
PURCHASE_CONFIRMATION_URL
to the URL where you want to receive the ping when a user subscribes to your app (see Subscription-pingback).
- Within Xcode, open file
UIConstants.h
inside theBakerShelf
folder.
There you can set many details about the shelf look and feel.
Title color, info text color, button color, button text color, loading color and so on. - Within Xcode, open file
Baker/Supporting Files/en.lproj/Localizable.strings
.
There you can set the shelf title, button titles and messages related to downloading and archiving.
- Test your publication, subscriptions and downloads
- If you have problems check the Problems and Debugging page.
- When you're ready, submit to the App Store.