Constants.manifest.version reports incorrect app version

#1

I show Constants.manifest.version in the app as the app release version, but it doesn’t always reflect reality.

  • I just upgraded to SDK28, updated Constants.manifest.version to “1.2.0” and built an IPA.
  • Users on SDK27 versions of the app are now seeing Constant.manifest.version 1.2.0 despite me not having released the SDK28 IPA yet.

I use the Expo.Updates API so that users only update on demand.

Can we not trust Constants.manifest.version as our own app version that we report to users? This user is definitely on 1.1.0, with an SDK27-built IPA, but their app version is now reporting 1.2.0.

Should we create our own version number outside of the manifest JSON file?

#2

when did you do the sdk27 build? if you did it after sdk28 was released then those clients would be capable of receiving updates to sdk28

#3

Hi, thanks for the reply.

It looks like the IPA was built 2nd May, so it looks like that was before SDK28 was released.

Thanks

#4

what is your app url? eg: https://expo.io/@react-navigation/NavigationPlayground

#5

Sent via DM.

Come to think of it, I did do an ‘exp build:android’ yesterday after upgrading to SDK28 that will have done a publish. Would this then show that new version number in older apps built using SDK27 (even though the code is not usable or downloadable to the SDK27 app)?

I assumed that Constants.manifest.version reported the actual code version running on the IPA, not the latest app version in use in later SDK apps? That would mean it reports that it’s the latest version but it’s actually running an older version. (Unless I add the SDK version as a suffix to the version number that users see).

Thanks a lot

#6

After lots of help from @brent via DM the user fessed up that they were seeing a different version number than the one they reported they were…

1 Like
closed #7

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