estoy planteando una App Android que pretendo hacer. La app consta de una serie de listados de items, con vistas detalle sencillas de cada uno. Se espera que la app se use sin conexión de datos (3G), por lo que necesitaría realizar una descarga inicial de todo, y el resto del tiempo usar datos locales, almacenados.
Mi pregunta es que me recomendaríais para guardar este conjunto de datos en el teléfono. Se trata de entidades sencillas, tipo:
y son unos cuantos cientos de registros (nunca hablaremos de millones).
Para otra App que hice, usé android.database.sqlite y resultó muy robusto y fiable; Lo malo que me ha resultado bastante costoso programarlo y mantenerlo, además de que cada vez que tengo que incorporar funcionalidad nueva me lleva bastante tiempo hacer cosas muy sencillas.
Hazlo bien y monta un content provider por encima de la capa de SQLite. Aquí tienes fuentes para que veas a lo que me refiero: https://code.google.com/p/iosched/source/browse/android/src/main/java/com/google/android/apps/iosched/#iosched%2Fprovider
Si quieres ahorrarte el trabajo de lidiar con eso, usa algo como Green Dao http://greendao-orm.com/ o el ormlite que propones.
Retomo el tema puesto que es una decisión que todavía me atormenta :P
En Apps con muy pocas relaciones entre entidades (Clase tiene 1:N alumnos y poco más), me ha resultado viable el OrmLite, pero presenta problemas cuando hay más niveles de anidación (Ciudad tiene 1:N barrios y el barrio tiene 1:N bares, por ejemplo). Con respecto a GreenDAO, solo implementar un par de ejemplos me fué bastante costoso en tiempo; Me pregunto si de ahí en adelante iba a tener esos costes, o no. La opción de montar el SQLite yo desde cero la veo robusta, fiable, y sin problemas añadidos cuando la complejidad se eleva, pero es muy trabajosa en código.
Los que habeis usado GreenDAO, ¿os ahorra realmente tiempo con respecto de implementar todo el SQLite a mano?
SugarORM va bastante bien, aunque es un tanto lento, y DBFlow parece ser la mejor opción.
Funcionan especialmente bien si os montais una capa de boundaries dedicada a base de datos (ver ejemplos de CLEAN architecture). Salu2!
estoy planteando una App Android que pretendo hacer. La app consta de una serie de listados de items, con vistas detalle sencillas de cada uno. Se espera que la app se use sin conexión de datos (3G), por lo que necesitaría realizar una descarga inicial de todo, y el resto del tiempo usar datos locales, almacenados.
Mi pregunta es que me recomendaríais para guardar este conjunto de datos en el teléfono. Se trata de entidades sencillas, tipo:
Clase { id, url_de_una_foto. texto_mas_o_menos_largo, link_a_youtube }
y son unos cuantos cientos de registros (nunca hablaremos de millones).
Para otra App que hice, usé android.database.sqlite y resultó muy robusto y fiable; Lo malo que me ha resultado bastante costoso programarlo y mantenerlo, además de que cada vez que tengo que incorporar funcionalidad nueva me lleva bastante tiempo hacer cosas muy sencillas.
¿Alguna idea? Gracias!
31/01/2014 00:00
Si quieres ahorrarte el trabajo de lidiar con eso, usa algo como Green Dao http://greendao-orm.com/ o el ormlite que propones.
31/01/2014 15:42
28/01/2014 19:32
http://greendao-orm.com/
28/01/2014 10:04
(http://ormlite.com/)
Que me descarga bastante del trabajo que supone currarme el ORM para Sqlite a mano. Por si a alguien le sirviera ;)
28/01/2014 20:47
depende, shared preferences, sqlite, interno, sdcard
http://developer.android.com/guide/topics/data/data-storage.html
storage access framework
https://developer.android.com/guide/topics/providers/document-provider.html
08/08/2014 10:59
En Apps con muy pocas relaciones entre entidades (Clase tiene 1:N alumnos y poco más), me ha resultado viable el OrmLite, pero presenta problemas cuando hay más niveles de anidación (Ciudad tiene 1:N barrios y el barrio tiene 1:N bares, por ejemplo). Con respecto a GreenDAO, solo implementar un par de ejemplos me fué bastante costoso en tiempo; Me pregunto si de ahí en adelante iba a tener esos costes, o no. La opción de montar el SQLite yo desde cero la veo robusta, fiable, y sin problemas añadidos cuando la complejidad se eleva, pero es muy trabajosa en código.
Los que habeis usado GreenDAO, ¿os ahorra realmente tiempo con respecto de implementar todo el SQLite a mano?
28/08/2015 07:07
SugarORM va bastante bien, aunque es un tanto lento, y DBFlow parece ser la mejor opción.
Funcionan especialmente bien si os montais una capa de boundaries dedicada a base de datos (ver ejemplos de CLEAN architecture). Salu2!
28/08/2015 21:28
https://realm.io/