Archivo o base de datos? - Mejores prácticas para guardar objetos en un dispositivo Android

Estoy creando una aplicación de Android en Java donde defino algunos objetos como "usuario" o "lista de reproducción", etc.

¿Cómo guardar estos objetos autodefinidos en el dispositivo para acceder posteriormente?

    Gson gson = new Gson();
    String json = gson.toJson(user);

Puedo analizar los objetos a través de GSON a JSONObject o JSONArray. Ahora tengo dos opciones para guardar las cadenas: En una base de datos o un archivo. Sé cómo usar las clases de base de datos de Android y las clases de lector / escritor de archivos, pero ¿cuál es la mejor práctica con respecto al rendimiento, la accesibilidad y especialmente a la simplicidad?

Respuestas a la pregunta(4)

Su respuesta a la pregunta