iOS Ad Hoc installation failing
Asked Answered
O

3

6

I'm getting the following error when I try to install an app via TestFlightApp.com.

"Unable to download application. "helloworld" could not be installed at this time.

I've also tried installing via iTunes and the Apple Configurator.

When I first got this error, I thought it might be due to Apple's developer program being down a few weeks back, so I regenerated all my certificates using the code signing request on my laptop, then rebuilt all my provisioning profiles.

I then deleted all the profiles from my iPhone, and from XCode, and I deleted TestFlight from my phone.

Then I archived the app, uploaded to test flight, gave permission to all the devices in the profile, and sent the notification emails with the download link.

When I try to download, the progress bar gets nearly all the way to the end then the error pops up. This is what I see in the Console during installation (from the iPhone Configuration Utility):

SpringBoard[67] <Warning>: Killing com.helloworldapp for app installation
installd[53] <Error>: 0x2c6000 handle_install: Install 
    of "/var/mobile/Media/Downloads/-2429066128781955904/-410631401396950200" 
    requested by itunesstored
installd[53] <Error>: 0x2c6000 MobileInstallationInstall_Server: Installing 
    app com.helloworldapp
installd[53] <Error>: Aug 23 11:45:37  SecTrustEvaluate  
    [leaf CriticalExtensions IssuerCommonName]
installd[53] <Error>: 0x2c6000 verify_signer_identity: 
    MISValidateSignatureAndCopyInfo failed for
    /var/tmp/install_staging.a1ku9y/foo_extracted/Payload/helloworld.app/helloworld: 0xe8008017
installd[53] <Error>: 0x2c6000 do_preflight_verification: Could not verify 
    executable at /var/tmp/install_staging.a1ku9y/foo_extracted/Payload/helloworld.app
installd[53] <Error>: 0x2c6000 install_application: Could not preflight 
    application install
itunesstored[71] <Error>: 0x183b000 MobileInstallationInstall: failed with -1
installd[53] <Error>: 0x2c6000 handle_install: API failed

So I've got brand new certificates and profiles, the profile has the devices I'm trying to install embedded and I've given permission to those devices in TestFlight.

I'm at a loss now, I've fixed similar problems to this in the past, so I've run out of all my usual ideas.

And I've tried increasing the version number as well, (that's worked in the past) but no luck.

I recently moved the project from my /Users/ folder to an external hard drive, but I've updated all the necessary paths and I can build the app and run it via Xcode so I can't see how that's the problem.

UPDATE: Thanks to Jason's answer I've managed to get a different error from the Apple Configurator

A signed resource has been added, modified or deleted
-402620393
com.apple.mdk.amderror

UPDATE: For completeness, here's the error I get on the iPhone when trying to sync via iTunes:

iTunes Sync: 'helloworld' failed to install
Outstrip answered 23/8, 2013 at 17:29 Comment(2)
The code signing request I used to make the certificates is old - I used it a while back, do I need to create a new request file everytime I make certificates?Outstrip
So in the end, I got a teammate to clone the repo on his mac, generate new certificates and profiles, and he submitted the app to the app store without a problem. I tried submitting to the app store, and got code signing errors. I think the problem is to do with my moving the project onto an External HDD. I'll try building a new project on the HDD, cloning it from GitHub and see if that solves my problems.Outstrip
O
2

The problem was my external hard drive, I'm 100% certain of this because I copied the project folder back onto my SSD, built and compiled with the same certificates and now it's gone through test flight.

It's a cheap USB hard drive I bought as my Macbook drive is full and I haven't saved up enough for a new one yet. I would recommend not building on an external HDD

I'm not 100% sure but I'm guessing my code signing certificates were only valid for the HDD that the project was originally created on, moving it to the HDD may have been like moving the folder to a different computer altogether, invalidating the code signing.

If anyone else could confirm or reinforce my theory that'd be great, but certainly moving the project back to the built in HDD of my laptop, the project's original location, resolved the problem for me immediately.

Outstrip answered 16/9, 2013 at 18:59 Comment(1)
Some people just throw out downvotes because they like to shoot first and ask questions later, it's called impatience.Vltava
G
8

I work at TestFlight. On upload we try to catch every scenario we can to prevent this, but some cases aren't catchable or we haven't seen before. And the iPhone's error message "Unable to download application" doesn't give you much information.

The best thing to do in this case is to take your IPA (the same one you upload to TestFlight) and install it manually onto the device. This is pretty easy if you use Apple's Configurator. If Apple's Configurator can't install it, the issue is not caused by TestFlight and hopefully the Configurator will give you better error messages that will help solve the issue. If it can install it, then it is probably a TestFlight issue and you should send us a support request here.

Either way, let me know what happens. Hopefully, we can put another upload check to prevent this case the next time.

Guildsman answered 23/8, 2013 at 17:43 Comment(3)
I tried to install through iTunes and that failed as well - I'll try the configurator and see if it gives a better error messageOutstrip
Yeah it's a lot easier than iTunes and you don't have to sync or anything.Guildsman
It's the external hard drive. I moved the project back to my internal SSD, built, deployed, all fine.Outstrip
O
2

The problem was my external hard drive, I'm 100% certain of this because I copied the project folder back onto my SSD, built and compiled with the same certificates and now it's gone through test flight.

It's a cheap USB hard drive I bought as my Macbook drive is full and I haven't saved up enough for a new one yet. I would recommend not building on an external HDD

I'm not 100% sure but I'm guessing my code signing certificates were only valid for the HDD that the project was originally created on, moving it to the HDD may have been like moving the folder to a different computer altogether, invalidating the code signing.

If anyone else could confirm or reinforce my theory that'd be great, but certainly moving the project back to the built in HDD of my laptop, the project's original location, resolved the problem for me immediately.

Outstrip answered 16/9, 2013 at 18:59 Comment(1)
Some people just throw out downvotes because they like to shoot first and ask questions later, it's called impatience.Vltava
G
0

Then I archived the app, uploaded to test flight, gave permission to all the devices in the profile, and sent the notification emails with the download link.

You must add the devices to the profile before you build and archive the app. The list of approved devices is bundled in the app, not checked online at install time.

Granados answered 23/8, 2013 at 17:34 Comment(1)
My provisioning profiles have all the devices embedded. Once you upload a build to TestFlight you then have the option of choosing which approved device is capable of download the build - the list is based on the embedded device list, and I have all devices selectedOutstrip

© 2022 - 2024 — McMap. All rights reserved.