I want to upgrade the expo version for an old application (v15.0.0) to the latests version. I know I will have to rebuild the APK and IPA and resubmit the applications to their respective store.
My doubt is: Let’s say I upgrade expo in my computer, and then I use the expo API v23.0.0 in my application code. If I publish those changes, my users won’t yet have the version that enables them to use this API, so will their application break? How does this exactyle work?
I didn’t find an explanation anywhere for this case. Can you shed some light into this matter?
If I’m understanding you correctly, your concern is if you publish a new JS bundle of your app that makes use of newer SDK APIs to the production URL that those with an older version of your app would experience app crashes?
In order to circumvent this, you can make use of the new Release Channels API that just dropped in SDK23. https://docs.expo.io/versions/latest/guides/release-channels.html Warning: The RC API is currently in beta.
Your other option is to publish the updated JS bundle to a different slug so that it doesn’t break for users who haven’t updated to your app’s newest version from the respective store. There are some downfalls to this such as
AsyncStorage data not being shared between the two environments.
@ramadis users with the old APK or IPA won’t get the new project published with SDK 23. If their app was built when SDK 21 was the most recent SDK they’ll get any updates you publish to SDK 21 but nothing will change for them when you publish to SDK 22 or 23.