Expo generated ios distribution certs are "untrusted"

I am taking over the Expo build process from a predecessor. I tried downloading/uploading his certs/keys to a new organization based approach to builds, but I can’t get the IPA file to load on to an ipad for testing. I get This app cannot be installed because its integrity could not be verified.”

I tried clearing out his credentials with build:ios -c and let expo create a new distribution cert for me, but when I download it and try to load it into keychain I see that the cert is not trusted. When I download my predecessors old key and try to load it into keychain, I see that it is trusted.

So my guess is I need to make my cert trusted. Any tips on how I go about doing that (or getting Expo to do it as part of the cert generation process)?

expo diag

Expo CLI 4.3.0 environment info:
OS: macOS 11.2.3
Shell: 5.8 - /bin/zsh
Node: 15.3.0 - /usr/local/bin/node
Yarn: 1.22.5 - /usr/local/bin/yarn
npm: 7.0.14 - /usr/local/bin/npm
Platforms: iOS 14.3, DriverKit 20.2, macOS 11.1, tvOS 14.3, watchOS 7.2
Xcode: 12.3/12C33 - /usr/bin/xcodebuild
@expo/webpack-config: ^0.12.16 => 0.12.42
expo: ^39.0.0 => 39.0.3
react: 16.13.1 => 16.13.1
react-dom: 16.13.1 => 16.13.1
react-native: https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz => 0.63.2
react-native-web: ~0.13.7 => 0.13.18
expo-cli: 4.3.0
Expo Workflow: managed

Hi @derekc-growers!

Sorry for the delay. I know you sent us feedback earlier this week related to this.

Apple-related certificate issues are always hard to solve, but you can try some steps:

  1. The “This app cannot be installed because its integrity could not be verified” is sometimes related to an existing app being installed on that device, with different certificates. If you can fully remove the app from the iPad and retry to install it again, that might solve it already.

  2. Make sure the bundle identifiers are properly registered when switching from Apple Developer accounts. I’m not sure if that applies to you, though.

  3. Try creating the iOS certificates with expo credentials:manager before running expo build:ios.

  4. (If nothing else works) Try manually creating the iOS certificates and upload that to our servers using expo credentials:manager

It would be helpful for us to get more context how you reproduced this error, if the above steps didn’t help. E.g:

  • What are you downloading to your keychain
  • Is the app or certificate untrusted
  • How are you installing the IPA on your iPad

Hope this helps!

If you have enterprise apple team then there was an issue few months ago where apple changed their intermediate certificate for enterprise builds. Technically updating xcode and macos to latest version
should update it. In this case whether it’s marked as trusted or not in your keychain dose not matter unless you build your app via xcode.

If you are running appstore builds then it’s not possible to install ipa on the device(unless you are using adhoc provisioning profiles). You need to submit ipa to appstore and install it via testflight

Thanks for the feedback @wkozyra, @bycedric. I was trying to make a build that will install locally, so I need an adhoc profile.

(I moved my adhoc profile build questions to a new thread: adhoc build of project (usually appstore) results in much smaller IPA file)

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.