Introduction

PubCoder can export your publication as a native iOS app that can be distributed for free or as a paid download on the App Store.

The app actually bundles our own native iOS reader technology with an XPUB export of your project, creating a unique app-player for your publication. Since the same player and the same format is used, every feature for the XPUB format is fully supported, including interactivity, read aloud, soundtrack, multiple renditions and localizations.

The resulting app will run on any iOS device running iOS 13.7 or later.

Requirements

First of all, exporting iOS app requires using PubCoder for Mac. If you use PubCoder on Windows, you will need to borrow a Mac to export in the iOS App format, just login on PubCoder for Mac with the same account you use on your Windows machine and your license will work.

In order to export an iOS app, you need to use macOS 13 or later with Xcode 14.1 or later installed; you can Install Xcode from the Mac App Store.

To build your app for App Store or Ad Hoc Distribution, you will also need an active Apple Developer Account, and to setup a Signing Identity and Provisioning Profiles. For more informations, you can read this tutorial

iOS-specific Settings

Exporting an iOS app requires additional setup in your project settings. Click Settings in your project window toolbar, then click on the iOS App tab.

iOS Settings

App Name The application name as it will appear under the app icon in the device’s applications screen
App ID Every iOS app requires an App ID [aka Bundle ID] to work. This is a string that is set up during development, usually in the form of com.yourcompany.appname.
An app cannot be submitted to App Store Connect before it has been assigned an App ID — you need to create a App ID before submitting your app to App Store Connect.
You can change your App ID on App Store Connect until your app has been approved by Apple and is available on the App Store. Once your app is approved and available for download on the Apple App Store, your Bundle ID cannot be changed.
App Version Specifies the public version number of the app, you must increase it at each release and it will appear in the store.
The release version number is a string comprised of three period-separated integers.
The first integer represents major revisions to the app, such as revisions that implement new features or major changes. The second integer denotes revisions that implement less prominent features. The third integer represents maintenance releases.
Build Version Specifies the private build version number of the bundle, it will not be seen in the App Store. You must increase it at each upload because that is used by iTunes to determine when your App has been updated.
E.g. If your App is ever rejected and you want to upload a new binary, you can keep the same app version but increase the build version.
The build version number should be a string comprised of four non—negative, period-separated integers with the first integer being greater than zero.
The string should only contain numeric (0—9) and period (.) characters. Leading zeros are truncated from each integer and will be ignored [that is, 1.02.3.0 is equivalent to 1.2.3.0}. “
Supported Devices Define if your app will run on iPhone, iPad or both (Universal App)
Code Signing Identity A signing identity is the certificate and private key pair that is used for code-signing the app bundle using Apple’s codesign utility. You can create and download a signing identity (distribution) from developer.apple.com website.
Provisioning Profile App Store / Ad Hoc Provisioning Profiles are a way of tying together a team of developers with an App ID and potentially a list of test devices. You can create and download provisioning profiles from developer.apple.com website.
The Provisioning Profile list is filtered to only show Provisioning Profiles that are installed on this computer and match both the chosen Identity and the App ID [aka Bundle Identifier].
If the Provisioning Profile that you are looking for isn’t in the list, make sure that you’ve chosen a compatible Identity and double-check that the App ID is correct.

You can also setup App Icons and Launch Images manually or use the default ones.

iOS Settings

iOS Settings

iOS-specific Features

Since PubCoder’s iOS native app uses the XPUB format and player, you can use all XPUB-specific features, including multiple renditions and localizations.

Export Destinations

The export control offers various possible destinations for the export.

You can of course save a .ipa file for distribution, choosing App Store to submit it to the app store, TestFlight to submit it to app store for testing or Ad Hoc to distribute the file manually (you will need provisioning profile with the list of devices where the app can be installed).

Finally, you can send your app to an iOS Simulator (setup them in Xcode).