Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to localize bundle display name in iPhone app?

How can I localize bundle display name of an iPhone app? The name displayed in iPhone main screen under app icon. I wish a single binary bundle package which will be displayed multilingually.

like image 888
eonil Avatar asked May 20 '10 08:05

eonil


People also ask

How do I localize my iOS app?

Select your root project file, and then proceed to the project panel. Find the Localization section section, click the “plus” (+) icon, and add the desired languages. Select only the Localizable. strings file for localization.

How do I change my bundle name?

Change the Bundle IDChoose your project from the left side, then your app target under TARGETS, select the General tab and rename the Bundle Identifier.

What is bundle name in Info plist?

CFBundleName (String - iOS, Mac OS X) identifies the short name of the bundle. This name should be less than 16 characters long and be suitable for displaying in the menu bar and the application's Info window. You can include this key in the InfoPlist.

Does Apple localize?

With iOS and iPadOS, users can select their preferred language for your app independent of their device language, making it easy for multilingual users to switch between languages in your app. On macOS, users can set the language of an app in the Language & Region section of System Preferences.


2 Answers

Here's some instructions:

  • Create a new empty file called InfoPlist.strings
  • Open up the Navigator (cmd-opt-0) and select the first pane
  • Click the plus for a localization
  • Xcode (4.3) goes a bit funny and deselects your file. It's placed it into a localization folder (probably called en.lproj in the item's original folder. Re-select it in the Project Navigator.
  • Your file now has (probably) English in the Localization list. Click the plus button to add another language.

It's generally good to start with all the items you want to localize in the same folder, that way when they get localized, Xcode doesn't create a whole bunch of en.lproj and ja.lproj files all over your project. Call it something like "Localized Resources".

You can localize the app name now by adding the localized name to each file like this (for the French localized file):

"CFBundleDisplayName" = "Bonjour"; 

LocalizeLocalize Two

like image 86
nevan king Avatar answered Sep 20 '22 20:09

nevan king


Okay, even though this is a pretty old question, it came up high on my google searches for this topic. Hence I thought it might make sense to update the answers:

In Xcode 4.X, follow these steps to localize your bundle name:

  1. File->New->File...
  2. Choose Resource->Strings File
  3. Type in the Filename as InfoPlist.strings and save it in the correct location. EVEN If your plist is named App-Info.plist - the filename is ALWAYS InfoPlist.strings!
  4. Now the file should be open (otherwise, select it). In the left drawer, select "Localize" and after confirming that the newly created file is moved to the English folder, check the other languages you want. For a language to show up here, it needs to be listed as your localization languages
  5. Add these two lines to the InfoPlist.strings for the correct language:

    "CFBundleDisplayName" = "Name";

    "CFBundleName" = "Name";

  6. Add a new line to your App-Info.plist, "Localization native Development Region" - this set's the default development region

And after "only" 6 simple steps, you can set your localized app name!!11!1111

like image 43
Blitz Avatar answered Sep 22 '22 20:09

Blitz