This post has recently been updated and can be found here: How to Submit an App to the App Store [Updated]
Use the latest cutting-edge technology in macOS Catalina to bring a whole new set of fantastic features to your apps. Learn how to prepare your apps for submission to the Mac App Store or distribution outside the Mac App Store. macOS Catalina gives you more of everything you love about Mac. Experience three all-new media apps: Apple Music, Apple TV, and Apple Podcasts. Locate a missing Mac with the new Find My app. And now coming to Mac, your favorite iPad apps. You can even extend your desktop using iPad as a second displ.
![]()
App submission is often an afterthought. But ensuring you submit your app to the App Store properly (a service included in our end-to-end development) is an important first step to ensure exposure and entice users to download.
That’s why we made this step-by-step guide to App Store submission. This guide contains all the steps required to properly submit an iOS app to the App Store.
Prerequisites
Step Overview
Below you will find a list of guides, each describing how to do one of the steps required for submitting an app.
1. Assemble App Information
It is very important to collect all of the information you need to submit before you start the process. More Information Here.
2. Create a Bundle Identifier
The bundle identifier is the name of your app, as seen by both the App Store and iOS devices.
3. Create a Certificate Signing Request
Certificate Signing Requests are used to link your computer to your Apple developer account.
4. Create an App Store Production Certificate
Code Signing Certificates are used to link iOS apps to your Apple developer account.
5. Create a Production Provisioning ProfileMacos App Store
Provisioning Profiles are packaged with iOS apps so user’s devices can install them.
6. Create App Store Listing
Reserve a slot in the App Store for your app for users to see.
7. Make the release build
Package the actual binary that users will be uploading to the store.
8. Fill In Version Information
Users will decide whether or not to install your app based on your store listing.
9. Submit Version for Review
Every app that is submitted to the store has to be reviewed by the Apple team before release.
10. Release
Enjoy the final, most satisfying step. My mac won t let me delete apps.
Mac App Store Requirements
When submitting a new version of your app, you will only have to repeat steps 7 through 10.
Suggested Reading: How To Submit Your App To The Google Play Store
Preparing a macOS app for distribution through the App Store is fairly easy using Xcode, but to do so for apps that you plan to distribute as a binary by other means — as a download from your own website, for example — isn’t straightforward, and it has got more complicated over recent macOS releases.
Code signing and app notarisation are, I think, good requirements in a connected world where apps are no longer distributed on robust write-once, read-many media. From a security perspective, the less physical a medium is, the more vulnerable to attack it is. Apple’s requirements may be a pain, but there’s (mostly) good reasons for them, and the App Store is possible the safest way to distribute macOS apps there is. Only the fact that it mandates App Sandbox, which overly restricts an app’s access to the host’s resources, prevents me from distributing more of my apps that way.
Even beyond the App Store, code signing and notarisation help potential users download and install them with some confidence — event though they increase the complexity of packaging apps for distribution. Fortunately, it’s a very scriptable process.
Here’s what needs to be done:
![]()
The last two steps are optional, but I do them anyway: belts and braces.
Step 1 is achieved entirely in Xcode, but the other steps require other tools, all accessible from the command line. Which makes them scriptable.
My script,
packapp.zsh , is available from my GitHub repo. It performs all but the last two steps — I’ll explain why in a moment — leaving you with an Installer package ready for distribution. The ability to build the steps into a script also gives you a great deal of scope for automation.
The script takes the path to the notarized
.app file plus a number of switches. https://librenew222.weebly.com/how-to-force-remove-apps-on-mac-os-mojave.html. The essential ones are -u /--user and -c /--cert , which respectively take a Keychain account name and the name of your Developer ID Installer certificate, which you’ll require if you’re to create a signed Installer package. And you have to do that to get it notarised.
Apple App Store Submission Process
The script parses the command line arguments and does some checking to make sure it the information it needs. It then creates the signed installed package, which it then uploads to Apple. For this is requires Developer Account Apple ID credentials, which it expects to find in your keychain stored under the name AC_PASSWORD (edit the script to change this). For the keychain item, you’ll need to visit appleid.apple.com, sign in and create an App Key — this key is stored in AC_PASSWORD where it’s associated with an account name, which could be your Apple ID or something else. Whatever you choose, pass it into
packapp.zsh using the --user switch.
The upload complete,
packapp.zsh now periodically polls the App Store server until the notarisation process is complete, either successfully or not. If the package is notarised, the script staples the notarisation notice to the package, verifies that it’s good for distribution and exits.
Mac App Store Submission Guidelines
I currently create a
.dmg file manually: open Disk Utility, make a 100MB image, copy over the Installer package, unmount the image, and then use Disk Utility to create a compressed version. I sign this manually using:
Why not script these steps? I’d like to, and it is possible, but I’ve not yet figured out how to compress the final
.dmg as much as Disk Utility does. Here are the CLI steps:
The key issue is the final line. All of the possible
-format values (check out hdiutil’s man page for the details) yield larger .dmg files than Disk Utility does. I continue to experiment.
Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |