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 Content Provider personalizado (II)

Post Series: Content Providers personalizados

Continuamos con el segundo proyecto para ver la implementación práctica de un Content Provider personalizado.

En el anterior proyecto, que denominamos CarteraClientes, vimos la creación del Content Provider utilizando una base de datos SQLite para insertar datos de clientes, y en este segundo, que denominaremos ClienteProvider solicitaremos los datos de dicho Content Provider, utilizando la clase ContentResolver.

Elementos del proyecto Android ClienteProvider

Enumeramos los elementos necesarios para el desarrollo de este segundo proyecto:

  • Clase MainActivity, que herede de la clase base ListActivity, encargada de mostrar los datos solicitados por el ContentResolver, y mostrarlos en un componente ListView.
  • Clase AdaptadorCliente, que herede de la clase base BaseAdapter, encargada de construir la vista de cada uno de los ítems que se mostrarán en el componente ListView.
  • Clase Cliente, que permita crear nuevos objetos Cliente, formado por los métodos getters y setters (métodos de acceso a propiedades).
  • Layout activity_main.xml, formado por un componente de tipo selección ListView, encargado de mostrar los clientes almacenados, y un componente de tipo Button que permitirá eliminar el registro seleccionado por el usuario.
  • Layout activity_adaptador_cliente.xml, que construirá la vista de cada ítem del componente ListView. Se definen tres componentes de tipo TextView.

Estructura del proyecto

Vemos aquí la estructura del proyecto ClienteProvider:

Estructura Proyecto acceso a Content Provider personalizado en Android

Código fuente del proyecto ClienteProvider

Presentamos las diferentes clases y ficheros layout que componen este Proyecto, así como la creación y estructura de la base de datos ClientesComo siempre, puedes descargarte todo el código al final de este tutorial

ClienteProvider\src\com\academiaandroid\clienteprovider\MainActivity.java

Main Activity Proyecto ClienteProvider

1. Se crea una nueva clase llamada MainActivity, que hereda de la clase base ListActivity, encargada de mostrar los datos solicitados por el ContentResolver, y mostrarlos en un componente ListView:

2. Dentro del método onCreate(), se enlazan los componentes con sus recursos a nivel de layout, y se invoca al método setAdapter(), recibiendo como argumento la instancia de la clase AdaptadorCliente(), cuyo constructor está compuesto por el contexto y un ArrayList de objetos Cliente, que devuelve el método mostrarRegistrosAplicacion():

ClienteProvider\src\com\academiaandroid\clienteprovider\Cliente.java

1. Se define una clase Cliente, que permitirá crear nuevos objetos, con los datos de cada registro de la base de datos (métodos getters y setters):

2. Dentro de esta clase, también se define el método mostrarRegistrosAplicacion(), permite consultar la tabla Clientes, almacenando los resultados en un objeto Cursor. Este método devuelve un ArrayList de objetos Cliente, con todos los registros almacenados:

ClienteProvider\src\com\academiaandroid\clienteprovider\AdaptadorCliente.java

1. Se crea una nueva clase llamada AdaptadorCliente, que heredará de la clase base BaseAdapter, encargada de construir la vista de cada uno de los ítems que se mostrarán en el componente ListView:

2. Por último se construye la vista por cada ítem, sobrescribiendo el método getView() (devuelve un objeto de tipo View), a partir del ArrayList recibido y la posición que ocupa:

ClienteProvider\res\layout\activity_main.xml

Layout Main Activity proyecto ClienteProvider

  1. A nivel de layout (activity_main.xml), se implementa un componente de tipo selección ListView, encargado de mostrar los clientes almacenados, además de añadir un componente de tipo Button encargado de eliminar el registro seleccionado por el usuario:

ClienteProvider\res\layout\activity_adaptador _ cliente.xml

Layout proyecto ClienteProvider Activity Adaptador Cliente

  1. Se define un nuevo layout denominado activity_adaptador_cliente.xml, que construirá la vista de cada ítem del componente ListView. Se definen tres componentes de tipo TextView para mostrar información de cada fila de un registro (campo _id, cliente y telefono):

Consultas Transact-SQL

  • Crear base de datos «Clientes»:
  • Crear tabla «NuevosClientes»:

Estructura base de datos «Clientes.sqlite»
Vemos en esta imagen la estructura de dicha base de datos:

 

Estructura Base de Datos

 

Descarga proyecto

Descargar

 

En la próxima y última publicación de esta serie, explicaremos en un video ambos proyectos y mostraremos sus funcionalidades.