How to create a variable that stores a value even if you restart application or change scene in Android?

0

How to create a variable that stores a value value even if it restarts or changes the application scene, I do not know would be a database or if there is something simple

    
asked by anonymous 17.01.2016 / 18:39

1 answer

0

Here is an example of using SharedPreferences :

/**
 * Classe encapsula as funcionalidades de leitura e gravação no SharedPreferences
 */
public class SharedPreferencesController {
    /**
     * Constantes utilizadas para salvar / resgatar os dados
     */
    private String DADOS = "DADOS";
    private String CAMPO = "CAMPO";

    /**
     * Grava as informações do objeto em um SharedPreferences.
     */
    public void salvar(final String  campo, final Context mContext){
        if(null == campo) return;
        //Cria uma instancia do SharedPreferences
       SharedPreferences prefs = mContext.getSharedPreferences(DADOS, Context.MODE_PRIVATE);
        // Criamos um instancia do editor, para salvamos os dados
        SharedPreferences.Editor editor = prefs.edit();
        editor.putString(CAMPO, campo);
        // Para que as informações sejam atualizadas
        editor.commit();
    }

    /**
     * Coleta as informações do objeto em um SharedPreferences.
     */
    public String ler(final Context mContext){
        if(null == mContext) return null;
        //Cria uma instancia do SharedPreferences
        final SharedPreferences prefs = mContext.getSharedPreferences(DADOS, Context.MODE_PRIVATE);
        // se for nulo, n˜ao temos mais o que fazer, e retornamos nulo!
        if(null == prefs) return null;

        /**
         * Coleta os valores!
         *  Para carregar um valor passamos o nome da Propriedade e um valor padrão.
         *  Se não haver dados para esta propriedade, ele irá retornar o valor padão
         */
        final String  campo  = prefs.getString(CAMPO, null);
        return campo;
    }
}
    
18.01.2016 / 20:35