curso android tema 5

12
Shared preferences, Almacenamiento externo y Manejo de bases de datos en Android Yésica Hernández Jorge Frank Cesar Aguirre Almacenamiento

Upload: frank-jorge

Post on 20-May-2015

945 views

Category:

Education


1 download

TRANSCRIPT

Page 1: curso android tema 5

Shared preferences, Almacenamiento externo y Manejo de bases de datos en Android

Yésica HernándezJorge Frank

Cesar Aguirre

Almacenamiento

Page 2: curso android tema 5

Almacenamiento en Android

La plataforma Android provee diversas opciones de almacenamiento.

La elección de cada una de ellas dependerá de las características de la información a almacenar

5 Almacenamiento

Page 3: curso android tema 5

Opciones de almacenamiento:

5 Almacenamiento

• Preferencias Compartidas

• Almacenamiento Interno

• Almacenamiento Externo

• Base de Datos (SQLite)

Page 4: curso android tema 5

Shared Preferences5 Almacenamiento

Sirven para almacenar parejas de valores (key-value) de tipos de datos primitivos.

Es un framework completo que brinda la funcionalidad de agregar y consultar preferencias dentro de la aplicación.

Sistema acorde a la plataforma tanto en diseño como en funcionalidad (homogeneidad respecto a otras apps)

Page 5: curso android tema 5

Shared Preferences5 Almacenamiento

// Restore preferences       SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);       boolean silent = settings.getBoolean("silentMode", false);       setSilent(silent);

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);      SharedPreferences.Editor editor = settings.edit();      editor.putBoolean("silentMode", true);

      // Commit the edits!      editor.commit();

Obtenemos el valor de la propiedad silentMode

Asignamos un valor true a la propiedad silentMode

Page 6: curso android tema 5

Almacenamiento interno

5 Almacenamiento

En android se pueda hacer uso de la memoria del dispositivo para guardar archivos de nuestras aplicaciones

Por default se guardarán para uso exclusivo de la aplicación, ajenos a otras apps y al mismo usuario. Estos archivos son borrados al desinstalar la aplicación

Page 7: curso android tema 5

Almacenamiento interno

5 Almacenamiento

String FILENAME = "hello_file";String string = "hello world!";

FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);fos.write(string.getBytes());fos.close();

Page 8: curso android tema 5

Almacenamiento Externo

5 Almacenamiento

Los archivos guardados en almacenamiento externo, son accesibles al usuario vía explorador de archivos.

Para que sean visibles en otras aplicaciones, deben de guardarse en los directorios públicos:

Music/Ringtones/Pictures/Etc….

Page 9: curso android tema 5

Base de Datos5 Almacenamiento

En android existe soporte para bases de datos por medio de SQLite.

La BD que se cree para la aplicación es accesible solo por si misma.Se crea en el directorio /data/data/<package>/databases

Page 10: curso android tema 5

Debugging de Base de Datos5 Almacenamiento

El SDK contiene la herramienta de base de datos sqlite3 que permite explorar el contenido de las tablas y correr comandos SQL

Page 11: curso android tema 5

Base de Datos5 Almacenamiento

public class DictionaryOpenHelper extends SQLiteOpenHelper {

    private static final int DATABASE_VERSION = 2;    private static final String DICTIONARY_TABLE_NAME = "dictionary";    private static final String DICTIONARY_TABLE_CREATE =                "CREATE TABLE " + DICTIONARY_TABLE_NAME + " (" +                KEY_WORD + " TEXT, " +                KEY_DEFINITION + " TEXT);";

    DictionaryOpenHelper(Context context) {        super(context, DATABASE_NAME, null, DATABASE_VERSION);    }

    @Override    public void onCreate(SQLiteDatabase db) {        db.execSQL(DICTIONARY_TABLE_CREATE);    }}

Para crear una base de datos, heredamos la clase SQLiteOpenHelper y en el metodo onCreate creamos la BD

Page 12: curso android tema 5

getWritableDatabase() y getReadableDatabase() devuelven instancias de BD y proveen los métodos para operaciones SQL

Base de Datos5 Almacenamiento