Android e la memorizzazione dei dati spazio?
Domanda
Im chiedendo come spazio di archiviazione dati sono disponibili per la mia applicazione in Android?
Ho bisogno di memorizzare nella cache un sacco di file, e stavo pensando a conservarlo all'interno del sharedpreferences, in questo modo viene eliminato se l'applicazione viene disinstallata. Dopotutto è solo un sacco di file di cache. Credo che avrei potuto anche usare lo SDCard, ma di quanto io non abbia alcuna controll di ciò che l'utente fa di fuori dell'applicazione ...
Quindi, quanti MB può la mia acciaio applicazione dal SharedPreferences quando la memorizzazione di file?
Soluzione
Se avete intenzione di memorizzare MB di dati quindi provare a utilizzare la sdcard per evitare di riempire lo stoccaggio spesso limitata integrato nel telefono cellulare in particolare sul G1.
Se si memorizzano i dati sul telefono, ogni applicazione ha una propria area di stoccaggio, che verrà eliminato anche quando l'applicazione viene disinstallata.
http: //d.android.com/reference/android/content/Context.html#getDir(java.lang.String, int)
Per i file memorizzati nella cache è possibile utilizzare File cacheDir = getCacheDir (); che restituisce il percorso della directory specifica cache dell'applicazione sul filesystem. Questi file saranno quelli che vengono eliminati prima quando il dispositivo si scarica sullo storage.
http://d.android.com/ di riferimento / android / content / Context.html # getCacheDir () per ulteriori informazioni
Altri suggerimenti
Cosa è lo scopo del caching si desidera implementare?
Se si vuole evitare di scaricare file da Internet più volte, lo SDCard o SQLiteDatabase
dovrebbero essere buone opzioni, a seconda del tipo di file, si sta lavorando con.
Se si desidera mantenere i file nella memoria (ad esempio, si desidera mantenere alcune bitmap decodificati nel mucchio), sarà meglio per implementare la propria classe Cache.
SharedPreferences
può essere utilizzato solo con alcuni tipi di base (boolean, int, String, long, float
) -. In modo Parcelable
non può essere messo nelle preferenze del vostro app
Questo porrebbe un problema per il salvataggio dei file lì.