I have problem doing OTA installation for my iPad application. I updated my enterprise certificate last week. and i created new dev/dist certificate and provisioning profile. Xcode organizer shows the correct expire date. when i try to install the app from the link , it downloads half and shows me the error "Unable to donwload Application, could not be installed at this time." I've done OTA installation like more than 50 times before. I rechecked everything. It's not problem of invalid link, or selecting wrong provisioning profile. Any help will be greatly appreciated. I checked the device log and it says:
May 1 13:15:32 unknown installd[2455] <Error>: entitlement 'keychain-access-groups' has value not permitted by a provisioning profile
May 1 13:15:32 unknown installd[2455] <Error>: entitlement 'application-identifier' has value not permitted by a provisioning profile
May 1 13:15:32 unknown installd[2455] <Error>: 00381000 verify_signer_identity: Could not copy validate signature: -402620394
May 1 13:15:32 unknown installd[2455] <Error>: 00381000 preflight_application_install: Could not verify executable at /var/tmp/install_staging.8zrx0B/foo_extracted/Payload/Hra.app
This answer helped me, thank you very much.
Here are my exact steps. I was building an ad hoc from an Xcode project created for me, so the bundle identifier was already created and I had to match it in the steps below.
In your Apple Developer portal:
need to create new certificates first: Distribution Certificate, then toggle to make sure it's reflected in the Developer Certificate. I downloaded both certificates to my computer just out of habit, but Xcode 4.3.2 doesn't require that Keychain Access request step anymore.
Create App ID (make sure it matches the com. bundle created in XCode if that's already been created. In this case the Info file listed the bundle identifier as a wildcard: com.mydomain.${PRODUCT_NAME}. The name of my product has upper and lower case. The App ID is case sensitive so it should match this Xcode bundle identifier/product name exactly.
add any new devices.
Create Development and Distribution Provisioning files - download, and drag each into Xcode.
In XCode:
in Build info file, it worked for me that Code Signing Entity fields were all set to Don't Code Sign
to create archive, clean Target, then making sure the scheme points to a connected device, go to Product -> Archive
the Organizer view of Archives should come up - select the one just built, select Distribute then select Save for Enterprise or Ad Hoc and in the Choose an Identity to Sign With choose Refresh in the drop down, then just leave it on the default and click Next.
Choose Save For Enterprise Distribution - you only need to fill out the top two fields; the url on the server to the .ipa file, and the name of the app.
then upload the files to the directory specified in the last step, customize and send out the link i.e. itms-services://?action=download-manifest&url=http://yourdomain.com/yourdirectories/yourAppName.plist