开发者

iPhone multilingual App in a single Country. (belgium case)

开发者 https://www.devze.com 2023-02-14 20:27 出处:网络
Question regarding app store deploiement, In belgium (and in many other Country), 3 languages are spoken (french, dutch, german).

Question regarding app store deploiement,

In belgium (and in many other Country), 3 languages are spoken (french, dutch, german). Therefor we developed a localizable app with these 3 languages and made 3 description page.

Those 3 description pages are well displayed in iTunes depends on the OS language. (great!)

But on the internet, we had to deploy the application in 3 different country (France, Germany, Netherlands) and to access the correct country appstore to see the description in the good language. Thus, Belgium people have to go on the appstore of their language country (which is not belgium appstore) to be able to understand the description.

Is there a way to provide the 3 languages in the one and unique belgium appstore ? (checking system la开发者_如何学Cnguage for exemple, or proposing the 3 descriptions on the app page)

hope I made it clear enough with my english !

more : when I go to the Mac Store the URL shows /be-fr/ for french, /be-nl/ for dutch, so the language of a macBook description changes. But when I watch appstore URL, I can only see /be/

more : depends from where I came from in the app store, I got "screenshots" written or "Captures d'écran" (which means the same) with the same URL "/be/" so there is a detection of the language ! What I'd like is to display the good description for belgians who speak dutch.

thanks


Nope. Just one language per country.

Why not writing all texts in the same page? Make 3 sections.


user choose her/his preferred language in the device.

So you can do it like:

  static NSString *const kFrenchLocaleIdentifier = @"fr_FR";
  static NSString *const kEnglishLocaleIdentifier = @"en_US";
  static NSString *const kDeutschLocaleIdentifier = @"de_DE";
  static const NSString *localizedDictionaryPrefix = @"StringLocalizable-";


    if ([[[NSLocale preferredLanguages] firstObject] isEqualToString:@"de"]) {
        self.currentLocaleIdentifier = [[NSString alloc] initWithString:kDeutschLocaleIdentifier];
    }
    else if ([[[NSLocale preferredLanguages] firstObject] isEqualToString:@"fr"]) {
        self.currentLocaleIdentifier = [[NSString alloc] initWithString:kFrenchLocaleIdentifier];
    }
    else{//en
        self.currentLocaleIdentifier = [[NSString alloc] initWithString:kEnglishLocaleIdentifier];
    }

then you can keep using this localization method for your location file.

     _localizedDictionary = [[NSDictionary alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"%@%@", localizedDictionaryPrefix, currentLocaleIdentifier] ofType:@"plist"]];

you can create StringLocalizable-fr_FR.plist, StringLocalizable-de_DE.plist, StringLocalizable-en_US.plist files to keep translated words.

0

精彩评论

暂无评论...
验证码 换一张
取 消