La mia applicazione ha bisogno di una struttura dati simile a una coda: metti i dati al suo interno, ricevi dati da essa, tipo FIFO. Con i dati intendo stringhe semplici per ora, in seguito su oggetti forse più complessi. La cosa è che la coda e il suo contenuto dovrebbero essere persistenti, indipendentemente da ciò che sta facendo Android. Se l'applicazione viene chiusa e riaperta (o anche riavviata Android), la coda dovrebbe avere lo stesso stato e i dati che aveva prima che l'applicazione venisse chiusa.Come realizzare una coda persistente su Android
Penso che la coda debba utilizzare qualche tipo di memoria sotto il cofano, preferibilmente la memoria interna del dispositivo. Forse potresti fare un brainstorming su come realizzarlo. La coda non deve necessariamente essere eseguita nella mia applicazione, potrebbe anche essere un qualche tipo di servizio di background abbinato se questo è possibile in Android (ma privato per la mia applicazione).
Io uso questo metodo per gestire la sincronizzazione offline dei codici a barre scansionati in un'app che ho recentemente scritto per lavoro. È anche possibile creare una classe serializzabile per archiviare più blocchi di dati di vari tipi e inserirli nel database. Dal momento che è nel database, è persistente, devi solo trovarlo e ritirarlo. Un'altra opzione è quella di archiviarlo come serializzabile in un file di testo nella directory di archiviazione privata per l'app se fondamentalmente stai solo memorizzando lo stato dell'applicazione. È più semplice dello storage db per un singolo batch di dati per lo stato dell'app. –
Oh che coincidenza.La mia intenzione è quasi la stessa: scansiona codici a barre e cose simili e tienilo sul dispositivo per un po ', ad esempio se il dispositivo si trova in un'area senza segnale dove non può inviare dati a un server. Pensi che anche questo potrebbe funzionare in modo affidabile con i file nella memoria interna o il database SQLite è una soluzione molto migliore qui? – ceran
Database. Quindi non è necessario scrivere e riscrivere il file ogni volta che si cambia. Non devi preoccuparti di analizzare il file. Anche l'utilizzo delle classi helper di Sqlite non è difficile. – Frohnzie