Combining of Expo.plist, eas.json, and app.json settings


We’ve recently ejected our app and are still new to some of the details. We use EAS to build and upload our standalone App Store builds, and have a few questions about configuring our builds via eas.json, Expo.plist, and app.json.

We already noticed that EAS does not rely on app.json’s settings for iOS app’s version and build number, so we’re specifying these in our own Info.plist, but we’re still unsure about some other settings that we use…

  1. Does builds.ios.release.releaseChannel in eas.json override EXUpdatesReleaseChannel specified in Expo.plist, or we should set it ourselves? (noticed that EXUpdatesReleaseChannel gets updated once we run expo publish with a specific release channel)
  2. Which setting should we use for enabling a non-zero fallback timeouts to cached versions of the app? Is it expo.updates.fallbackToCacheTimeout in app.json or EXUpdatesLaunchWaitMs in Expo.plist?

Thanks a lot for your help!

Managed projects are using values from app.json, bare projects from the native code. Whether you use EAS or not does not affect that.

Only thing specific to EAS is eas.json, everything specified there takes priority over app.json/native code

1 Like