iTunes Connect rejection "Invalid Binary"

Issue

A viewer app submission is rejected in iTunes Connect with the message, "Invalid Binary." An email from Apple provides further detail, indicating "The following keys cannot have wildcards in their values..."

Solution

Disable iCloud for your application and resubmit your binary.

  1. Sign in to Apple's iOS Dev Center.
  2. Click the iOS Provisioning Portal link in the upper right.
  3. Click the App IDs link on the left.
  4. Locate the App ID that corresponds to your app and click the Configure link that appears in the Action column.
  5. Deselect "Enable For iCloud", "Enable for Passes" and/or "Enable for Data Protection". A warning appears, advising you that it's necessary to re-create provisioning profiles associated with this App ID. Click OK.

  6. Click Done.
  7. Click the Provisioning link on the left.
  8. Locate the Provisioning Profile for the associated App ID, click the Edit link under the Actions column, and click Modify.
  9. Ensure that all settings are as you want, then click Submit.
  10. Refresh your browser window until the Download button appears under the Actions column. Then, download and replace this profile as the profile to use in the Viewer Builder.
  11. Click the Distribution tab in the Provisioning section, and repeat steps 9-11 with this profile.
  12. In Viewer Builder, select your app and click Edit. Walk through the settings ensuring that you specify the updated provisioning files.
  13. Retest your app.
  14. After you have tested your app, return to Apple's iOS Dev Center.
  15. Click the iTunes Connect link in the upper right.
  16. Click Manage Your Applications.
  17. Click the App icon.
  18. Click View Details.
  19. Click Ready To Upload Binary.
  20. Continue through the submission process until the app status is Waiting for Upload. Then, use the Application Loader to upload the corrected binary.

Additional information

Currently, Adobe App/Viewer Builder-created apps don't support iCloud, Passes, or Data Protection features of iOS. Enabling them in the iOS Provisioning portal causes the Application Loader, to reject the binary based on missing values expected when those features are enabled. (The Application Loader performs some preflighting before uploading the binary.)

The following is an example of the detailed message explaining the rejection of the viewer app based on iCloud enablement. Passes and Data Protection are expected to be similar:

Invalid Code Signing Entitlements - The signature for your app bundle contains entitlement values that are not supported. For the com.apple.developer.ubiquity-container-identifiers entitlement, the first value in the array must consist of the prefix provided by Apple in the provisioning profile followed by a bundle identifier suffix. The bundle identifier must match the bundle identifier for one of your apps or another app that you are permitted to use as the iCloud container identifier.

Specifically, value "G3Z86DQZ5B.*" for key "com.apple.developer.ubiquity-container-identifiers" in viewer is not supported.

Invalid Code Signing Entitlements - The signature for your app bundle contains entitlement values that are not supported.

Specifically, value "G3Z86DQZ5B.*" for key "com.apple.developer.ubiquity-kvstore-identifier" in viewer is not supported.

Once these issues have been corrected, go to the Version Details page and click Ready to Upload Binary. Continue through the submission process until the app status is Waiting for Upload and then use Application Loader to upload the corrected binary.

 

Get help faster and easier

New user?