Blog icon

How to upload your iOS app to TestFlight for distribution/beta

By Mark Biegel,
Mark Biegel
Scroll down to read

This is a quick guide to upload your app for distribution through Testflight.
 It assumes you have the appropriate access to both developer.apple.com and itunesconnect.apple.com
.

You will need:

  • Web browser
  • Xcode

  • Patience!

Create your App Bundle Id or have it created for you.

If you are new to mobile apps, there is an unofficial standard of using reverse domains to name your app's package, e.g. com.yourcompany.yourappname.

Step 1 - Set up your project in the App Store

Sign in to https://developer.apple.com and make sure that in the top right of the screen you are in the correct company account.

Click on Certificates, Identifiers & Profiles in the sidebar.
 Click on App IDs under Identifiers and then the + button on the top right to add a new app ID. Fill out the App ID Description and then add your bundle ID under the Explicit App ID option.

Then click continue.

Step 2 - Add your details to the App Store project


Go back to https://developer.apple.com and click on Itunes Connect.
 Click on My Apps
 Click on the + button and then choose New App
 Complete the details and make sure to choose your app’s bundle id correctly.

Step 3 - Upload your project


In Xcode, add your bundle ID to the app’s settings and select the company from the Signing options. Select Generic iOS Device from the top menu

generic ios device

Select Archive from the Product menu

archive-product menu

Once this completes, it will open a window called the Organiser. You can find it at Window -> Organiser in the top menu of XCode.

Click the Upload to App Store button followed by Next and wait for it to upload. This may take a while. 
If for any reason it fails at this point, it will be due to a certificate error and you will have to contact someone from your Apple Developer Account team.

upload-to-app-store

Step 4 - push it live

Log in to https://itunesconnect.apple.com 
In your app, click on TestFlight in the top menu. You should see the build uploaded. Be sure to note down your build number for adding to a beta group.

By default you will be able to test your app yourself, simply by installing the TestFlight app on your phone.
 In the sidebar you can add extra people to beta test the app.

Click on New Group in the sidebar and create a beta testing group if you do not have one. Invite your testers by adding their email address.
 Click on the Builds tab in the main window. 
Click on the (+) icon and you can select your build number to add to the testers group. You will receive an email from Apple when it is available as well.

Once you have selected a build you will be asked for some testing information. Fill this out as much as you can and explain how to use your app. Apple does review this even for beta testing and they will reject apps from being submitted to TestFlight.

You will receive an email within 24 hours (typically) letting you know if your app was rejected or not. If not, then you (and anyone else in the beta list) will receive an email from TestFlight.

Troubleshooting

Can’t see your app anywhere after uploading?


This is common and also a new “feature” of ItunesConnect as of mid September 2017.

If you upload a NEW build number it will always require permission by Apple before going out to beta users. What also happens now is that you do not get to see your app in the list of TestFlight apps even though you have permission to test by default.

If you click on “Activity”, you will now see your build number, so you know it is there.

activity

Click on TestFlight again and then on New Group (+) in the sidebar.
 Create a group and add at least one tester.
 Click on the Builds tab and then the (+) link to add a build to this beta group.

builds-tab

You will be presented with a modal that will let you select a build. But it’s not there. Refresh the page at this point. Open the modal again and you should see the app.

This will tell you the exact state that your app is at in the approval process. If it is ready, you can select it and move forward. Otherwise you won't be able to, and it will most likely still be in review.

This handy piece of information will appear on the main TestFlight page after the build is approved and submitted to the beta group and exactly when you no longer need it. :-)

Can’t Upload?


Follow the steps above up to step 3. Instead of clicking “upload to App Store...” you will click the “Export...” button.

export-button

Say yes to each screen, ensuring that Automatic Signing option is ticked when that screen appears.

automatic-signing-option

Once it finishes, it will give a summary of what you are going to be exporting. If you are happy, and everything looks correct, click the export button. You will then choose a location for XCode to create a folder with the files in it. You will then have the following files ready for upload to ItunesConnect:

list-of-files

Step 3b

Go to https://appleid.apple.com/ and sign in.
 In the security section, click on App-Specific Passwords and generate a password. This is a one time use, give it a name and copy the password for the next step.

Step 3c


Go back to XCode and choose Xcode -> Open Developer Tool -> Application Loader

open developer tool - application loader

Sign in with your apple ID email and then password you created in step 3b. You will see this screen.

template chooser

Make sure that the name in the top left is the correct team name for your app.
 If it is not, click it and choose the correct one.
 Next, click the icon in the middle of the screen and browse for your .ipa file that you exported.

Due to the bugs in Application Launcher you may need to double/triple/quadruple click + throw a chair to get the file browser to open.

If all worked, you will be shown a screen with the details of you app. Make sure it’s correct and click Next. The upload will now start.

If all goes well, your app will be uploaded to ItunesConnect and you can proceed with step 4.

And, that's it, you are done! Go get yourself a celebratory beverage of choice NOW :-)

To find out how reinteractive can turn your web application vision into reality, get in touch with us through our contact form or call us on +61 2 8019 7252.