Getting your iOS app on the App Store can be a challenge. Especially when it’s your first app. Or maybe it’s not your first app, but maybe you’ve made mistakes that have led to your app getting rejected from the App Store.
From code signing to provisioning profiles to handling manual releases with grace, it can be a challenge to get everything right. In fact, it can be downright frustrating!
If you’re a freelancer and you promised a release date for your client’s app, get ready to have a tough conversation with that client. If you’re a junior or senior developer and you promised your manager that the app would be live on the App Store by Wednesday — get ready to have a tough conversation with your manager!
How can you stick to your release schedule — without burning out in the process?
How to Deploy your iOS Apps Smoothly
Let’s start from the top.
To successfully release your iOS on the App Store with no hurdles, there are a lot of things you need:
- Solid understanding of the Apple Developer Program
- Generating various certificates
- Configuring your app for release
- Working through App Store approval process
- Handling distribution through TestFlight
- Implementing continuous integration and continuous delivery
- …and many, many other small details!
Learning all of these things can be tough. But we’ve got just the right book to help you in your journey as you go through this learning process: iOS App Distribution & Best Practices!
How Can this Book Help?
This book teaches you everything mentioned above, and helps you easily distribute your iOS app, get it approved on the App Store, set up continuous integration, and everything else you need to be successful with your next app release!
This book isn’t meant to be an all-encompassing App Store distribution manual, or a replacement for Apple’s official documentation. What this book gives you is a complete walk-through of the cores skills and knowledge you need, so you can build the mental models to succeed with the hardest parts of App Store distribution. Understanding the “why” behind all of these processes and policies will serve you well today, and well into the future.
The book also covers best practices and automation as well. There is no definitive list of app distribution best practices, but over the last decade, many app development teams have converged on a set of accepted best practices gathered from their real-world experience that you’ll find collected in this book.
What’s Inside the Book?
iOS App Distribution & Best Practices packs everything you need to know about build automation, testing, configuration, deployment and more into 16 chapters:
- The App Store: 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 process.
- Your First App in the App Store: Start from no 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.
- Submitting Your First App for Review: Learn the intricacy of App Store Connect and how to prepare your App Store page.
- Code Signing & Provisioning: Deep dive into the intricacies of code signing, provisioning profiles and entitlements and learn how they work together.
- Internal Distribution: Learn how to distribute builds within your organization, either manually or wirelessly, using your own solution or a third-party service.
- TestFlight: Use TestFlight to send your production-ready app to up to 10,000 testers by either sharing a link or sending an email, and receive feedback and crash reports in one central place. There’s no need to collect device information and it requires no ongoing maintenance on your part.
- Preparing for App Review: Learn about the App Review process, the principles behind it, the various stages your app goes through before it becomes available to the public and how to troubleshoot any issues.
- App Approved! (Now What?): Learn about pre- and post-release checklists as well as the different ways you can monitor the performance of your app in production to be better prepared for upcoming maintenance.
- Build Customizations: 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.
- Advanced Build Configurations: Learn how to refactor build configurations out of the Xcode project to increase visibility and improve maintainability.
- Managing Secrets: Learn how to store secrets, such as API tokens in build configurations, swap them for different build types and use them in the code.
- Build Automation: 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.
- Introduction to Fastlane: 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.
- Continuous Integration: Use continuous integration to automatically run builds when new changes are introduced and to catch failing tests early before they become a problem.
- Publishing in the Real World: Review some real-world scenarios and learn how this book’s lessons apply to the really hard problems you and your team face every day.
- Where to Go From Here?: You’ve come a long way! Now, it’s time to wrap up and review what you’ve learned.
We’ve also included two appendices to help you make your next deployment a breeze:
- Appendix A – TestFlight: This Appendix walks you through creating a distribution build and uploading it to App Store Connect.
- Appendix B – Release Page & Checklist: Never miss a step again with this sample pre, during, and post-deploy checklist!
What are you waiting for? You can you can start reading the first part of the book for free: