Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't install Enterprise app to devices with unregistered UUIDs

Tags:

ios

iphone

ipad

I created a universal app. I'm trying to distribute the app using our Enterprise Developer License.

The problem is this: If I install the app on a device that has the UUID registered, the app installs fine. If I "TRY" to install the app on a device that DOES NOT have the UUID registered, the install fails to complete. I get the message "Unable to Download Application " "My App" could not be installed at this time.

Here is the log I'm getting:

Sep  5 10:47:07 my-iPad installd[54] <Error>: 0x2c3000 handle_install: Install of "/var/mobile/Media/PublicStaging/My App.app" requested by mobile_installation_proxy
Sep  5 10:47:08 my-iPad installd[54] <Error>: 0x2c3000 MobileInstallationInstall_Server: Installing app com.mysite.My-App
Sep  5 10:47:08 my-iPad installd[54] <Error>: profile not valid: 0xe8008012
Sep  5 10:47:08 my-iPad installd[54] <Error>: 0x2c3000 install_embedded_profile: Could not install embedded profile: 0xe8008012
Sep  5 10:47:08 my-iPad installd[54] <Error>: Sep  5 10:47:08  SecTrustEvaluate  [leaf CriticalExtensions IssuerCommonName]
Sep  5 10:47:09 my-iPad installd[54] <Error>: 0x2c3000 verify_signer_identity: MISValidateSignatureAndCopyInfo failed for /var/tmp/install_staging.xjOLHU/My Appp.app/My App: 0xe8008015
Sep  5 10:47:09 my-iPad installd[54] <Error>: 0x2c3000 do_preflight_verification: Could not verify executable at /var/tmp/install_staging.xjOLHU/My App.app
Sep  5 10:47:09 my-iPad installd[54] <Error>: 0x2c3000 install_application: Could not preflight application install
Sep  5 10:47:09 my-iPad mobile_installation_proxy[907] <Error>: 0x3cadbb78 MobileInstallationInstall: failed with -1
Sep  5 10:47:09 my-iPad mobile_installation_proxy[907] <Error>: handle_install: Installation failed
Sep  5 10:47:10 mu-iPad installd[54] <Error>: 0x2c3000 handle_install: API failed

I've already done the usual troubleshooting:

  • Create new certs, making sure I had a cert for in-house distribution
  • Create new distribution profiles
  • Made sure the .ipa is using the distibution/adhoc profile for signing
  • Verified that my .plist is correct
  • Installed using a simple webpage (same problem)
  • Installed using iPhone Configuration Utility (same problem)
  • About a million other more esoteric build mods based on other peoples experience etc... etc... etc...

I'm pretty sure the problem is something to do the with distribution profile. The error log seems to point at a problem with the profile ("profile not valid: 0xe800812"). I've talked with Apple support and they say the certs and profiles seem to be right.

One of my support calls confused me. The Apple rep said that you still need to register the UUID of all devices EVEN when building the app for distribution using the Enterprise license. I don't think that this is accurate. From my research, the .ipa contains an embedded profile that is installed and you DON'T need to register all devices.

BUT, like I said earlier: If I run the install on a device that's included in the distribution/adhoc profile, it works. I'm totally confused and desperately need help.

like image 726
JustLearningAgain Avatar asked Sep 05 '13 17:09

JustLearningAgain


People also ask

Can I distribute my app for any device without UDID in iOS?

"No" is the short answer. If you have a Corporate iOS Developer account you can package up apps to be installed directly onto any iOS device (restricted by license) of any employee of your company.

How do I install a provision profile on my Iphone?

New provisioning profileGo to the Profiles section in the developer portal and click the + button. Under Development, select iOS App Development and click Continue. Select the App ID to use from the dropdown menu then click Continue. Select the Certificate(s) to include in the provisioning profile then click Continue.


Video Answer


2 Answers

  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).

Now, if inside this XML document you see a key for ProvisionedDevices, you are not signing with the correct provisioning profile. You need to create a In House provisioning profile instead. In the case that you've correctly signed your application with an In House profile, you will not see the ProvisionedDevices key in your embedded.mobileprovsion file, rather a key for ProvisionsAllDevices, which will be true.

like image 200
mattyohe Avatar answered Oct 07 '22 03:10

mattyohe


The reason for this error is because in iOS 7.1 Beta, the link to the plist must be in https format. If the URL is not provided to you in https format, simply change the http to https, as follows: itms-services://?action=download-manifest&url=https://hostname.utest.com/OTA_App_Name.plist Then, copy and paste the entire link (starting at itms-services) into Safari, and you will be able to download and install the app using OTA.

like image 25
Abdul Yasin Avatar answered Oct 07 '22 03:10

Abdul Yasin



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!