DEV Community

Discussion on: How to publish an Expo App to the Stores with Release Channels

Collapse
 
yassineldeeb profile image
Yassin Eldeeb 🦀 • Edited

but I've a question:

what if my app is like on version 1.0.0 when I released it manually on the stores for the first time then I'm on version 2.0.0 and that has very major updates that changed the app completely, users that are already downloaded the app got the updates whenever I publish and that's okay, but what about new users that downloads my app from the stores, the stores still have the 1.0.0 version, does that mean if new users downloaded my app from the stores at version 2.0.0 they got the 1.0.0 one, and they get terrible experience for their first load of the application until they reload it to get the new updates.

Thank you for the great explanations.

Collapse
 
ghacosta profile image
Guille Acosta

Hi Yassin, there are a few thing you should now. That v1.0.0 you have submitted to the stores has a pre-cached version of your app included for a quick startup.

Also, Updates are handled differently on iOS and Android. On Android, updates are downloaded in the background. This means that the first time a user opens your app after an update they will get the old version while the new version is downloaded in the background. The second time they open the app they'll get the new version. On iOS, updates are downloaded synchronously, so users will get the new version the first time they open your app after an update.

So there are 2 things you can do for those new users who are downloading your app: * create a new build and upgrade app on stores or

  • update your updates.fallbackToCacheTimeout inside app.json as it will attempt to download a new update before launching the app.

also check official documentation for further information.

Collapse
 
yassineldeeb profile image
Yassin Eldeeb 🦀 • Edited

Thank you for clarifying that difference on how Android and IOS behaves,

So I made a CI in github actions on my repo, I push the code, it does two things:

1- Publish to Expo.
2- Upload the .AAP to the Stores and submit it for review.

So I've the best of both worlds, users get the updates as quick as possible, and new users have the latest version on the stores, your solution was pretty good too "update your updates.fallbackToCacheTimeout" but late unfortunately.

and that was a very great tutorial for that :
docs.expo.dev/submit/android/#crea...