¿Cuál es el método para almacenar arrays o objetos personalizados (datos persistentes)?

¿Hay alguna manera de almacenar un objeto de datos personalizado como datos persistentes sin emplear SQLite en Android?

Tengo una matriz 3 * 3 de campos de EditText en la pantalla, y quiero almacenar todo el contenido de esos 9 campos en un "perfil" (objeto). Se pueden crear otros perfiles para tener una matriz diferente con datos diferentes.

Pensé en XML, pero me gustaría escuchar otras opiniones.

Puede serializar la matriz y almacenarla en las preferencias compartidas, similar a la respuesta a esta pregunta:

Android Sharepreferences y matriz

Para almacenar varios perfiles, puede almacenar cada uno en las preferencias compartidas con una clave como "Profile-1", "Profile-2", etc. Podría tener otra preferencia compartida que tenga el número de perfiles que tiene.

Podrías intentar algo como

public bool save(SaveableObject s, Context context, String fileName) { try { FileOutputStream fos; ObjectOutputStream os; File file1 = context.getExternalFilesDir(null); File file2 = new File(file1, fileName); fileName = file2.getAbsolutePath(); fos = context.openFileOutput(fileName, Context.MODE_PRIVATE); os = new ObjectOutputStream(fos); os.writeObject((Object)analysis); os.close(); fos.close(); } catch (IOException e) { e.printStackTrace(); } } 

Que debe guardar un archivo en /sdcard/fileName .

Sus opciones se explican en el tema Almacenamiento de datos de los documentos.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.