Questions regarding production!

I was looking into Expo, and I found a few drawbacks. It says static images are served online using AmazonCDN, which makes them load slow even in production (It says the only solution for now is to cache the static images on the first load).

Do you serve up the app’s code from the server as well, or does the binary stay in the mobile device once it’s loaded once? Will there be any performance issues using expo aside from image loading issue?

Does making bundle with standalone method solve this issue?

Also, if I eject the build to make my own production version after developing using Expo, (because of the static image problem), can I still use their APIs such as notifications and location features?

Hi-

If you build a standalone app, a snapshot of your code will be bundled with the app and distributed through the store so it will run right away even if the user’s device he offline.

That will be a snapshot of the code at the time you created the standalone build though so subsequent published updates to the app will be loaded over the air and will show up the next time the user starts the app after that.

We want to do something similar with assets–so local assets you require will be bundled with the standalone app distribution, essentially prepopulated in the cache–but we haven’t had time for that yet.

Once you eject you can do anything you want, including ripping out the over the air code loading and replacing it with your own that will talk to your own servers or microsoft’s codepush or anything. But by default it will be similar to a standalone build.

Hope this helps!

Also I might be mistaken and the code snapshot might only be on Android right now but it should be on both platforms. I can’t remember if that’s already done yet on iOS unfortunately. @ben might know.

This happens on iOS as well!

Thank you so much for a quick reply!

Where’s the code for “ripping out the over the air code” included?

1 Like

Hey @ccheever, I second this, I would like to know as well.

I think the code you’d want to change is mostly here.
https://github.com/expo/expo/tree/master/ios/Exponent/Api
https://github.com/expo/expo/tree/master/android/expoview/src/main/java/host/exp/exponent

Would be best if someone who has done this could chime in with a guide but I don’t know anyone off the top of my head.