publish different app version according to the country

Hi,


I would like to know if it is possible to publish diffrents version off the app acoring to the country, for the same SDK


means

version A for France & Italy

version B for Spain & Germany


Or can I just only

publish version A or France & Italy

publish no version for Spain & Germany ?

What about which languages will be used in what countries? Will all versions basically look and act the same, with all the same features?


Why do you need to separate for each country?


If the apps will be different, then separate might be ok. If they are the same, you may risk pushback during review...


The usual approach is one app, one version, that is localized for each country/language it supports.


For countries it doesn't support, simply make sure it is not on sale in those locations.

Regarding different versions of the app for different country App Stores - you choose the countries in which each app is listed for sale. So you could use a different app for different countries. Each different app would actually be just a different version of the same app. But here you would run up against being rejected for '4.3 Spam' https://developer.apple.com/app-store/review/guidelines/#spam



A better solution would be to have the app detect the country App Store from which it is purchased. I do not know a straightforward way of doing that because currentLocale is set by the user's preference not the user's App Store country. But another way is to make an SKProductRequest for an IAP - any IAP. During the response to that SKProductRequest you would examine the SKProduct's priceLocale.countryCode and that would reveal the counry of the App Store. https://developer.apple.com/documentation/storekit/skproduct/1506145-pricelocale?language=objc

In this process there is no need to actually make the purchase. You might be able to do it all in the background without actually informing the user that you are exploring an actual IAP. You would need to have some IAP approved by the App Store.


keep in mind, there are three ways of defining "the country". One is the current geolocation of the device, the second is the language preferences selected by the user, and the third is the country of the App Store used by the user. (I think you are referring to the third - but I am not certain.)


Your app can certainly detect its geolocation and modify itself as it wishes based on that geolocation.


Your app can be 'localized' based on the language and other preferences selected by the user. See: https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPInternational/Introduction/Introduction.html#//apple_ref/doc/uid/10000171i-CH1-SW1

We have a same problem. We have two different data centers, one in UAE and other in UK, so when we release our app, we also need to publish our server code to specific data centers as we cannot do both on same day. Reason is UAE is working on Friday and UK is working on Sunday. We also cannot do on Saturday as we have clients from India working on Saturday and they are using UK data center. So only option for us to do code release on Friday for UAE and Sunday for UK.

So when I make my server code live on Friday for UAE, I can publish the App on AppStore with UAE region, but we want that with this publish, UK people still should see the older app version.

Example:

Currently our App with version 2.1.0 is live across UAE and UK.
We are now releasing app with version 2.1.1 and we deploy server code on UAE and release the app for UAE region. So what we need is to have UAE region seeing 2.1.1 version of app and UK still sees version 2.1.0.

When we release app on Sunday for all region, it will be back to 2.1.1 for UAE and UK.


Is this possible?
publish different app version according to the country
 
 
Q