Uploading an App
The following steps take place after you have built an App and are ready for further feature testing.
- If you haven't already, make sure you follow Adding Certificates and Keys for Apple Development Account.
- Open Xcode.
- Things to double-check before attempting to upload:
- Check that the right Certificates are enabled before proceeding. For instance a Development Certificate could be named → Signing Certificate: Apple Development: Olivia Jones(9352RKKN4C) this naming scheme and number can be seen on the Xcode window and should match what is displayed in the keychain. There shouldn't be any issues associated with the Distribution Certificate as they are all registered with the Appalachian State Team ID → 5C285B8A37. Should there be any issues, the error messages will be displayed on the Signing and Capabilities window or during an attempt to Upload.
- Automatic Signing may have auto-generated Certificates which you should NOT use. Ensure that the Certificates you downloaded are the ones being used in Xcode.
- Auto-generated Certificates will also show up in your keychain, delete them and restart Xcode. If that does not fix it, restart your computer.
- There is a tab under Settings → Account where you can manage your Certificates. Do NOT press the plus button or attempt to change any of the Certificates.
- Ensure Identifiers Match.
- Based on the name of a saved project in Xcode, the Bundle Identifier name will already be auto-generated. It will most likely not be the same as the Bundle Identifier assigned by Faculty. Make sure to change it so that it can upload to Xcode.
- Ensure macOS, iOS, etc tabs all have the correct Team selected. A picture of the error is below, under macOS a red circle with an 'X' indicates errors. In this case, you just need to set up your Team.
- Check that the right Certificates are enabled before proceeding. For instance a Development Certificate could be named → Signing Certificate: Apple Development: Olivia Jones(9352RKKN4C) this naming scheme and number can be seen on the Xcode window and should match what is displayed in the keychain. There shouldn't be any issues associated with the Distribution Certificate as they are all registered with the Appalachian State Team ID → 5C285B8A37. Should there be any issues, the error messages will be displayed on the Signing and Capabilities window or during an attempt to Upload.
- Now that everything is set up, go to Product and then Archive
- When you are creating a build, there may be a popup asking if you'd like to enable Automatic Signing. Press Don't Ask Again
- If your build succeeds, a popup window will show up, prompting you for your device's local password (there will be several times you have to enter your password.) To bypass it in future uploads, press Always Allow each time you enter your password.
- You will then be brought to the Organizer, which can be found under the Window tab if you have previous builds.
- Click Distribute
- Click Distribute
- Most likely you will upload to TestFlight Internal, but depending on use case App Store Connect is also an option. Select Distribute again and Xcode will then begin preparing to upload your App.
Note
Uploading to App Store Connect is required for external testing. If you would like friends, family, or other students outside of the Developer Account to have access to the App, it will need to be uploaded to App Store Connect. Faculty will be in charge of adding External users.
- This version of your App can now be found in App Store Connect, available for grading and testing in TestFlight.
Uploading & Build Errors
- Faculty will ensure that the proper rights are given to students before uploading Apps.
- NOTE: Even with the correct certificates, there may be issues preventing a successful Upload. Take note of any error messages, and try to fix them before attempting an upload.
- If there are no issues within your code, but you end up with errors when attempting to Archive and Upload, check for the following:
- Certificates have been properly downloaded to your device Pictures of matching Identifier in Keychain & in Xcode
- Certificate Identifiers match up with what is being used in Xcode
- Xcode Automatic Signing is turned off
- Appalachian Development Team is selected
- The Provisioning Profile has been imported
- Sometimes Xcode requires a restart in order to sync properly
- If problems still persist, reach out to faculty