×
Namespaces

Variants
Actions

Localización de Aplicaciones

From Nokia Developer Wiki
Jump to: navigation, search
SignpostIcon XAML 40.png
WP Metro Icon WP8.png
Article Metadata
Tested with
SDK: Windows Phone SDK 8.0
Devices(s): Nokia Lumia 520
Compatibility
Platform(s):
Windows Phone 8
Article
Created: jsuarezruiz (16 Jul 2013)
Last edited: BuildNokia (17 Jun 2014)

Introducción

Cuando desarrollamos nuestras aplicaciones, un factor importante a tener en cuenta es el público objetivo de la misma. Analizando este punto debemos determinar si distribuimos nuestra aplicación a nivel nacional, en multiples países o a nivel mundial. Si decidimos la última opción debemos de tener en cuenta que aunque las probabilidades de llegar a una mayor cantidad de público aumentan considerablemente, no todo el mundo habla español por lo que seguimos restringidos.

¿Qué podemos hacer?

En Windows Phone 7 podíamos localizar las aplicaciones a múltiples idiomas. En Windows Phone además de aumentar el número de idiomas disponibles tenemos la posibilidad de localizar las aplicaciones con mayor facilidad aún si cabe.

En esta entrada vamos a realizar los pasos necesarios para localizar una aplicación Windows Phone 8, ¿te apuntas?

Comenzamos!

Comenzaremos como siempre, crearemos un ejemplo práctico. La plantilla seleccionada será “Windows Phone Application” para simplificar al máximo el ejemplo:

Gettingstartedphone newproject.png

Si nos fijamos en el explorador de soluciones veremos que el proyecto creado cuenta con una carpeta Resources que contiene un fichero llamado AppResources.resx.

Hacemos doble clic sobre el fichero.

Editor de recursos

Se nos abre el editor de recursos mostrándonos ya una serie de valores ya registrados en formato clave/valor. Desde nuestra aplicación accederemos el valor registrado (Value) mediante la clave (Name). El archivo abierto contiene los recursos necesarios para el idioma neutro de la aplicación, inglés de Estados Unidos. Para los sucesivos idiomas que soporte la aplicación crearemos diferentes archivos de recursos con las mismas claves y los valores traducidos al idioma correspondiente.

Antes de crear esos archivos debemos tener definidos los idiomas a los que se traducirá nuestra aplicación. Definimos esta configuración en el manifiesto. Abrimos la carpeta Properties del proyecto y hacemos doble clic sobre el archivo WMAppManifiest.xml. Se nos abrirá el editor del archivo de manifiesto organizado en múltiples pestañas. Elegimos la última de ellas, Packaging: Idiomas soportados

Localizacion manifiesto 01.png

En nuestro ejemplo hemos seleccionado las opciones English y Spanish. A la hora de seleccionar el idioma hay que tener en cuenta que si elegimos idiomas específicos, por ejemplo, Spanish (Argentina) si se ejecuta en España, Spanish (Spain) no accedería al recurso y no se traduciría la aplicación. Para casos en los cuales la tradución sea igual, es recomendable elegir idiomas genéricos.

Debemos marcar en el proyecto también la lista de idiomas que soportará la aplicación. Hacemos clic derecho sobre el proyecto y seleccionamos la opción Properties:

Ya hemos marcado los idiomas que soportará nuestra aplicación (en nuestro ejemplo Español e Inglés). Como ya mencionamos tendremos un fichero de recursos por cada idioma soportado. El fichero se llamará AppResources.{Cultura}.resx donde {Cultura} es la cultura del idioma. Cada archivo de recursos debe tener el nombre correcto según la cultura e idioma como se describe en la documentación: Culture and language support for Windows Phone.

Por ejemplo:

  • Para el idioma español el archivo se llamará AppResources.es-ES.resx.
  • Para el idioma alemán el archivo se llamará AppResources.de-DE.resx.

Creamos por lo tantos un fichero adicional en nuestor proyecto llamado AppResources.es-ES.resx donde traduciremos los valores del archivo de recursos al español. Acceso a los recursos

Ya tenemos todo lo necesario para que nuestra aplicación soporte múltiples idiomas:

  • Hemos establecido en las propiedades del proyecto y en el archivo de manifiesto los idiomas soportados asi como cual será el idioma por defecto.
  • Contamos con un archivo de recursos por idioma.

A continuación, desde el XAML de la aplicación vamos a acceder a los textos que hemos registrado en los archivos de recursos pero… ¿Cómo?

Tranquilos, de nuevo, lo tenemos fácil. Si os fijáis de nuevo en el explorador de soluciones en el contenido del proyecto veréis una clase llamada LocalizedStrings. Esta clase ya está preparada para exponer una propiedad llamada LocalizedResources que devuelve la instancia del archivo de recursos correspondiente según la cultura establecida.

Hemos hecho binding al valor del registro indicado por la clave Btn usando la propiedad LocalizedResources. Como Source hemos indicado al recurso LocalizedStrings.

Si ejecutamos la aplicación veremos algo como lo siguiente:

Ejemplo-localizacion-01.png

El emulador por defecto está en inglés. Si salimos de la aplicación y en la configuración del emulador cambiamos el idioma a español, tras reiniciar y arrancar la aplicación debemos ver algo como lo siguiente:

Ejemplo-localizacion-021.png

Como hemos podido analizar la localización de aplicaciones en Windows Phone 8 es sumamente sencillo ya que las plantillas facilitadas por defecto vienen preparadas para tal efecto. El esfuerzo radica en la traducción en si de los textos de los distintos archivos de recursos por idioma sin perder tiempo en la infraestructura para realizar la acción.

This page was last modified on 17 June 2014, at 21:17.
132 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×