Learn how to sign up for Apple Developer Program, generate the various certificates needed, configure your app and submit an app to the App Store for approval, both manually and through automated processes through automated pipelines. You’ll learn how to use Apple TestFlight to add internal and external testers and receive feedback and crash reports.
iOS App Distribution starts with explaining hurdles everyone faces, such as code signing, provisioning profiles, and how to do manual releases. It’ll then go into more advanced topics, including distribution through TestFlight, build customization, automation, and continuous integration.
Note: This book is in early-access release. Estimated full release date: Winter 2021.
Before You Begin
This section tells you a few things you need to know before you get started, such as what you’ll need for hardware and software, where to find the project files for this book, and more.
Section I: iOS App Distribution & Best Practices
Begin your journey into learning the best practices of the Apple Developer Program, generating the various certificates needed, configuring your app and submitting an app to the App Store for approval, both manually and through automated processes through automated pipelines. Learn to use Apple TestFlight to add internal and external testers and receive feedback and crash reports.
Getting started with the App Store release, here’s a recap of what the App Store does, and the role it plays in the distribution of apps. Review the lifecycle of an app from inception to production, and how various topics in this book tie together to help you navigate Apple’s release of process.
This chapter will walk you from a zero account to creating, building and archiving your first app. You’ll wrap it up by code signing and uploading your first app to App Store Connect, all from within Xcode.
Learn the intricacy of App Store Connect and how to prepare your App Store page.
Learn code signing and provisioning profiles in depth, including common errors and situations such as certificate distribution and APNS, as well as troubleshooting missing files and certificates.
Learn about internal distributions, such as ad-hoc and enterprise, outside of App Store, their differences and more.
TestFlight is an Apple product that makes it easy to invite users to test your app before you release them to the App Store.
Learn to follow the App Store guidelines, as well as the pesky details of submissions such as metadata, advertising identifiers, and various release phases, You’ll also learn what can go wrong, why your app may not be approved, and how to dispute Apple’s decision.
Learn the differences between manual and automatic release, clearing App Store reviews, responding to customer review, and how to handle App Store Connect features like crash reports, analytics, trends and other features.
Learn the ins and outs of entitlements and how they affect the release process. You’ll continue to add capabilities to the sample app to learn push notifications, as well as how to generate and upload a certificate.
Learn how to customize a build using targets, build settings and schemes. Understand how they work together, and the different levels of inheritance in build configurations.
Learn how to refactor build configurations out of the Xcode project to increase visibility and improve maintainability.
Learn how to store secrets, such as API tokens in build configurations, swap them for different build types and use them in the code.
Learn how to build, archive, export and upload your app to App Store Connect, all through the command line and automate this process using Xcode toolchain.
Learn how to use fastlane to build a fully automated pipeline that runs tests, creates certificates, provisioning profiles and push notification certificates, and goes as far as uploading builds to Test Flight and submitting to App Store review, along with screenshots and metadata.
In this chapter, you’ll learn how continous integration helps you run teams smoothly.
Learn the foundations of scaling your apps and gain other insights from real-world developers and their own app distribution experiences and practices.
Gain an introduction into promoting your app, building a landing page, developing an App Preview video and leveraging user research and interviews.