2017-09-22 1 views
3

Ich arbeite an Realm-Datenbank für Android. Meine Anforderung ist, dass ich große Daten (mehr als 2 MB Minimum) in einer einzelnen Spalte einer Reihe in einer Tabelle speichern muss. In normalen SQLite - android können wir die Daten nicht aus der Spaltentabelle abrufen, wenn sie mehr als 2mb Größe haben (aufgrund der Größenbeschränkung der Cursorfenster). Also möchte ich von SQLite zu Realm wechseln. Aber wenn ich eine Beispiel-App mache, die mehr als 2 MB speichert und abruft, löst Realm auch eine Ausnahme aus.Hat Realm Größenbeschränkung über eine Spalte einer Tabelle

java.lang.OutOfMemoryError: Failed to allocate a 46633948 byte allocation with 16777120 free bytes and 39MB until OOM at java.lang.AbstractStringBuilder.enlargeBuffer(AbstractStringBuilder.java:95) at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:146) at java.lang.StringBuilder.append(StringBuilder.java:216)

Welches ist der beste Weg? Ich habe keine Wahl, die Daten zu teilen und sie im Datei- und Dateipfadspeicher in db zu speichern. Ich muss große Daten (String in verschlüsseltem Format) in einer einzigen Spalte speichern.

+0

Post Fehlerprotokoll hier – akhilesh0707

+0

Bitte meine bearbeiten für die Frage – honey

+0

Sie versuchen, haben 'largeheap = true' – akhilesh0707

Antwort

Verwandte Themen