I have an iPhone app that I've built for the app store. Before I get there, I need to test it internally. So earlier this week I went out, got a distribution provisioning profile and installed it on about 50 devices around my organization. No problem, everything went super-smooth and everybody was happy. So I then cleaned up the code a bit, did some refactoring, and added a bit of polish. At the same time, we had more devices added to the beta (around 10 additional units). So when I was ready to build and run out the second beta, I went out, got a new provisioning profile and archived the build for ad-hoc over the air deployment. Then I tested the app on my phone (which is also the development device), and it failed to install. I checked the device console in Organizer and saw an error that looks like this: <Error>: entitlement 'get-task-allow' has value not permitted by a provisioning profile
. Never mind the fact that when I archived and deployed it just 3 days ago it worked fine without an Entitlements plist. So I thought "OK, just one of those quirks." I added an Entitlements.plist and set the get-task-allow
to YES
. Then I re-archived it with my distribution provisioning profile, and tried to install it to my device and it did install properly. Then I tried it on 2 separate devices-one that had it installed when I successfully deployed it on Tuesday, and one that didn't. Neither one worked. It did the thing where it gets almost to the end and then says "failed to install." So I thought "OK, it doesn't like the Entitlements.plist file. I have read some things that say Apple will reject the app for the app store if it has an Entitlements.plist in the build (is that true? I'd like to submit end of next week, if I can get this stupid beta going again!) I remove the file, archived and deployed it again, and I got the same error. I hooked one of the devices into the Organizer's console, and I got an error message that looks like this:
Jun 29 08:49:13 unknown installd[14394] <Error>: profile not valid: 0xe8008012
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 install_embedded_profile: Could not install embedded profile: -402620398
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 verify_signer_identity: Could not copy validate signature: -402620395
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 preflight_application_install: Could not verify executable at /var/tmp/install_staging.PHE3Kj/foo_extracted/Payload/Lenexa.app
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 install_application: Could not preflight application install
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 handle_install: API failed
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 send_message: failed to send mach message of 71 bytes: 10000003
Jun 29 08:49:13 unknown installd[14394] <Error>: 00381000 send_error: Could not send error response to client
So then I looked up the 0xe8008012
error and I note that people say that you should make sure that the provisioning profile is set correctly in XCode, and to make sure that the UDID in the provisioning profile matches the devices you are trying to install it on.
With this in mind, I tested to ensure that it wasn't a UDID issue by building against the same provisioning file that I successfully deployed against Tuesday. Still no go.
I changed all of the code-signing section on build-settings to look like this:
I read that some people rebuilt the project in XCode. I'd like to avoid doing that. Does anybody have any ideas? I would appreciate any!
I figured this out. Somebody gave me a bad UDID number. To be frank, XCode could do a better job of managing these type of issues. It shouldn't take half-a-day to figure these things out!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With