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.

  • Sqlite restricción error código de error
  • Obtención de base de datos SQLite y almacenamiento en una matriz de objetos
  • Transacción de la base de datos Android
  • Android cómo obtener datos sqlite por nombre de columna
  • Error de SQLiteOpenHelper
  • Android.database.sqlite.SQLiteException: cerca de "SELECT": error de sintaxis (código 1):, al compilar: SELECT * FROM Table_Name
  • ¿Cuál es la forma más rápida de cargar 10000 filas de la base de datos SQLite?
  • ¿Qué hace la clase SQLiteOpenHelper con el parámetro de contexto?
  • El grupo de conexiones no ha podido conceder una conexión a subproceso
  • Android permiso de creación de base de datos
  • Android Room: ¿Cómo modelar las relaciones?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.