Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to store persistent data easily without using databases?

I'm trying to use Android Application class (MyApplication.java) for storing data in some ArrayLists of strings and ints.

I want that these data get's stored forever, like a database, but without using databases, to simplify my app.

Currently the data get's stored, when I exit from the app, the process of the app still runs in background. But if I kill the process of the app, the data stored on MyApplication.java class get's removed. So I need some kind of function that stores the data from my variables of MyApplication in a file, and another function that restores the data into the variables.

Is there a simple and easy way to solve this?

code resumed:

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"
like image 434
NullPointerException Avatar asked Jul 26 '11 07:07

NullPointerException


2 Answers

The fastest and easiest way is to use SharedPreferences if you don't store complex data.

like image 175
Ovidiu Latcu Avatar answered Nov 10 '22 07:11

Ovidiu Latcu


Depending of your context (especially but not only related to the size of your data), you may want to use the Shared Preferences, the internal storage or the external storage (the SD card).

An official guide about that is available here.

like image 22
Shlublu Avatar answered Nov 10 '22 08:11

Shlublu