Best approach when distribution different app versions

Multiple app versions could be a FREE and PREMIUM (paid) versions. Since the in-app purchase isn’t ready for production yet, then the best option seems to deploy two apps to the app store.

But let’s use this example with more than just two:

One important aspect is that the app icons are different in each app.

It seems to me to be the best option would be to have different configs and use it like this

exp build:ios // US will be app.json

exp build:ios --config fr.json

exp build:ios --config de.json

exp build:ios --config es.json

Then I can set different app icons and splash screens. The bundleIdentifier can also be unique for each app which I expect is a must when deploying different versions to the App Store? [1]

I imagine that I could even use the OTA (awesome) feature to make a single update to all versions by exp publish if I keep the slug the same in each config. Is this correct? [2]

But how do I detect in the code which config has been used in the build? [3]

One possible solution I can think of is the expo release channels which would allow me to detect what language to display.

expo build:ios // bundleIdentifier -> com.companyname.apppname.us

expo build:ios --release-channel france --config.fr.json // bundleIdentifier -> com.companyname.apppname.fr

expo build:ios --release-channel germany --config.de.json // bundleIdentifier -> com.companyname.apppname.de

expo build:ios --release-channel spain --config.es.json // bundleIdentifier -> com.companyname.apppname.es

Is this overcomplicating it? [4]

  • Could I just use the release channel approach without a custom config for each app? [5]

One drawback that I can see with this is that I can make a single OTA update. On the other hand, I can make specific version OTA - but I’m more into a single OTA.

Sorry for the burst of questions.

2 Likes

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