2011-03-16 16 views
9

Me gustaría saber cuál sería la mejor opción para almacenar un objeto Java personalizado que tengo en mi aplicación. He leído sobre la serialización, pero parece ser bastante lento.Almacenar objetos en Android

¿Cuál es la mejor opción?

+0

¿Has probado [Parcel] (http://developer.android.com/reference/android/os/Parcel.html). – Mudassir

+0

posible duplicado de [El mejor método para guardar datos: preferencias, sqlite, serializable u otro?] (Http://stackoverflow.com/questions/4962426/best-method-for-saving-data-preferences-sqlite-serializable-or -otro) – Macarse

+0

"objeto personalizado de Java" podría ser cualquier cosa en términos de complejidad y tamaño de los datos. Por favor elabora. – olivierg

Respuesta

13

Si no está almacenando más de una abundancia de datos que puede utilizar Gson para convertir un objeto Java a una cadena JSON y almacena la cadena en las preferencias de tu aplicación. Gson tiene un método toJson (obj) y visa-vis.

datos yendo de las preferencias de aplicaciones y en un objeto:

String json = appSharedPrefs.getString("someName","");  
return gson.fromJson(json, YourModel.class); 

para obtener datos de su objeto en las preferencias de aplicaciones:

String json = gson.toJson(obj); 

Entonces prefsEditor.putString("someName", json).apply().

+0

¿Podría publicar un enlace de referencia o muestra de código? Gracias. – Kingsolmn

+0

Eso debería comenzar. –

+0

Gracias por la muestra de código @Bill! – Kingsolmn

Cuestiones relacionadas