App shows different language than device is set to

This may be a newbie question, but the following seems very strange to me.

My devices (iPhone, iPad) use Dutch ("nl") as language (Configured with Settings / General / Language & Region / iPhone Language). And similarly Netherlands ("NL") as region.

But if I run the following program:

import SwiftUI

struct ContentView: View {
    var body: some View {
        Text(Locale.current.description)
        Text(Locale.current.languageCode!)
    }
}

I get the following output:

en_NL (current)

en

I checked the run settings in Xcode. App Language is set to System Language, and App Region is set to System Region.

It seems to me that I should see

nl_NL (current)

nl

Am I right? Do I misunderstand Locale? Am I missing something else? Thanks!

  • It seems to me its time for Feedback Assistant if your settings in your Phone or simulators are correct

  • Do you mean the settings I mentioned? Or are there others I should look into?

Add a Comment

Accepted Reply

I don't see the app in the list. Should it be there?

Only if your app supports multiple localisation.

And that’s the key issue here. Your app’s localisation controls the language in which it runs. For the details, see QA1828 How iOS Determines the Language For Your App.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

  • My app does not support multiple localisation.

    But the link you included put me on the right track. After much searching & trying I found that changing the Development Language from "en" to "nl" (actually a region code) does the trick.

    I did it by editing the file project.pbxproj inside my app's .xcodeproject file, by changing the line

    "developmentRegion = en;"

    to

    "developmentRegion = nl;".

    It can probably be done through some setting but I could not find it.

    I know of no way to set this on the Xcode level, so I will have to do it for every app again. But it works. Thanks!

Add a Comment

Replies

Could you check the settings for your app ? : in iPhone settings, search for your app in the list and see what is the preferred language.

  • I don't see the app in the list. Should it be there?

Add a Comment

I don't see the app in the list. Should it be there?

Only if your app supports multiple localisation.

And that’s the key issue here. Your app’s localisation controls the language in which it runs. For the details, see QA1828 How iOS Determines the Language For Your App.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

  • My app does not support multiple localisation.

    But the link you included put me on the right track. After much searching & trying I found that changing the Development Language from "en" to "nl" (actually a region code) does the trick.

    I did it by editing the file project.pbxproj inside my app's .xcodeproject file, by changing the line

    "developmentRegion = en;"

    to

    "developmentRegion = nl;".

    It can probably be done through some setting but I could not find it.

    I know of no way to set this on the Xcode level, so I will have to do it for every app again. But it works. Thanks!

Add a Comment