I’m trying to build an IPA for an Enterprise Dev Account - supplying both cert & mobile provisioning profile myself rather than letting Expo create those.
The build logs show that the certificate passed its import and all that jazz. However, it than fails trying to build & sign the IPA. And, honestly, the output is complete gibberish to me. Any help would be very much appreciated!
building and signing IPA
[21:25:02] Using gulpfile /usr/local/turtle-agent/tools-public/gulpfile.js
[21:25:02] Starting ‘ios:build-and-sign-ipa’…
provisioning profile copied to home directory
done retrieving provisioning profile data
checking if teamID is present in keychain and that certificate is valid…
ensured certificate is valid
writing export-options.plist file…
created export-options.plist file
generating IPA…
[stderr] /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/fastlane_core/lib/fastlane_core/ui/interface.rb:163:in build_failure!': [!] Error packaging up the application (FastlaneCore::Interface::FastlaneBuildFailure) [stderr] [21:25:17] 'ios:build-and-sign-ipa' errored after 15 s [stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/fastlane_core/lib/fastlane_core/ui/ui.rb:17:in method_missing’
[stderr] [21:25:17] Error: Process exited with non-zero code: 1
[stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/gym/lib/gym/error_handler.rb:112:in handle_package_error' [stderr] at ChildProcess.child.on (/usr/local/turtle-agent/tools-public/node_modules/@expo/spawn-async/build/spawnAsync.js:39:21) [stderr] at emitTwo (events.js:125:13) [stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/gym/lib/gym/runner.rb:121:in block in package_app’
[stderr] at ChildProcess.emit (events.js:213:7)
[stderr] at maybeClose (internal/child_process.js:927:16)
[stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/fastlane_core/lib/fastlane_core/command_executor.rb:93:in execute' [stderr] at Socket.stream.socket.on (internal/child_process.js:348:11) [stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/gym/lib/gym/runner.rb:117:in package_app’
[stderr] at emitOne (events.js:115:13)
[stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/gym/lib/gym/runner.rb:27:in run' [stderr] at Socket.emit (events.js:210:7) [stderr] at Pipe._handle.close [as _onclose] (net.js:545:12) [stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/gym/lib/gym/manager.rb:19:in work’
[stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/gym/lib/gym/commands_generator.rb:44:in block (2 levels) in run' [stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:178:in call’
[stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/commander-fastlane-4.4.6/lib/commander/command.rb:153:in run' [stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/commander-fastlane-4.4.6/lib/commander/runner.rb:476:in run_active_command’
[stderr] from /usr/local/lib/ruby/gems/2.4.0/gems/fastlane-2.95.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:75:in `run!’
unable to build and sign IPA
Hi! Can you successfully log into the Apple developer site? Some people have hit this issue because they need to sign the new privacy agreement. Also make sure that you are on the latest version of exp.
Yup! First thing I did was sign out of my old apple dev account and log into the new one I have that’s attached to the Enterprise account. That’s also when I stepped through the [annoying!] process of creating and uploading the certificate. Might I add that waiting to get the ability to create an “In-House and Ad Hoc” certificate was a painful 2 weeks.
I didn’t have the latest exp version at first - but I did the global update on my system and was still getting the issue.
I should mention - and maybe this is the issue - that when exp asks for the distro cert and push notify cert, I’m using the same one. The Medium post I followed didn’t really add any explanation to creating a separate push cert.
Hey @vasya128,
we have more detailed logs which we intentionally don’t show to users, it turns out that you uploaded wrong provisioning profile. It’s not associated with distribution certificate you provided us with.
I’ve got it to finally build, but now it won’t install OTA on a device. It says “Unable to install “…””
I connected it to a Mac and viewed the logs via the Console. This seemed like the failure:
error 21:35:11.382675 -0400 appstored [CoordinatorStore]: <IXInitiatingAppInstallCoordinator<0x15a123410> identifier:com.**. uuid:1E5514C4-A735-4E8F-9679-224496F47D5C creator:App Store state:IXAppCoordinationStateErrorOccurred> with UUID 1E5514C4-A735-4E8F-9679-224496F47D5C was canceled with reason: Error Domain=IXUserPresentableErrorDomain Code=1 “This app could not be installed at this time.” UserInfo={NSLocalizedDescription=This app could not be installed at this time., NSUnderlyingError=0x157d20650 {Error Domain=MIInstallerErrorDomain Code=13 “Failed to verify code signature of /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.Z9yoOu/extracted/Payload/ExpoKitApp.app : 0xe8008016 (The executable was signed with invalid entitlements.)” UserInfo={NSLocalizedDescription=Failed to verify code signature of /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.Z9yoOu/extracted/Payload/ExpoKitApp.app : 0xe8008016 (The executable was signed with invalid entitlements.), LegacyErrorString=ApplicationVeri
[ODRLaunchServicesObserver]: Application com.. is invalid, ignoring the install notification from LaunchServices
The build ID for this is:
74f12c7b-b682-4bc8-8eb0-d003721ff317
Could you try both deleting distribution cert/push cert/provisioning profile on apple developer website and cleaning credentials on our servers - exp build:ios --type archive --clear-credentials? I suspect something i still wrongly generated/you uploaded wrong credentials. exp build:ios will regenerate them for you. Let me know if it helped.
1st issue was with the certificate. I don’t know if it was bad or exported the p12 wrong or maybe it was a “simple” password I put on it. But I exported again with a stronger password and the ipa was able to be built.
The 2nd issue had to do with the “entitlements”. I had a list of domains in the “associatedDomains” object in the app.json, but I guess it didn’t like it? I removed it and boom - everything works!
Have you tried recreating the P12 with a strong password? Both letters, numeric characters and special characters?
Also, whats your app.json look like? It wasn’t until I got it built and it was failing to install that I check logs during install to see that I had data in the associatedDomains that was causing failing to install.