El blog de Javielinux Usuario de Linux, Android developer, programador de aplicaciones web y experimentando con HTML5, CSS3 y Javascript

Nueva versión de Android Dataframework, ahora soporte multidioma en la base de datos

Nueva versión, la 1.02, de la librería para trabajar con base de datos Android DataFramework. Aunque estaba hecho desde hace mucho tiempo hasta hoy no me he decidido a publicarla. La nueva versión trae un par de cosas nuevas y creo que interesantes:

  • Soporte multilenguaje en la base de datos (nuevo campo "multilanguage"): Creará un campo en la base de datos con cada uno de los idiomas, se podrá definir el lenguaje a usar y recogerá el dato del campo con el lenguaje que estemos trabajando

Vamos a poner un ejemplo. Lo primero es modificar el "tables.xml". En el nodo "database" ponemos los lenguajes con los que queremos que trabaje nuestra base de datos separados con "|" en el atributo "languages"

<database name="nombre_db" version="1" languages="es|en|de">

En esta caso sería español, inglés y alemán. Luego definimos cada campo que queremos que sea multilenguaje.

<field name="titulo" obligatory="true" type="multilanguage" />

Internamente, y de forma transparente para el programador, creará 3 campos "titulo_es", "titulo_en" y "titulo_de", donde se guardarán los valores en cada uno de los idiomas.

Por defecto cuando intentemos recoger la información del campo título, nos dará el idioma que tengamos definido en nuestro móvil (en los Locale de Android). Para ello es necesario que los idiomas estén en la ISO 639-1 como en el ejemplo que estamos trabajando.

Para recoger la información lo hacemos como siempre getString("titulo"), NO tenemos que poner getString("titulo_es") ya que no funcionaría.

También podemos forzar un idioma con:

DataFramework.getInstance().setForceLanguage("en");

  • Nuevo campo "drawable-identifier": contiene un recurso drawable del proyecto y que se puede obtener directamente de la clase Entity con el método getDrawable("nombre_campo")

Todo esto y alguna información más se irá poniendo en el Wiki de Android DataFramework.

Espero que os guste. 

Categorías Android Proyectos

Comentarios

mtf dice:
Enhorabuena por la librería! Realmente es de mucha ayuda! La versión 1.0.2 que soporta multiidioma está ya subida en alguna parte? Muchísimas gracias!
javielinux dice:
La acabo de subir a la web de Android DataFramework

Gracias y un saludo
mtf dice:
Muchas gracias por a ver subido la librería! Llevo un tiempo intentando que me funcione el sistema multiidioma con esta librería, pero no lo consigo. Para las pruebas estoy intentando modificar PruebaDataFramework, pero al ejecutarlo me genera un error... ¿podrías subir un ejemplo en el que se crease una base de datos usando la función multiidioma? Si no, no pasa nada, ya bastante haces! Muchas gracias otra vez por todo!
Web Outsourcing dice:
I like this post because this is very valuable information for me i am very excited to see this post such a great post i like this very much.
Web Outsourcing dice:
I like this post because this is very valuable information for me i am very excited to see this post such a great post i like this very much.
canada payday loans dice:
¿Te importa si cito un par de tus mensajes todo el tiempo que proporcionan las fuentes de crédito y de nuevo a su sitio web? Mi sitio está en el nicho de exactamente el mismo que el suyo y mis visitantes ciertamente se beneficiaría de parte de la información que presentamos aquí . Por favor , hágamelo saber si esta bien con usted . ¡Muchas gracias!
search engine optimization vancouver dice:
Hey! Esto es un poco fuera de tema , pero necesito algunos consejos de un blog creado . ¿Es difícil establecer su propio blog ? No soy muy Techincal pero puedo entender las cosas muy rápido. Estoy pensando en poner en marcha mi propio, pero no estoy seguro de por dónde empezar. ¿Tiene alguna idea o sugerencia ? gracias
lu dice:
que version ocupas de la libreria dataframework en el proyecto App-to-QR por que me aparese un error en el metodo getEntityListCount

Escribir un comentario