Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy


Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo Hace 3 Semanas
David Jiménez David Jiménez is offline
Miembro
 
Registrado: ene 2006
Ubicación: Córdoba, España
Posts: 89
Poder: 19
David Jiménez Va por buen camino
Android tiene caché?

Estoy haciendo una aplicación para android con bases de datos, que en el deployment la instalo en assets/internal
Me está ocurriendo algo extrañísimo
Tenía unos datos en las tablas y ahora tengo otros diferentes. Por concretar, antes tenía 3 ventas y ahora tengo 8 ventas de clientes diferentes
En Delphi corro la aplicación sin depurar (shift+ctrl+F9) y se hace el deployment.
Pues los datos que me aparecen en Ventas son las 3 ventas antiguas y no las nuevas 8.


He estado buscando y parece que a veces puede que no se sobreescriba bien, pero con un gestor de archivos en android he revisado los ficheros que tengo y son todos los correctos.
Con este gestor he descargado la base de datos y aparecen las 8 ventas


¿Cómo es posible? donde estás esos datos, hay alguna caché que los mantiene, esto es de locos
__________________
Sólo sé que no sé nada
Responder Con Cita
  #2  
Antiguo Hace 3 Semanas
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Seguramente el problema es la forma en que usas las transacciones.
Responder Con Cita
  #3  
Antiguo Hace 3 Semanas
navbuoy navbuoy is offline
Miembro
 
Registrado: mar 2024
Posts: 235
Poder: 1
navbuoy Va por buen camino
por lo menos en Windows y C++ Builder mis componentes tienen la propiedad ApplyUpdates() que es necesario llamarla despues de insertar datos o tal si la propiedad CachedUpdates esta activada, hasta que no hagas el Commit con ApplyUpdates() podrian quedarse en la cache y no figurar en la Tabla como ya fijados

Pero no se eh? Android no lo controlo mucho, pero es lo que dice Casimiro, las Transacciones y el Commit seguramente
Responder Con Cita
  #4  
Antiguo Hace 1 Semana
David Jiménez David Jiménez is offline
Miembro
 
Registrado: ene 2006
Ubicación: Córdoba, España
Posts: 89
Poder: 19
David Jiménez Va por buen camino
Unhappy

Gracias por la respuesta
Si no hay una caché que no controlo, me tranquiliza


En principio las transacciones están bien gestionadas. En la versión de windows del programa no hay problema, todo está bien.



Estoy empezando a usar ChangeView de Interbase y el problema debe estar ahí. Aunque copio la base de datos (la misma que uso en windows) al ser Interbase un sistema multiversión, la versión que veo en Android debe ser una versión anterior de los datos
__________________
Sólo sé que no sé nada
Responder Con Cita
  #5  
Antiguo Hace 3 Días
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 101
Poder: 22
jmbarrio Va por buen camino
Buenas, en mi caso cuando paso la BD modificada (campo nuevo en alguna tabla, nuevos registros etc, etc .....) que tengo en windows al dispositivo android y arranco la apk la bd embebida no se me actualiza en el momento, a pesar de que previamente desinstalo la apk del dispositivo
Tengo que ir al gestor de aplicaciones, ir a la apk, ir al almacenamiento y borrar datos. Vuelvo a arrancar la apk y ya está la BD actualizada. Esto me pasa con tablets Samsung, sin embargo con mi movil Xiaomi no me ocurre.
Por si te sirve de ayuda.

Un saludo.
Responder Con Cita
  #6  
Antiguo Hace 3 Días
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.927
Poder: 26
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Cita:
Empezado por David Jiménez Ver Mensaje
la instalo en assets/internal
Eso es MUY incorrecto, si crees que puedes modificar los datos ahi.

Android si tiene cache. De hecho varios.

Y el nombre de los directorios IMPORTA. Es *assets* ie: graficos, fuentes, etc. NO BD.


Pero el punto es que los datos de una bd se deben operar desde un directorio apropiado:

https://stackoverflow.com/questions/...-on-the-device
__________________
El malabarista.
Responder Con Cita
  #7  
Antiguo Hace 3 Días
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 101
Poder: 22
jmbarrio Va por buen camino
Buenas tardes, me he expresado mal con lo de la BD modificada, la BD actualizada la paso a través del instalador en el dispositivo android, con el deployment en assets\internal para la ruta de la BD

y al arrancar la apk, esta no se entera del cambio de BD hasta que no borro los datos, es como que se guarda una copia de la BD anterior en la cache.

Saludos.
Responder Con Cita
  #8  
Antiguo Hace 3 Días
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.927
Poder: 26
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
No me queda claro donde queda la bd copiada.

Y si abres la conexion contra `asset` o contra la ruta correcta. A partir de allí, si haces `commit` debería funcionar.


PD: Haces alguna configuración personalizada con `PRAGMA`s?
__________________
El malabarista.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Caché e Interbase dec Trucos 2 13-01-2008 06:20:37
cache con idhttp mak8888 Internet 0 10-09-2007 13:38:44
tamaño de cache de bd omarbrdz Firebird e Interbase 3 14-09-2005 16:26:39
Transacciones y/o cache kayetano MySQL 1 25-06-2003 21:30:46


La franja horaria es GMT +2. Ahora son las 03:08:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi