Deploying Standalone Builds

#1

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.

#2

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

#3

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?

#4

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,
       ...
closed #5

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

#6

yes, that is correct.