NOVEDADES IMPORTANTES

Acceso a todos los contenidos

Hace unos meses decidimos suspender nuestra actividad de formación online en Digital Learning SL (propietaria de esta web).

Desde entones hemos mantenido operativos nuestra plataforma de teleformación y webs de contenidos Academia Android y Digital Learning, habilitando un acceso libre y gratuito a todos estos recursos, incluyendo cursos y contenidos Premium que antes requerían un registro y pago previo, lo que ha propiciado un volumen de visitas constante de usuarios que consultan esta formación.

Venta-traspaso de los contenidos

Creemos que estas webs por sus contenidos, posicionamiento SEO y atracción de tráfico (junto a sus cuentas en redes sociales asociadas, incluyendo Twitter y Facebook de nuestro curso de Community Manager) pueden ser una oportunidad para emprendedores o compañías de diversos ámbitos (formación, marketing y publicación online, desarrollo software,…) que quieran:

  • Captar usuarios, alumnos o clientes para sus proyectos, productos y servicios.
  • Comercializar los contenidos bajo múltiples fórmulas: venta de publicidad, modelos freemium o de pago, suscripciones…
  • Crear un nuevo proyecto a partir de esta infraestructura de recursos.

Si tú o tú empresa estáis interesados en adquirirlos, ofrecemos su traspaso en propiedad exclusiva. Puedes contactar conmigo en «contacto@digitallearning.es» (por favor entiende que los correos que no vengan suficientemente identificados no vamos a atenderlos). Gracias.

Manuel Cabello (Socio-Director de Digital Learning/Academia Android)

Este es el número de tutoriales publicados:

Pincha en los textos de los contadores de Tutoriales publicados, Premium o Series de tutoriales para tener un detalle de las publicaciones que comprenden.

Desde hace unos meses, todos los contenidos, incluidos los Premium, son accesibles libre y gratuitamente.

  • Premium
  • Acceso libre
130
Acceso libre
126
Premium

Algunos datos sobre los contenidos que hemos publicado hasta la fecha:

74
Videos
61
Proyectos descargables
contacto[arroba]digitallearning.es

Proyecto ejemplo de App Android con bbdd SQLite

Post Series: Gestión de datos

Tras explicar las operaciones CRUD en un sistema de base de datos SQLite, vamos a desarrollar una sencilla Aplicación con Android Studio que nos muestre de forma práctica su implementación.

Operaciones CRUD: son las operaciones básicas en un sistema de persistencia de datos, es decir: crear/insertar, leer/consultar, actualizar o borrar datos. Se les suele conocer por su acrónimo en inglés CRUD (create, read, update y delete).

Para ello, crearemos un proyecto con Android Studio donde se gestionarán los registros de una base de datos SQLite desde un sencillo formulario.

La aplicación permitirá dar de alta, consultar y borrar comentarios asociados a distintos nombres de usuarios. Podremos elegir cada comentario de una lista que crearemos utilizando el componente gráfico Spinner.

En la parte derecha puedes ver su funcionamiento.

Este proyecto, como es habitual, lo describiremos en dos publicaciones, ésta, donde podrás además descargar el proyecto y una posterior en formato video con explicaciones detalladas del código.

Estructura del Proyecto

El proyecto constara de los siguientes elementos:

  • activity_main: formado por un layout de tipo LinearLayout, en el que distribuiremos los distintos elementos gráficos.
  • MainActivity: Activity principal de la aplicación, que implementara la lógica de funcionamiento de la aplicación, incluyendo los controladores de eventos de los elementos de la interfaz.
  • Comentario: clase java sencilla que nos servirá para representar los elementos que almacenamos en la base de datos
  • MyOpenHelper: implementación de SQLiteOpenHelper basada en la que ya vimos en una publicación anterior y que ampliaremos con varias funciones auxiliares para simplificar el código de MainActivity.

En la siguiente imagen, se podrá apreciar cómo quedaría finalmente la estructura de elementos que intervienen en el proyecto (vista Android en el IDE Android Studio):
Estructura del proyecto

Descripción del código fuente

Vamos a analizar el código fuente de los distintos componentes del proyecto.

Para empezar mostramos la interfaz de usuario definida en el fichero activity_main.xml:

Interfaz App base de datos SQLiteComo vemos esta compuesta por un panel superior que nos permitirá crear nuevos comentarios, un Spinner en el que se mostrarán los comentarios existentes y mediante el cual podremos seleccionar uno de ellos, y finalmente un panel inferior que nos mostrará los datos del comentario seleccionado. Cada zona tiene además su botón correspondiente para la acción a realizar.

Mostramos a continuación el contenido del fichero de layout xml:

Vamos a analizar a continuación la clase Comentario.

La clase cuenta con los mismos atributos que representan un comentario en la base de datos:

El constructor de la clase nos permite crear e inicializar los atributos de un comentario:

La clase toString sera necesaria para mostrar los comentarios en el Spinner, en nuestro caso sólo mostraremos el nombre para seleccionar:

Para terminar disponemos de 3 métodos para acceder a cada uno de los atributos de la clase:

Vamos a continuar describiendo el contenido de la clase MyOpenHelper.

Partiremos de los mismos elementos que ya mostramos en el apartado 5.2 de este tema, en el que vimos el código que creaba la base de datos en el dispositivo:

A este código inicial añadiremos dos funciones para insertar y eliminar comentarios, que si nos fijamos simplemente incluyen el código de inserción y borrado que vimos en su momento, pero ejecutado a partir de unos parámetros que enviaremos desde la interfaz de usuario.

Finalmente añadiremos una función que ejecutará un select tal y como lo vimos en su momento, y a continuación recorrerá los distintos resultados creando objetos de la clase Comentario y almacenándolos en un array.

Finalmente la clase MainActivity contiene la lógica principal de la aplicación que detallamos a continuación:

En primer lugar vemos que la clase implementa las interfaces correspondientes a la gestión de eventos de los botones y el Spinner (un poco mas abajo veremos cómo se implementan).
El código continua con la declaración de los elementos gráficos, así como del array de comentarios y el objeto Comentario que utilizaremos para acceder al comentario seleccionado en el Spinner.

En el método onCreate() inicializamos como siempre los elementos gráficos y los asociamos a su manejador de eventos:

También iniciamos el controlador de la base de datos, obtenemos la lista de comentarios y creamos el Adapter que nos servirá para mostrar los comentarios del array como elementos seleccionables en el Spinner:

En el método onClick() implementamos las funciones de cada botón, se han incluido comentarios en el código para explicar cada paso de la inserción, selección y borrado.

Finalmente la función onItemSelected() se ejecutará cuando seleccionemos en el spinner un nuevo comentario. Como podemos observar en ella, simplemente comprobaremos que hay comentarios en la lista, y si los hay, asociaremos el comentario seleccionado al objeto c (de tipo Comentario) que representa el comentario actual.

Descarga del proyecto

Para descargar el código de esta aplicación pulsa aquí:

Descargar