Globalization and localization for Windows Phone 8
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
To develop your app for more than one language, you must globalize and localize your app. You have different options for localizing and globalizing your app, depending on whether it’s a managed app or a native app.
In managed apps, most of the globalization and localization functionality that you need to implement is already built into the .NET Framework. The Windows Phone 8 project templates in Visual Studio for managed apps also contain app code for localization support by default. Using these features, you can more easily reach customers for your apps in many other countries and regions.
Globalization and localization design for Windows Phone 8 native apps shares many of the same design principles as managed apps. Also, testing and submission procedures of native apps are similar to managed apps. However, although the Windows Phone 8 SDK provides native apps access to standard Win32 APIs that allow native apps to acquire run-time language and region context, there is no support for resource management APIs analogous to those APIs offered for managed apps.
This topic contains the following sections.
A globalized app will appear to be perfectly adapted to a user's cultural and business environment. Your app should display data, such as date information and numbers, in a way that is familiar to the user, and should correctly handle user input. Thanks to the .NET Framework, globalizing your app is a straightforward task. For more information about how to best globalize your app, see the following topics.
Includes a full list of all supported display languages on Windows Phone, which cultures are supported for region format data, international phone features, and how to handle formatting and sorting.
Describes the two types of fonts on a Windows Phone device, full lists of included fonts, how to handle font encoding, and more.
Shows a step-by-step process for building a globalized app. The How-To topic is based upon an end-to-end code sample called Globalization Sample.
By following a few simple steps, you can design and develop apps that can be easily localized, or adapted to, a specific local market. This process mostly involves the text strings in your app and the app bar, if the app bar menu items contain text. Additionally, you can choose to localize your app title. For more information about how to best localize your app, see the following topics.
Describes best practices for localizing resources in your app, including how to choose the best translation approach.
Shows a step-by-step process for adding resource files to a project and separating strings into the resource files. Also describes how to localize an app bar.
Shows a step-by-step process for localizing an app title. This is an optional step.
Explains how to use the Multilingual App Toolkit. This toolkit integrates with Visual Studio Professional 2012 and Visual Studio Express 2012 for Windows Phone to provide translation support, translation file management, and localization tools to create Windows Phone apps and Windows Store apps.
Use the Windows Phone Emulator to test your app in each display language that your app targets. For more information about how to use the Windows Phone Emulator, see How to test region settings in the emulator for Windows Phone 8.
When changing a display language, verify that the language of your app UI automatically updates to that language. If it does not, you may not have provided a resource file for that language, as described in How to build a localized app for Windows Phone 8. If a resource file is not detected, a different language is displayed according to the resource fallback process described in Packaging and Deploying Resources.
For more info about changing the display language, testing localized strings, and testing localized app titles, see How to test a localized app for Windows Phone 8.
Before submitting your app to the Windows Phone Dev Center, make sure that your app conforms to the certification requirement described in section 4.4 of App submission requirements for Windows Phone.
When you’re ready to submit your app, you’ll need to include a few additional pieces of info in the Dev Center during the submission process:
Metadata for each language that your app supports.
A price, which will automatically determine the cost of your app in other countries/regions. For more info, see Define pricing and market selection.
You can also choose to opt in for worldwide distribution. This means that in the future, your app will be automatically distributed into any new country or region that Windows Phone supports.
Microsoft recommends that you develop and submit a single app that supports multiple languages, instead of developing and submitting separate apps for each language type.
For info about app submission, see Submit your app.