Tengo una aplicación con acceso a Internet y no quiero almacenar muchos archivos string.xml
para diferentes idiomas.¿Se pueden descargar los recursos de localización en tiempo de ejecución?
lo que quiero:
- aplicación contiene sólo un
string.xml
con cadenas en inglés. - Cuando el usuario lo inicia, veo la configuración regional del teléfono del usuario y solicito a mi propio servidor el archivo de idioma necesario. (las claves de recursos serán las mismas)
- Cuando llega un nuevo archivo de recursos, toda la interfaz debe funcionar con un archivo nuevo.
La pregunta es cómo cambiar el archivo existente o agregar string.xml
nuevo en tiempo de ejecución?
El problema de estas soluciones: no puede hacer referencia a la base de datos desde archivos xml, y no puede usar los métodos estándar 'Context.getString()'. – Jin35
Sí, ese es el lado oscuro de la solución, pero siempre que desee utilizar la solución provista, no hay diferencia, solo que esto está claramente más separado del sistema y es más fácil de implementar. –
¿Y puedo crear, por ejemplo, la carpeta 'values-de' en mis recursos y poner allí un nuevo archivo xml? – Jin35