Feeds:
Posts
Comments

Posts Tagged ‘almacenamiento’

En android se puede almacenar información de diversas maneras. Para grandes cantidades de datos se dispone de bases de datos mediante sqlite. Para guardar pequeñas configuraciones o datos únicos, la plataforma pone a nuestra disposición la clase SharedPreferences.

 

SharedPreferences almacena información accesible desde cualquier actividad de la aplicación, y permanece almacenada a pesar de que salgamos de la misma.

 

A continuación se muestra un ejemplo de cómo utilizarlo. En este caso, gracias a las preferencias podremos saber si hemos entrado alguna vez en la aplicación previamente o no. Esto puede ser útil cuando es preciso que, la primera vez que se ejecute la aplicación, instale y configure ciertos elementos.

 

El código con los comentarios se puede observar a continuación:

package com.dagova.sharedPreferencesExample;

public class defaultActivity extends Activity
{

	private static String INITIALIZED = "initialized";

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		//Obtiene el objeto de preferencias de la aplicacion llamado settings. Podeis indicar el nombre que querais.
		SharedPreferences sharedPreferences = getApplicationContext().getSharedPreferences("settings", 0);

		//Obtiene un booleano almacenado en las preferencias de nombre initialized. El segundo parametro indica el valor a devolver si no lo encuentra, en este caso, falso.
		boolean initialized = sharedPreferences.getBoolean(INITIALIZED, false);
		if(initialized == false)
		{
			//Codigo que queramos que se ejecute unicamente la primera vez que se lance la aplicacion.

			//Obtenemos el editor de las preferencias.
			SharedPreferences.Editor editor = sharedPreferences.edit();

			//Le indicamos que queremos que almacene un booleano de nombre initialized con valor true. Existen putInt, putString...
			editor.putBoolean(INITIALIZED, true);

			//Tras haber indicado todos los cambios a realizar (en nuestro caso solamente uno), le indicamos al editor que los almacene en las preferencias.
			editor.commit();
		}
		//Codigo que queramos que se ejecute siempre.
	}
}
Advertisements

Read Full Post »