iOS Enterprise distribution - Steps?

246 views Asked by At

I've just bought the iPhone enterprise program. My understanding is:

  1. Create a Prod cert
  2. Create a new App id
  3. Create a Prod prov profile using that app id (2) and that prod cert (1).
  4. Create the app, archive it using the prov profile (3)
  5. Create a plist file in DB (or other https server) for distributing the app OTA, like we did with ad-hoc ipa files.
  6. Upload the IPA file somewhere and the plist file (5) will point with it.
  7. Enjoy the app in all the devices I want

I followed these steps and I cannot install the app. Always get an error message. Do I need to add manually all the UDIDs first and assign them to the Prov Profile of 3)?

The error log in my device is something like this:

Jun 23 13:03:53 MyIpad installd[34] <Error>: 0x485000 +[MIInstallable installablesAtURL:packageFormat:userOptions:error:]: 52: Failed to inspect package at file:///private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.QICyA0/extracted (Error Domain=NSPOSIXErrorDomain Code=2 "_IterateDirectory for file:///private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.QICyA0/extracted/Payload returned No such file or directory" UserInfo=0x165b5630 {FunctionName=-[MIFileManager urlsForItemsInDirectoryAtURL:error:], SourceFileLine=413, NSLocalizedDescription=_IterateDirectory for file:///private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.QICyA0/extracted/Payload returned No such file or directory})
Jun 23 13:03:53 MyIpad itunesstored[77] <Error>: 0x481000 __MobileInstallationInstallForLaunchServices_block_invoke240: Returned error Error Domain=MIInstallerErrorDomain Code=6 "Failed to inspect package at file:///private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.QICyA0/extracted" UserInfo=0x14768e20 {LegacyErrorString=PackageInspectionFailed, FunctionName=+[MIInstallable installablesAtURL:packageFormat:userOptions:error:], NSLocalizedDescription=Failed to inspect package at file:///private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.QICyA0/extracted, SourceFileLine=52, NSUnderlyingError=0x14620a40 "_IterateDirectory for file:///private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.QICyA0/extracted/Payload returned No such file or directory"}
Jun 23 13:03:53 MyIpad itunesstored[77] <Warning>: ERROR: MobileInstallationInstallForLaunchServices returned nil
Jun 23 13:03:53 MyIpad lsd[70] <Warning>: LaunchServices: installation failed for app com.mybundle.xxx
1

There are 1 answers

1
nano On BEST ANSWER

I initially thought my problem was related with the OTA process... but I tried to just move the IPA file to iTunes and sync with one of my devices.

Surprise: "The app xxx.ipa could not be added to your iTunes library because it is not a valid app."

The problem was related with the app itself or the signing, not with OTA. I decided then to recreate the prov profile again, even the app id. No luck.

After investigating I discovered that

Application requires iPhone environment:NO

can cause this problem... I had moved it to NO because my app is just for iPads. Silly me!

Moved this to YES again and bingo... Installed also throught OTA.