He almacenado trozos de datos binarios (protobufs) en la base de datos sqlite de una aplicación de Android sin darme cuenta de que Cursor
de Android solo puede contener un máximo de 1MB de datos. Ahora sé que debería haber almacenado estos blobs binarios en archivos y solo hice referencia a los archivos en las entradas de la base de datos sqlite.Recuperar blob grande de la base de datos sqlite de Android
Necesito actualizar la base de datos (la aplicación ha estado en uso por un tiempo) para mover estos fragmentos binarios a los archivos. El problema es que los datos de algunos usuarios pueden haber excedido ya el límite de 1 MB y no puedo recuperarlos de la base de datos (accediendo al resultado Cursor
para una sola fila que contiene un blob grande arroja un IllegalStateException: Couldn't read row 0, col 0 from CursorWindow. Make sure the Cursor is initialize before accessing data from it
).
¿Cómo recupero los blobs binarios que son mayores que el límite de 1MB Cursor
que se han almacenado en la base de datos sqlite?
¡Hola, gracias! ¡Esta pregunta me ayudó a analizar y resolver el mismo problema al que me enfrentaba! –