Apple Watch, Failed to install XXX, error: Application Verification Failed - ios

We submitted an app recently with Apple Watch support. It installed from the App store fine but when preparing an update, we can't get it to install on a real Apple Watch anymore (fine in simulator). We have tried installing using Apple Testflight Beta and Ad Hoc builds (we, the developers do not have an actual device ourselves, just a remote tester).
The only significant thing that has changed is that we have updated to XCode 6.3 since the first release.
I have tried:
Adding/removing beta-reports-active: Debug on real Apple Watch: Application Verification Failed
Verified that the deployment target is iOS 8.2.
UUID for watch and phone are in the provisioning profiles
Provisioning seems OK when examining IPA bundle and it can be uploaded to Apple Testflight
Rebooting XCode, machine, etc.
The one thing that is suspicious, is that when exporting the IPA from XCode, the entitlements summary for the watch app have a circle/cross for the icon (no error is reported though). Also, the keychain-access-groups value is by default set to the Watch app's bundle id (not the host app). I have tried creating my own entitlement file to match though, and this doesn't seem to do anything. I would attach a screenshot but I don't have a 10 reputation...
Any help with this would be great. It is very hard debugging when you don't have the actual device. I have to make builds and wait for the one remote tester to try. Then repeat...
Update:
Now that I have the rep, here is the screenshot:
I did get a watch. The first time I tried to install it, it gave the same error. I then tried debugging in Xcode. It would install through Xcode (Xcode created provisioning XC profiles). Subsequently, I could get it to install using Testflight Beta. However, it still would not install for our external tester!

Check your certificate entitlements. Go to apple developer center and accept the new entitlement if any. Make sure you are not using beta Xcode to publish the app.
Try validating the build before pushing to Test flight(validate in archive area) and also do check the certificate is a distribution certificate.

Related

Xamarin Deploying iOS App Ad Hoc Failing to Install

I am trying to deploy an iOS app Ad Hoc to an iPhone for beta testing. I've been developing the app on Windows VS, I have a Macbook air with all the necessary software (Xcode, VS, etc), and I have paired to it with VS on my Windows machine. I have also followed the following steps:
Created an Apple Developer account
Created an App ID with the bundle identifier as the same exact one as the one in info.plist
Created a signing certificate using my Macbook Air, downloaded it, and installed it into XCode
Created a provisioning profile with the App ID and the certificate, and made sure to include the device that I want to load the app onto.
Made sure everything above was set to "distribution" and "ad hoc" as needed.
Set Bundle Signing in my iOS project properties to Manual Provisioning, and selected the Signing Identity and Provisioning Profile to the ones that I created for this deployment.
Set the build to Release and the target to Remote Device
Ensured that the deployment target in info.plist was set to the highest available, which is 15.4, though my iPhone is at 15.6 (could this be the problem?)
Set the IPA Packaging Options to "Build iTunes Package Archive (IPA)"
Set "Include iTunesArtwork images and the iTunesMetadata.plist" to true in the same area
Successfully built the iOS project and produced a .ipa file
After all that, I've been trying to get the .ipa onto my phone, which is definitely the device I added to the provisioning profile.
I've tried two methods to do this, and both have failed:
Connecting my phone to my Windows machine and opening iTunes. Dragging the .ipa file onto the device. The app shows up on my phone, but when I try to open it, I get this error:
"This app could not be installed because its integrity could not be verified". Though it should have been.. The device is linked to the provisioning profile that was used to create the darn thing.
Connected my phone to my Macbook Air and accessed the device through XCode > Window > Devices and Simulators. I emailed myself the .ipa file and downloaded it onto the machine (the Microsoft docs explicitly state that emailing the .ipa should work just fine). In the "Intalled apps" section of the device, I clicked the little '+' and then pointed it to the downloaded .ipa. After a few seconds, it pops up an alert window that says "Unable to install *.iOS".
Other things I have tried since this has been a problem:
Recreating the above steps by re-registering my device, creating new certificates, downloading, installing, all that business.
Messing with the deployment target version.
Jumping out from behind the couch and startling it to make it do what it's supposed to.
I swear I'm done with Xamarin forever after this problem is solved, but all the headaches I've experienced have made me think twice about whether to even bother with .NET Maui haha thanks for any help you can provide
Firstly, the error This app could not be installed because its integrity could not be verified" may be caused by the proper certificate or the test devices are not visible in 'Devices' (UDIDs added) in developer.apple.com/account.I found two simialr issues, you can refer to them: link1, link2.
Secondly, have you follow this docs on how to generate the IPA file?

How to get logs on why an IPA won't install on an iPad/iPhone

A Xamarin Forms app for iOS built using VS 2k19, with apparently everything (certs, app-ids, provisioning profile) done by the book will not install on the corresponding iPhone and iPad.
There is just a darkened icon, and a message ".... app cannot install. Please try again later." or something to that effect.
This previously worked with a wildcard profile, but I had to change this to a specific profile for App Domain Associations entitlement. I do believe I have the bundle id and everything correct. Still, despite various attempts , the app will not install.
I don't have the devices so I have to do this in a convoluted effort of trial and error. Is there some way of asking the testers to get some detailed logs on why iTunes will not install the app, or the app cannot launch?
Add Your Device UDID and generate provisioning profile again by selecting all devices.
To get logs I installed iTools and used the Console Logs feature while the install was happening. This is because my device was only being used to install the ipa, while builds were using macincloud.
The actual issue was interesting. In the entitlement.plist I had app domain association and push notifications set. The same in app Dev center. However, if the app Dev center does not have push entitlement fully configured, with push cert, the entitlement is ignored and the lists fail to match. Removing push temporarily fixed the install. The error manifests in install logs as a signing verification failure.

