Android,

Diseñando una aplicación en Android (I): «Tus Perlas»

Para aprender a programar con Android, lo mejor es pensar en una aplicación prototipo que nos sirva para desarrollar todo el potencial que nos ofrece el SDK: desde lo más básico vamos avanzando hacía técnicas que ahora nos pueden parecer complicadas, abarcando todos los elementos que requieran una aplicación más o menos compleja. Vamos a pensar en nuestra aplicación, ¿Qué nos hace falta? ¿Cómo queremos que sea o nos la imaginamos inicialmente? . Empecemos.

Vamos a crear una aplicación que sea un juego. El juego de puntuar las perlas , esas frases tontas que nuestros compañeros de trabajo o en nuestro entorno social más cercano, sueltan en un determinado momento. La dinámica de esta web es muy sencilla: Alguien apunta una frase tonta que ha escuchado y los usuarios del entorno social del ‘perlero’ lo puntúan en base a una normas y con el único fin de releer las más ‘humorísticas’ a medida que avance el tiempo. Puedes mirar algunas en la web de las perlas. Necesitaremos lo típico en un juego: pantalla de incio, menú de opciones, top scoreboard, ayuda y pantallas de acción propias del juego.

 Definiendo cada uno de nuestros Activities

La clase Activity permite disponer de un interfaz de usuario que se centre en lo que el usuario puede hacer. Para nuestra aplicación vamos a crear un Activity para cada una de las pantallas (recordemos: Inicio, menú de opciones, scoreboard, ayuda y pantalla de acción). Aparte, una buena práctica es implementar una clase base  que permita compartir recursos comunes desde donde podremos hacer las llamadas al juego en sí.

  • PerlasActivity. Extiende de android.app.Activity y es nuestra clase base. Aquí vamos a definir las preferencias del juego así como otras características.
  • PerlasInicioActivity. Extiende de PerlasActivity, la clase base. Representa nuestra pantalla de inicio, más o menos gráfica.
  • PerlasMenuActivity. Extiende de PerlasActivity, encargada de gestionar nuestro menú del juego.
  • PerlasAyudaActivity. Extiende de PerlasActivity, encargada de mostrar los textos de ayuda y las normas del juego.
  • PerlasScoreBoardActivity. Extiende de PerlasActivity, esta clase representa la pantalla de puntuaciones.
  • PerlasConfigActivity. Extiende de PerlasActivity, esta clase permite definir las opciones de nuestra aplicación.
  • PerlasGameActivity. Extiende de PerlasActivity, esta clase representa el juego en sí, poder puntuar las perlas que estén activas y correspondan a nuestro entorno social.

Definiendo las características del prototipo de nuestra aplicación

Para concretar un poco que hace cada una de las clases que hemos definido a modo de propuesta anteriormente, es conveniente poner en un esquema que hará cada una de las partes. No queremos escribir una línea de código sin saber que es lo que  vamos a escribir. Os suena, ¿No? Vamos allá.

Pantalla de inicio

La pantalla de inicio sirve como punto de entrada a nuestra aplicación. Su funcionalidad debería estar contenida dentro de PerlasInicioActivity y debería mostrar lo siguiente:

  • Nombre y versión de la aplicación.
  • Un gráfico que identifique las perlas para la pantalla de inicio.
  • Una pequeña pausa para dar paso a la pantalla de menú.

Menú principal

El menú es nuestra pantalla de navegación que nos llevará a las opciones propias del juego. Su funcionalidad debería estar contenida dentro de PerlasMenuActivity y debería mostrar lo siguiente:

  • Se muestra después de la pantalla de inicio.
  • Contiene las opciones: Puntuar perlas, ir a la configuración, ver los marcadores y mostrar una pequeña ayuda.

Pantalla de ayuda

La pantalla de ayuda es la típica en una apliación. En este caso muestra una breve explicación de que son de las perlas y cómo jugar. Su funcionalidad debería estar contenida dentro de PerlasAyudaActivity  y debería mostrar lo siguiente:

  • Descripción de perla.
  • Normas y características de puntuación.

Scoreboard o puntuaciones

Es el ranking del juego. Muestra los diez primeros ‘perleros’ activos del mes. Su funcionalidad debería estar contenida dentro de PerlasScoreBoardActivity  y debería mostrar lo siguiente:

  • Un listado con las puntuaciones y el nombre del ‘perlero’

Configuración de la aplicación de las perlas

Aquí desplegamos y mostramos los ‘settings’ de la aplicación. Muestra algunas opciones que podemos modificar . Su funcionalidad debería estar contenida dentro de PerlasConfigActivity  y debería mostrar lo siguiente:

  • Registro del usuario
  • Datos modificables a través del interfaz.

Pantalla de juego de la aplicación de las perlas

Es el juego en sí. Consiste en una pantalla donde poder puntuar visualizando las perlas de el mes en curso. Su funcionalidad debería estar contenida dentro de PerlasGameActivity  y debería mostrar lo siguiente:

  • Nombre del perlero
  • Perla en texto.
  • Slider para definir cuantos puntos votamos.
  • Botón para votar.
Empecemos por crear cada una de las clases con la llamada a su setContentView( view )  y así poder crear tambien los layouts del prototipo de cada pantalla. Será en la siguiente entrega ! Hasta la próxima.

 



3 Comments

Tunelko. A technology point of blog. - Intercambio de datos con JSON en Android SDK

enero 4, 2012

[…] Json es un formato compacto de intercambio de datos soportado por librerías en Android SDK. En este post vamos a escribir un par de funciones para entender como recuperar un fichero json de la web de TusPerlas y así de paso avanzar el pŕoximo artículo de nuestra primera aplicación en Android. […]

tunelko

diciembre 22, 2011

Gracias ! Ponte si tienes tiempo, si has programado algo para ios lo vas a agradecer (por el tipado y otras cuestiones). Estas entradas me sirven para dejarlas en algún sitio y repasar. :-)

Lorenzo

diciembre 22, 2011

Genial! Me están dando unas ganas de pillar el SDK de Android por banda … :D Seguiré atento tu blog, un saludo!

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.