Almacenamiento en caché de datos para aplicaciones móviles de iOS / Android para trabajar con Pagination

Dé el escenario siguiente. Tengo una aplicación móvil en iOS / Android que está conectada a un servidor backend a través de REST. Dentro de la aplicación puede mostrar las noticias. Estos elementos se pueden crear, editar y eliminar de usted es el creador del elemento. En una página de la aplicación hay un feed de noticias donde se puede ver una vista general de las noticias creadas por otros usuarios de la aplicación. La aplicación iOS / Android almacena los datos de estas noticias en una base de datos sqlite local. Cuando el usuario desplaza hacia abajo la lista de elementos, se deben cargar más elementos si los hay.

La tarea que quiero resolver es cómo los elementos se almacenarán en caché en la base de datos SQLite para trabajar con la paginación. La caché se debe actualizar a veces cuando los elementos se eliminan o se reordenan en el servidor. Esto debe tenerse en cuenta al trabajar con paginación.

Aquí está el algoritmo que he usado hasta ahora:

  1. Si la página de feed se abre, compruebe si hay algún elemento para mostrar en la base de datos sqlite

    • Si es cierto recuperar elementos p con offset offset = 0 de la base de datos y póngase en contacto con el servidor para comprobar si los primeros ítems p deben actualizarse o eliminarse
      • Si los elementos deben ser actualizados o eliminados realizar estas operaciones en los elementos en la pantalla
    • Else, póngase en contacto con el servidor para p ítems con desplazamiento offset = 0 y muéstrelos
  2. Si el usuario desplaza hacia abajo comienza 1. de nuevo con offset = offset + p

¿Cómo funciona el almacenamiento en caché de datos para aplicaciones móviles con la paginación?

One Solution collect form web for “Almacenamiento en caché de datos para aplicaciones móviles de iOS / Android para trabajar con Pagination”

La pregunta es cuánto tiempo desea almacenar datos. Puede almacenar todos los datos que obtenga en parte:

"Si no, póngase en contacto con el servidor para p ítems con desplazamiento offset = 0 y muéstrelos"

Y establecer un sello de tiempo a los datos. Cuando finaliza la marca de tiempo, borra los datos (en segundo plano). De esta manera se ahorra un montón de peticiones y también no se pierde con la memoria.

Espero que esto le ayude con su problema.

  • Android - El archivo de base de datos Sqlite no se elimina mientras se desinstala una aplicación?
  • Cómo eliminar una sola fila en android sqlite
  • Transacción de la base de datos Android
  • Cómo comprobar si ya existe un valor en la base de datos en Android
  • Consulta de Sqlite para varios valores en una columna
  • Base de datos no copiar desde activos
  • Cómo encontrar el valor máximo de la columna en la base de datos sqlite
  • ¿Cómo puedo anotar correctamente las clases de herencia usando ORMLite?
  • Android: Sugar ORM No hay tal excepción de tabla
  • Administración de conexiones SQLite en Android
  • Cómo imprimir la consulta ejecutada por el método query () de android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.