2012-02-01 9 views
5

Alguien explique cuál es la idea principal de usar strings.xml? Creo que sería útil para el soporte de varios idiomas, pero ¿cómo podemos organizarlo para eso? ¿Lo necesito si no quiero utilizar la compatibilidad multilingüe en mi aplicación de Android?ANDROID: ¿Cuál es la idea principal detrás de usar strings.xml?

+1

Puede ser que no quiera convertir su aplicación a otros idiomas. Pero Stander es stander – Arslan

+1

Si usamos una cierta cadena en más de un lugar, ¿realmente necesitamos cambiarla en cada lugar si cambia su valor? Use strings.xml – Piovezan

Respuesta

11

La idea es que representa una única ubicación para varias cadenas, por lo que su código no está salpicada de literales de cadena. Además de eso, obtienes la capacidad de localizar fácilmente. Organización de los archivos para la localización está cubierto aquí:

http://developer.android.com/guide/topics/resources/localization.html#creating-alternatives

lo necesita, si usted no está localizando? No. Pero puede hacer las cosas más fáciles a largo plazo, y recomendaría usarlo solo por esa razón.

+0

Esta es una respuesta útil gracias. –

+0

He estado usando strings.xml para almacenar cadenas pero no para fines de localización. Lo he estado usando porque es más fácil anular estas cadenas cuando se usan proyectos de biblioteca de Android. Mi pregunta es ** ¿qué tan seguro es ** almacenar cadenas importantes como claves md5 en strings.xml? Tengo claves md5 que cambian según el Proyecto de aplicación, pero el código que lo usa está en el Proyecto de biblioteca, así que almaceno el String en strings.xml y anulo el archivo en cada Proyecto de aplicación. –

5

Cadenas de codificación dura es Mala.

La parametrización de cadenas (por ejemplo, con strings.xml) es Buena.

Ser capaz de internacionalizar sus cuerdas (con el lenguaje y/o versiones de strings.xml específico de la localidad) es aún mejor :)

PS:

para hacer uso de la internacionalización, acaba de crear subdirectorios de recursos. Google le dará muchas referencias/ejemplos. de Herre uno:

http://developer.android.com/guide/topics/resources/localization.html

* res/values/strings.xml 
    Contains English text for all the strings that the application 
    uses, including text for a string named title. 

* res/values-fr/strings.xml 
    Contain French text for all the strings, including title. 

* res/values-ja/strings.xml 
    Contain Japanese text for all the strings... 

Y sí, usted debe absolutamente entrar en el hábito de usar strings.xml (y colors.xml y dimens.xml etc, etc), incluso si usted don No planeas internacionalizar de inmediato.

mi humilde opinión ....

+0

Gracias @ paulsm4 –

+0

He estado usando strings.xml para almacenar cadenas pero no para fines de localización. Lo he estado usando porque es más fácil anular estas cadenas cuando se usan proyectos de biblioteca de Android. Mi pregunta es ** ¿qué tan seguro es ** almacenar cadenas importantes como claves md5 en strings.xml? Tengo claves md5 que cambian según el Proyecto de aplicación, pero el código que lo usa está en el Proyecto de biblioteca, así que almaceno el String en strings.xml y anulo el archivo en cada Proyecto de aplicación. –

Cuestiones relacionadas