Introducción

Introducción

Las aplicaciones descritas hasta este capítulo representaban la información a procesar en forma de variables. El problema de estas variables es que dejan de existir en el momento en que la aplicación es destruida. En muchas ocasiones vamos a necesitar almacenar información de manera permanente. Las alternativas más habituales para conservar esta información son los ficheros, las bases de datos o servicios a través de la red. Estas técnicas no solo permiten mantener a buen recaudo los datos de la aplicación, sino que también vamos a poder compartir estos datos con otras aplicaciones y usuarios. De forma adicional, el sistema Android pone a nuestra disposición dos nuevos mecanismos para almacenar datos, las preferencias y ContentProvider.

A lo largo de este capítulo estudiaremos cómo utilizar estas técnicas.  Comenzaremos describiendo el uso de las preferencias como un mecanismo sencillo para guardar de forma permanente algunas variables. Seguiremos describiendo las características del sistema de ficheros que incorpora Android. Se puede acceder a los ficheros a través de las clases estándar incluidas en Java. De forma adicional se incluyen nuevas clases para cubrir las peculiaridades de Android.

Como tercera alternativa se estudiará el uso de XML para almacenar la información de manera estructurada. Se describirán dos herramientas alternativas, las librerías SAX y JSON Como cuarta alternativa al almacenamiento de datos se estudiarán las bases de datos. Android incorpora la librería SQLite, que nos permitirá crear y manipular nuestras propias bases de datos de forma muy sencilla. Para finalizar, se describirá la clase ContentProvider  que consiste en un mecanismo introducido en Android para poder compartir datos entre aplicaciones.

En el capítulo siguiente se describe otra alternativa, el uso de Internet como recurso para almacenar y compartir información. Concretamente se describirá el uso de sockets TCP, HTML y los servicios web.

Todas estas alternativas serán ilustradas a través del mismo ejemplo. Trataremos de almacenar la lista con las mejores puntuaciones obtenidas en Asteroides que fue descrito en el capítulo 3.

Objetivos:

  • Repasar las alternativas para el almacenamiento de datos en Android.
  • Describir el uso de ficheros.
  • Ilustrar la utilización de dos herramientas para manipular ficheros XML, las librerías SAX y DOM.
  • Mostrar como desde Android podemos utilizar SQLite para trabajar con bases de datos.
  • Describir que es un ContentProvider y cómo podemos utilizar algunos ContentProvider disponibles en Android.
  • Aprender a crear nuestros propios ContentProvider.