Apple Rejection Due To Entitlements For Mac App Mac Provisioning

On iOS, all apps must go through the App Store. On macOS, the Mac App Store is just one method of distribution and developers are free to publish their apps independently on their own website.

Technical Note TN2407

This document is an index of all of the iOS code signing troubleshooting information. The most important first step is to confirm that your project opts into automatic provisioning; this alone solves many code signing problems. The processes documented by Apple to Run on device, Beta Test, or Submit your app all involve code signing and their related code signing errors are covered in the subsequent sections.

Follow workflows documented by Apple to Run on device, Beta Test, or Submit your app
List of Code Signing Errors

Introduction

The first step in troubleshooting iOS code signing errors is to configure your project for automatic provisioning. This is the currently recommended and supported workflow, whereas, the manual provisioning process of assigning specific code signing build settings yourself takes longer to do and it is often more problematic.

Ensure your project opts into Automatic Provisioning

The first step to troubleshoot iOS code signing failures is to opt your project into the modern code signing workflow. This is done by enabling automatic provisioning as covered the following guide:

• QA1814 - Setting up Xcode to automatically manage your provisioning profiles.

Follow workflows documented by Apple to Run on device, Beta Test, or Submit your app

The second step in troubleshooting iOS code signing problems is to ensure you're following the proper workflow. The following is a complete list of workflows that involve code signing that are supported by Apple.

Run your app on device through Xcode

• App Distribution Guide > Launching Your App on Devices

Beta Testing

The following are two options to beta test your iOS app:

Comma drama fanboys

  1. TestFlight Beta Testing

    Using TestFlight to beta test iOS apps involves submitting an app to iTunes Connect that is signed with your App Store distribution provisioning profile. Once the app passes your beta tests you simply queue it for release to the App Store through iTunes Connect. This is the preferred method of beta testing because it does not require you to re-build or re-sign the submission for App Store publication.

    • App Distribution Guide > Beta Testing iOS Apps > Distributing Your Prerelease Build Using TestFlight

    Important: Because apps submitted to TestFlight must be code signed with an App Store distribution provisioning profile, TestFlight cannot be used for the beta testing of Enterprise apps.

  2. Ad Hoc Beta Testing

    Important: TestFlight is the preferred method of the distribution of beta test builds because it does not require you to re-code sign the app in order to submit it for App Store publication. Therefore, only use Ad Hoc beta testing if there is a compelling reason that you cannot use TestFlight.

    To beta test iOS apps using Ad Hoc distribution, follow the steps in:

    • App Distribution Guide > Beta Testing iOS Apps > Distributing Your Beta App Using Ad Hoc Provisioning

Submitting to the App Store

Use the following process to submit your app for review:

• App Distribution Guide > Submitting Your App to the Store > Submitting Your App to the Store

Enterprise Distribution

The documented process to distribute Enterprise apps is covered in the iOS Deployment Reference > Introduction

Client and Contractor Distribution workflow

When a development contractor must distribute an app on behalf of the app client/owner, you must follow the workflow for build engineer distribution covered here:

• QA1763 - How can a build engineer distribute an app on behalf of the team?

Enabling code signing on your other Macs

To enable code signing on your other Macs, OS X user accounts or partitions, use Xcode to export and import your code signing assets using the steps in:

• App Distribution Guide > Maintaining Your Signing Identities and Certificates > Exporting and Importing Certificates and Profiles

List of Code Signing Errors

The previous sections ensure that you opt into automatic provisioning and follow the workflow that involves code signing documented by Apple. For persistent code signing issues, consult the following list of code signing topics and their corresponding troubleshooting material.

Missing Certificate or Private Key errors

These errors indicate that you are missing a required certificate or private key that is needed for code signing:

Use the directions in the following guide to correct these kinds of problems:

• App Distribution Guide > Troubleshooting > Certificate Issues

Note: For App Store teams, a majority of missing signing identity related issues can easily be resolved by recreating your certificates. See the following section for steps to do this: • App Distribution Guide > Maintaining Your Signing Identities and Certificates > Re-Creating Certificates and Updating Related Provisioning Profiles.

Important: For Enterprise teams which are missing their distribution certificate or its private key, you must instead consult the following document created specifically for this case: • QA1868 - Missing Enterprise Distribution Certificate Private Keys.

Provisioning Profile related errors

For general provisioning profile related issues such as:

See the following guide's recommendations to resolve them:

• App Distribution Guide > Troubleshooting > Provisioning Issues

For answers to why your provisioning profile's status changes to Invalid, see the document:

• QA1878 - Resolving the Provisioning Profile Invalid Status

Installation Failure

If your app is experiencing an installation failure, consult the resolutions that are covered in:

• TN2319 - Installation Failure Troubleshooting for iOS

Signature Verification Errors

The following errors are related to app validation:

For help with signature verification errors such as those listed above, use the recommendations and troubleshooting steps covered in:

• TN2318 - Troubleshooting Failed Signature Verification. Kameleon urc 8040 instruction manual.

Entitlements Errors

Use the following guides to troubleshooting entitlement related errors:

  1. • TN2415 - Entitlements Troubleshooting

  2. • QA1798 - Checking Distribution Entitlements

This error indicates that Xcode expects a specific entitlement for your app but it cannot find a provisioning profile that contains that entitlement. There are different resolutions to this error depending on the entitlement that Xcode is looking for:

  • beta-reports-active

    See the following document that covers this topic in detail:

    • QA1830 - The beta-reports-active Entitlement.

  • All other entitlements

    1. Sync Xcode's local provisioning profile library with the current state of the Certs, ID's and Profiles website using:

      • Xcode > Preferences > Accounts > (your account) > View Details > '⟳' button.

    2. Thoroughly analyze the Capabilities, Services, Entitlements your app uses with the guidance of:

      • TN2415 - Entitlements Troubleshooting

Other Errors

It's not always possible to infer the subject of all error messages. Check the following list of these types of general errors:

This error primarily indicates that your development Mac is missing the distribution certificate and/or its private key. As a result, Xcode is attempting to generate a new distribution certificate / private key pair on your behalf, however, failed to do so because your team already has the maximum number of concurrently allowable distribution certificates.

Use one of the following options to resolve this error:

  • Transfer the missing certificate or private key to your Mac using the steps in section Enabling code signing on your other Macs.

  • Revoke and re-create your distribution certificate using the steps in:

    • App Distribution Guide > Maintaining Your Signing Identities and Certificates > Re-Creating Certificates and Updating Related Provisioning Profiles

    Important: Enterprise developers must take extra caution when resolving missing distribution certificate private keys, and should instead follow the process covered in a document created specifically for this situation. See QA1868 - Missing Enterprise Distribution Certificate Private Keys.


Document Revision History


DateNotes
2015-08-18

Link new entitlements troubleshooting document.

2015-07-21

Editorial update.

2015-03-16

Moved Application-Identifier issues to the installation failure technical note.

2015-02-03

added information about application-identifier and previous-application-identifiers entitlements

2014-11-13

reorganization of contents

2014-10-14

Including workflow for testing via iTunes Connect.

2014-10-02

New document that provides a starting point to troubleshoot problems in workflows that involve code signing.




Copyright © 2015 Apple Inc. All Rights Reserved. Terms of Use Privacy Policy Updated: 2015-08-18