Question

I am trying to distribute an in-house enterprise app from my other mac, which is a mac pro. I exported the dev profile following Apple's instructions from my macbook that I have been using to distribute successfully. I imported them on the mac I am trying to distribute from now also following those instructions.

I copied the project folder from my macbook (working distribution) to mac pro (not working) and opened it with Xcode. I then built and archived the project. I then went to Organizer, selected the latest archive, and clicked Distribute...

From there I did what I always do: Select the second option for Enterprise, use the proper provisioning profile, and export it to the server it's being hosted on.

When I click the link to install the app it starts to download just fine but finishes with the weird no icon image as the app icon and when I try to open it the app just immediately closes.

Did I do something wrong in exporting and importing my profile(s)? If not, what else could be the issue here?

Was it helpful?

Solution 2

After hours on the phone with Apple, hours searching forums, and hours of toying with things myself I finally decided to just try to create a new project from the second mac, the MacPro. I created a bundle ID and provisioning profile for it. I downloaded the profile, placed it in Xcode, archived the project, went through the distribution process using said provisioning profile and sure enough the app worked!

This told me that I had actually done the exporting and importing correctly. There was nothing wrong with the mac itself; the problem must've been with the project! I created a new project and simply copied all the individual files over and went through that project's distribution and sure enough it installed and launched without a hitch.

I still don't know what it is about the original project itself that causes it to behave in that manner. I assume there must be something in the project that ties it to the mac on which it was created. From now on I guess I'll either have to save the project on a server or some central location or just keep it on the mac from which it was created.

OTHER TIPS

Please post what is written to the device log while the installation is taking place. You can monitor the device console from the Organizer window in Xcode. Open Xcode and select Window -> Organizer then select Console under your device.

Based on your description I can think of three things that may have caused this:

OTA Over SSL

The device attempting to install the app is running iOS 7.1 and the manifest.plist and ipa are not being served over SSL. Please keep in mind that iOS 7.1 now requires OTA installations to take place over a secure https connection.

Signed with Incorrect Profile

If the device log contains "Unable to preflight application" then the application was most likely not signed appropriately. You can verify that you are indeed using the correct mobile provision by following the steps from this answer: https://stackoverflow.com/a/18642782/1144060

  1. Take your IPA file, rename it to have a .zip extension.
  2. Unzip this file and open the Payload directory in Finder.
  3. Right click your application and click Show Package Contents.
  4. Find the file embedded.mobileprovision, and open this file in a text editor (like TextEdit).

If the embedded.mobileprovision contains an entry for ProvisionedDevices then you are signing with an Ad Hoc or development profile and not with your enterprise profile.

Missing Private Key

Unless the enterprise certificate is managed by Xcode (e.g. you created the enterprise certificate from within Xcode) it is likely that Xcode does not manage it in the same way it manages your other profiles.

Our build machine has multiple ADC accounts configured in XCode 5. When attempting to initialize a new build environment I exported the profiles and imported them into the new build environment. The enterprise certificate and key were not created by one of the accounts registered in Xcode. The enterprise certificate and key were not transferred.

On your macbook open Keychain Access.app and selected the Certificates Category on the lower left. Your enterprise certificate will be shown in relation to the private key. Select both of them and then select File... -> Export. Enter a password to protect the p12 file.

Copy the resultant p12 file (Named Certificates.p12 by default) to your mac pro and double click the file to import it into your default keychain using Keychain Access.app

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top