Home Menu

Menu



Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android


 
Herramientas
  #1  
Viejo 21/11/12, 09:46:03
Avatar de superroko2
superroko2 superroko2 no está en línea
Miembro del foro
Mensajes: 93
 
Fecha de registro: oct 2012
Mensajes: 93
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Mantenimiento de una BD y mejoras

Buenas,

Voy a resumirlo rápido.

Ahora tengo una aplicación que trabaja sobre una BD en MySQL externa que tiene una tabla de usuarios y una tabla de establecimientos. La aplicación solo ejecutarse busca posición de GPS, cuando la obtiene deja de buscar (eso de background, digamos). Entonces, en pantalla el usuario se loguea (mediante un httpost que se envía a un php y lee el resultado en JSON).

Una vez ya está logueado, (se espera a tener localización, si es que no la tiene ya) y te muestra en Google Maps las 20 localizaciones más cercanas a ti.

Esto se hace mediante otro httpost que se envía a un PHP que hace la consulta a la BD y este devuelve los resultados mediante JSON. La aplicación recoge los resultados leídos del JSON y los dibuja en el Mapa.

Consideraciones:

1) Creéis que sería mejor si tuviera una BD interna, que se actualizara cada vez de la externa, de forma que mientras no haya localizaciones nuevas no deberá actualizarse, y las consultas supongo que serían muchísimo más rápido. Vale la pena hacerlo así?

·Aparte de optimizar la velocidad de las consultas, también te permitiría trabajar sin conexión a la red, y te consumiría menos datos móviles ya que una vez cargadas las localizaciones por primera vez ya no sería necesario hacerlo más veces.

2) En caso que lo implemente así, como debo hacerlo? Nunca he trabajado con las BD de Android (SQLite).
2.1) Como debo hacer para que la aplicación trabaje en base a una BD interna, y que no no cree una nueva en cada ejecución. Es decir como trabajo con datos que se mantienen en cada ejecución de la aplicación? Podría trabajar también con imágenes (para los locales)? En la misma BD interna, o los almacenaría y cargaría de otra forma? Hay algún ejemplo de esto?
2.2) Como podría hacer para que este sistema de datos interno se comprobara en cada ejecución si está actualizado. Podría por ejemplo tener un registro con fecha y hora, y que cada vez que se abriera la aplicación se comprobará (con httpost+json mismo) si es igual y sino se actualizara?

3) Si uso este tipo de datos internos (locales), ocupará mucho en el dispositivo? Una BD con un par de tablas de 1000-10000 registros y cuatro fotos por local?

4) Hay alguna forma de cargar datos dinámicamente? Por ejemplo, se ejecuta la aplicación, se loguea, etc y te muestra el Google Maps con las 20 localizaciones más cercanas. Hasta ahí bien. Pero podría hacer de alguna forma que si me voy desplazando por el mapa (API de Google eh, no me refiero a actualizar mi posición, sino desplazar el MapaView (mirar el resto del mapa, más allá de la zona que abarca mi alrededor, no sé si me explico).

Un saludo y gracias ;)
Responder Con Cita


  #2  
Viejo 23/11/12, 07:10:53
Avatar de jorg3acg
jorg3acg jorg3acg no está en línea
Usuario muy activo
Mensajes: 970
 
Fecha de registro: ago 2012
Localización: México
Mensajes: 970
Modelo de smartphone: S4 i337m
Versión de ROM: Customs Rom's
Versión de Radio: xxxx
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
que tal no soy la gran cosa, pero ahi voy y una cosa se, analise bien sqlite que ando en ello, lo que quiero hacer ahora es enviar esos datos de sqlite a una BD en servidor y viceversa que el servidor me envié datos y guardarlos en SQLite pero ahi te voy con mis opiniones,

1) si es mejor, asi el usuario podria trabajar Sin datos de manera local

2)trabajar con BD en android hay dos maneras por lo que se, 1.- hacerla desde un soft sqlite con sus tablas/campo y mandarla a llamar desde la carpeta asset(osea ahi metes la base de datos y la llamas desde la clase)
2.- hacerla con codigo desde una clase con preferencias SQLitePreferents
2.1) android no te creara varias BD, solo lo que puede hacer es sobreescribir los datos que le asignes, si no ni los toca, todo esta en el codigo, las base de datos sqlite se manejan mas con codigo, no puedes sobrescribir o duplicar como una BD normal, siempre y cuando lo estipules
2.2) lo de la hora lo puedes implementar en tu BD del servidor en sqlite los datos son persistentes, almenos que en el codigo incluyas eliminarlos, o la app se elimine... asi solamente se van todos los datos

3).- mira, 1000-1000, lo maximo que pueden ocupar serian menos de 10mb bueno depende eso no se sabe bien, como cualquier BD simple, si le metes imagenes el tamaño si puede subir, pero ese no seria tu problema, tu problema seria si el telefono con android o tablet tiene poco espacio de memoria interna pero ahora los nuevos dispositivos no es problema..


4) en eso ando atascado, jaja que puede modificar y enviar esos datos a mi servidor.. :S
Responder Con Cita
  #3  
Viejo 23/11/12, 12:21:24
Avatar de superroko2
superroko2 superroko2 no está en línea
Miembro del foro
Mensajes: 93
 
Fecha de registro: oct 2012
Mensajes: 93
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Aunque sigo con muchas dudas, gracias de todas formas. Ahora lo que me interesa principalmente es lo de la carga dinámica. Veremos como lo hago..

Si tu necesitas alguna ayuda sobre como conectar con la BD externa, no dudes en preguntar

Dejo el hilo abierto para ver si alguien tiene idea de como hacer la carga dinámica..

Un saludo ;)
Responder Con Cita
  #4  
Viejo 23/11/12, 19:56:30
Avatar de jorg3acg
jorg3acg jorg3acg no está en línea
Usuario muy activo
Mensajes: 970
 
Fecha de registro: ago 2012
Localización: México
Mensajes: 970
Modelo de smartphone: S4 i337m
Versión de ROM: Customs Rom's
Versión de Radio: xxxx
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por superroko2 Ver Mensaje
Aunque sigo con muchas dudas, gracias de todas formas. Ahora lo que me interesa principalmente es lo de la carga dinámica. Veremos como lo hago..

Si tu necesitas alguna ayuda sobre como conectar con la BD externa, no dudes en preguntar

Dejo el hilo abierto para ver si alguien tiene idea de como hacer la carga dinámica..

Un saludo ;)
Pues espero ayudar y yo ando por las nubes jaja de perdido, bien si te late te dejó mi skype así al o mejor quizás resolvemos mas dudas rápidamente

[email protected]jorg3acg

Y tengo códigos que te puedo pasar y ayudar mas sobre BD
Aunque aun soy aprendiz baja pero ahí la llevamos


Enviado desde mi GT-I9100 usando Tapatalk 2
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Todo sobre Android > Programación y Desarrollo para Android

Herramientas

Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 18:55:07 (GMT +2)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007