2010-01-12 17 views
5

1) La nostra app per Android memorizzerà i dati in un database SQLite integrato.Archiviazione interna di Android: quali sono i limiti?

Vedo che il DB può lanciare android.database.sqlite.SQLiteFullException, ma non ci sono informazioni esatte nell'API qual è il limite.

Qualcuno potrebbe sapere quali sono i limiti di dimensione per un DB per non entrare in SQLiteFullException?

Suppongo che DB memorizzerà i dati nella memoria interna del dispositivo (rispetto a SDCard). Ho ragione? Dato SQLite DB è solo un file, probabilmente la dimensione del DB è limitata con spazio di archiviazione interno gratuito. Di nuovo - Ho ragione? Se sì, allora qual è la dimensione di archiviazione interna su Android? Come rilevarlo? Varia a seconda del modello del dispositivo o della versione del sistema operativo?


2) Avremo anche bisogno di salvare le impostazioni dell'app. Penso che SharedPreferences si adatti bene. Tuttavia la domanda è: anche le SharedPreferences vengono salvate nella memoria interna? Se sì, allora è la stessa memoria in cui il DB memorizza il suo file?

Grazie in anticipo!

+0

Quindi un modo per trovare il limite o la dimensione del DB SQLite. O in qualsiasi modo per trovare lo stato corrente scrivibile del database? O gestire l'eccezione è l'unico modo? – Pritam

+0

Lo stiamo facendo gestendo le eccezioni (nemmeno provato altri modi). –

risposta

7

presumo DB memorizzare i dati in memoria interna dispositivo di (contro SDCard). Ho ragione?

Per impostazione predefinita, sì.

Dato SQLite DB è solo un file, probabilmente la dimensione DB è limitata con memoria interna dello spazio libero. Ancora: Ho ragione?

Questa sarebbe la mia ipotesi.

lo fa variano su un modello di dispositivo base o base versione del sistema operativo?

Su base del modello di dispositivo.

sono SharedPreferences salvate anche nella memoria interna ?

Sì.

Se sì, allora è lo stesso spazio di archiviazione dove il DB archivia il proprio file?

Sì.

Problemi correlati