Unable to install iOS app locally on phone after moving to distribution stage

I have recently switched my app from the development to the distribution stage, but now I'm unable to install the app from Xcode to my test phone directly. The simulators work but I need to test this on an actual device, and testflight just takes too long for what I want to test.
When attempting to install the app to my phone via Xcode, I get this error
Failed to code sign <App Name>.
None of the valid provisioning profiles include the devices: <device name>
However, this device is set up on my developer account with the correct UDID and everything.
I'm wondering if its still possible to install my app directly from Xcode onto my device, and how to do so if possible.
Thanks!
Thanks to #Darklex, it turned out that under the build settings in my target application, I had somehow managed to change the code signing identity to iOS Distribution when I needed it as iOS Development.

Beta from Crashlytics fail to install build on testers' devices

I'm sending my app to testers with Beta from Crashlytics which is an amazing tool to do app testing.
I had every new tester's device UDID registered in my developer account and then distribute a new build.
My testers got email invitation and accessed app's installation which could not be completed on their device.
They kept seeing an alert showing up with message:
Unable to download app - MyApp could not be installed at this time -
Done / Retry
Testers' testing status are "installed" in my Crashlytics dashboard but they're actually not able to finish installation.
Please help me find any possible factor causing this problem.
Perhaps the provisioning profile embedded in the build has been invalidated. Use Xcode to create a new archive, then use Fabric to upload a new build with that archive.
Discussion:
In my case, I had deleted the provisioning profile in the Apple Developer Member Center that had been embedded in each of my Fabric Beta builds. This caused the app testers had previously installed to immediately crash when they tried to launch it (embarrassing). It also caused the "Unable to download app - MyApp could not be installed at this time - Done / Retry" issue when testers tried to (re)install the app via Fabric Beta. Uploading a new build with my new provisioning profile embedded fixed the issue (each tester had to install the new build).
I've run into this problem back on iOS8 and just recently saw it again for iOS9, the only thing that solved the install issue was for my users to delete any previous version that they had downloaded, restart their phone, and try again.
You can also verify with them if Crashlytics properly installed on their iDevice, I've seen more than once where the configuration profile caused the issue, it's worth removing that (Settings -> General -> Configuration Profile (towards the bottom)) and retrying the install.
This is usually caused by one of two problems:
Incorrect provisioning profile/code signing settings. Double- and triple-check that the following settings are the same for the project and the provisioning profile: bundle identifier, development vs. distribution, adhoc.
Caching - sometimes, even when you've done everything correctly, things still just go awry. In such cases, you can try: deleting the previous version of the app from your phone, cleaning your project, deleting and re-downloading provisioning profiles, and building the app again.
RubyMotion Solution
For me, it was because I was using a development distribution profile, but with the wrong entitlements. Well, entitlement, singular.
I still had the 'beta-report-active' entitlement enabled, which was not included with the development distribution profile I am using. It is instead included with the production distribution profile (which is needed to distribute to TestFlight). However, I just wanted to deploy to my local phone, and not air my dirty app laundry to my entire internal test group, so this is where I found myself.
In any case, removing the 'beta-report-active' entitlement fixed my issue.
I tried the normal route of checking for proper certs and also deleting the app and provisioning profile along with rebooting device. In my case it was installing on device A and not device B. Device A was older iPhone 5c running iOS 9 and device B was newer iPhone 8 running iOS 11.x. When I archived the app for distribution I was selecting device A during the archive. Once I selected "Generic Device" it worked. But I'm sure I've built in the past selecting a specific device instead of generic and it worked. I was using Xcode 8.2, but I don't believe the Xcode version matters.

iOS 8 TestFlight does not install app

So as the title says, I am trying to pre-release an ios8 app. The app is uploaded successfully from the archive and appears under pre-release. I press on submit for beta release and add internal test users. In testflight the app appears, but when I press install it says:
"Could not install app, testflight is currently unavailable. Try again later".
This makes no sense. I tried recreating the developer profiles, I tried it on different devices with different account... always the same. Any ideas?
I re-downloaded the distribution profile for the app and re-archived the app. Now TestFlight works. Make sure that you select a Distribution profile (not Development)
Full description with pictures ... https://stackoverflow.com/a/30801899/294884
I had the same issue with one application for internal users... This worked for me:
Go to Prerelease -> Builds
Turn Off Beta Testing
Refresh testflight at your device (Build will appear as unavailable)
Turn On Beta Testing
Refresh Testflight at your device and install
Same error. My provisioning file was inactive in iOS developer portal as my certificate was revoked by other developer. I'd to activate the provisioning file with new certificate (exported from keychain by that very developer). So, I'd to use these new provisioning and cert to archive my app.
None of the solutions worked for me. I had the problem, that I couldn't update the gems version (an earlier version was already installed) with the same error message.
Turns out, re-inviting the affected user solves the problem.

Resources