¿Cómo almacenar datos persistentes fácilmente sin usar bases de datos?

Estoy tratando de usar la clase de aplicación de Android (MyApplication.java) para almacenar datos en algunas ArrayLists de cadenas e ints.

Quiero que estos datos se almacenen para siempre, como una base de datos, pero sin usar bases de datos, para simplificar mi aplicación.

Actualmente, los datos se almacenan, cuando salgo de la aplicación, el proceso de la aplicación aún se ejecuta en segundo plano. Pero si elimino el proceso de la aplicación, los datos almacenados en la clase MyApplication.java se eliminan. Por lo tanto, necesito algún tipo de función que almacene los datos de mis variables de MyApplication en un archivo, y otra función que restaure los datos en las variables.

Existe una manera simple y fácil de resolver esto?

code resume:

public class MyApplication extends Application {
    public static String LeagueTable[][] = new String[21][8];
    //COLUMNAS MATRIZ:
    //0     /1   /2   /3   /4   /5   /6   /7
    //nombre/P.J./P.G./P.E./P.P./G.F./G.C./Pts

    public static League LFP = new League();
    public static Category Primera = new Category(20);
    public static int NEQUIPOS=20;
    public static int[][] matriz= new int[NEQUIPOS+1][NEQUIPOS+1]; //esta es la matriz de emparejamientos, representa el calendario
    public static int PlayerTeamID;
    public static boolean ExistingSaveGame=false;//esto es true cuando existe una partida guardada

    //variables candidatas a poner dentro de una de las clases del modelo, como season por ejemplo
    public static int RoundNumber; //jornada actual
    public static boolean SeasonOver=false;//true cuando la temporada ha terminado

    public void onCreate() {
        super.onCreate();
    }

    public void onTerminate() {
        super.onTerminate();
    }

"and a lot of functions that works with the static variables"

Respuestas a la pregunta(3)

Su respuesta a la pregunta