Deploying Standalone Builds

I have an ejected ExpoKit project and I just distributed an AdHoc build. To do this, I published it via exp publish and created the iOS binary via XCode. I’m noticing that the app requires a network connection to load, although my homepage should load fine because it doesn’t kick off any network requests.

I’m assuming that a network request is required because Expo needs to pull down the JS bundle on each launch of the app. Is that true?

If so, why isn’t a local copy of the JS bundle wrapped up with the app binary? This seems like a huge issue to me because it prevents having an offline mode in your app, due to Expo needing to fetch a remote JS bundle each time the app loads up.

hi there. the js is bundled with the app but it checks for updates when you first load it. you can disable this behavior with https://docs.expo.io/versions/latest/guides/configuration.html#loadjsinbackgroundexperimental

in our next release there will be more fine-grained control and without the “experimental” flag

But when I turn off internet connectivity, the app never loads. It’s just a white screen. If the JS bundle is local, why is there just a white screen there forever?

Is this expected?

Sorry, I’m just still not understanding how to configure this. So let’s say I have an ExpoKit project and I want it to load the local JS bundle when the user opens the app without a network connection.

Are you saying I should set the loadJSInBackgroundExperimental flag to true in app.json?

"expo": {
    "sdkVersion": "25.0.0",
    "ios": {
      "loadJSInBackgroundExperimental": true,
       ...

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

yes, that is correct.