EAS build fails when adding intercom SDK

Hello everyone and I hope to get an answer from the Expo team on that.

We are trying to add Intercom to our react native app and we have created a build for both Android and iOS.

We have added the intercom SDK GitHub - intercom/intercom-react-native: React Native wrapper to bridge our iOS and Android SDK and the configuration plugin GitHub - cmaycumber/config-plugin-react-native-intercom: Expo plugin for adding @intercom/react-native-intercom using expo config plugins

After building for Android we get the following error:

[stderr] FAILURE: Build failed with an exception.
[stderr] * What went wrong:
[stderr] Could not determine the dependencies of task ':app:lintVitalRelease'.
[stderr] > Could not resolve all artifacts for configuration ':app:debugRuntimeClasspath'.
[stderr]    > Could not resolve com.facebook.react:react-native:+.
[stderr]      Required by:
[stderr]          project :app
[stderr]          project :app > project :unimodules-react-native-adapter
[stderr]          project :app > project :expo-splash-screen
[stderr]          project :app > project :expo-updates
[stderr]          project :app > project :expo-dev-launcher
[stderr]          project :app > project :expo-dev-menu
[stderr]          project :app > project :expo-dev-menu-interface
[stderr]          project :app > project :intercom_intercom-react-native
[stderr]          project :app > project :react-native-community_clipboard
[stderr]          project :app > project :react-native-community_masked-view
[stderr] project :app > project :react-native-community_progress-bar-android
[stderr]          project :app > project :react-native-community_progress-view
[stderr]          project :app > project :react-native-picker_picker
[stderr]          project :app > project :react-native-appsflyer
[stderr]          project :app > project :react-native-date-picker
[stderr]          project :app > project :react-native-gesture-handler
[stderr]          project :app > project :react-native-pager-view
[stderr]          project :app > project :react-native-safe-area-context
[stderr]          project :app > project :react-native-screens
[stderr]          project :app > project :react-native-svg
[stderr]          project :app > project :react-native-ux-cam
[stderr] project :app > project :react-native-vector-icons
[stderr]          project :app > project :react-native-webview
[stderr]          project :app > project :rn-fetch-blob
[stderr]       > Failed to list versions for com.facebook.react:react-native.
[stderr]          > Unable to load Maven meta-data from https://jcenter.bintray.com/com/facebook/react/react-native/maven-metadata.xml.
[stderr]             > Could not get resource 'https://jcenter.bintray.com/com/facebook/react/react-native/maven-metadata.xml'.
[stderr]                > Could not GET 'https://jcenter.bintray.com/com/facebook/react/react-native/maven-metadata.xml'. Received status code 502 from server: Bad Gateway
[stderr] * Try:
[stderr] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
[stderr] * Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.8/userguide/command_line_interface.html#sec:command_line_warnings
[stderr] BUILD FAILED in 1m 43s
Error: Gradle build failed with unknown error. Please see logs for the "Run gradlew" phase.

When building the iOS app instead we get the following:

[!] CocoaPods could not find compatible versions for pod "intercom-react-native":
  In Podfile:
    intercom-react-native (from `../node_modules/@intercom/intercom-react-native`)
Specs satisfying the `intercom-react-native (from `../node_modules/@intercom/intercom-react-native`)` dependency were found, but they required a higher minimum deployment target.
[stderr] [!] `<PBXResourcesBuildPhase UUID=`13B07F8E1A680F5B00A75B9A`>` attempted to initialize an object with an unknown UUID. `9A0304C5E2E94F608932D504` for attribute: `files`. This can be the result of a merge and the unknown UUID is being discarded.
Error: Compatible versions of some pods could not be resolved.
You are seeing this error because either:
  - Versions in the Podfile.lock cached by EAS do not match required values for some of the libraries, it can be triggered when upgrading Expo SDK or any other library with native code. To fix that add the "cache.key" field (it can be set to any value) in eas.json to invalidate the cache.
  - Some of your npm packages have native code that depend on different versions of the same pod. Please see logs for more info.

Seems like on iOS the pod can’t be found while on Android the mirror server is returning a 500

Anyone has any idea on how to solve it without ejecting or having to move away from Expo?

For the Expo team here are the link to the two builds:

  • Managed workflow
  • eas-cli/0.35.0 darwin-x64 node-v12.22.9

Thank you!

Would really appreciate support because we would really like to take advantage of the full integration with Intercom at this point :slight_smile:

for android There was jcenter outage yesterday, builds are working now

for ios

Specs satisfying the `intercom-react-native (from `../node_modules/@intercom/intercom-react-native`)` dependency were found, but they required a higher minimum deployment target.

Seems like on iOS the pod can’t be found

It found the pod it’s just not compatible with the current deployment target, you might need to eject to use that library or write config plugin