Universidad Técnica Federico Santa María

ELO-329 Diseño y Programacíon Orientados a Objetos.

Proyecto Final

"Tun3r: Afinador multiple para Android"

Fabián Guerrero - 201430052-2

Axel Silva - 201430035-2

Luis Vega - 201430002-6

1- Descripción del Problema:

La tecnología va avanzando a pasos agigantados, y con ello nos tenemos que adaptar, de pasar a tener muchos dispositivos distintos, pasamos a integrar la mayoría de los objetos cotidianos a la tecnología celular.

Con esto en mente decidimos aprender a programar en android mediante el IDE Android studio en lenguaje Java y crear un multi-afinador con posibilidad de hacerlo por pago. Se busca con este afinador alivianar el peso de los músicos que ya de por si tienen que llevar una gran carga, siendo una aplicación portable y eficaz.

2- Análisis del Problema:

Como se menciona con anterioridad, el programa corresponde a un afinador portable hecho aplicación para Android, la cual consta de tres afinadores distintos, siendo estos para guitarra, ukelele y Bajo, en donde en el menú principal se le da la opción al usuario de elegir que afinador necasita.

Además, se le agrega un botón con el nombre "About" el cual da toda la información a la aplicación y la posibilidad de acceder a una version "pro", la cual contiene todas los módulos que quisimos agregarle que no implementamos por tiempo y/o complicidad, lo cual no quita que se implemente cuando tengamos mas conocimientos de aplicaciones móviles y/o web.

2.1- Casos de Uso:

2.1.1- Tocar la nota "E" en guitarra:

- Nombre: Tocar la nota "E" en guitarra.

- Propósito: Escuchar la nota especifica.

- Actor: El usuario del Programa.

- Pre-Condición: Tener abierta la vista de la Guitarra.

- Evento: El usuario toca el ícono correspondiente a la nota “Mi”.

- Post-Condición:Suena la nota “Mi” hasta que el usuario la detenga.

- Tipo: Manual

2.1.2- Cambiar vista de la guitarra al menú:

- Nombre: Cambiar vista de la guitarra al menú.

- Propósito: Cambiar la vista desde la guitarra hacía el menú, para así después elegir otro instrumento.

- Actor: El usuario del Programa.

- Pre-Condición: El usuario aprieta el botón “Back” de su celular

- Evento: El usuario selecciona el componente a rotar.

- Post-Condición: Cambia la vista desde la guitarra hacía el menú principal.

- Tipo: Manual

2.1.3- Uso del afinador de bajo:

- Nombre: Abrir el afinador de bajo.

- Propósito: Afinar la bajo.

- Actor: El usuario del Programa.

- Pre-Condición: Tener la aplicacon abierta.

- Evento: El usuario selecciona el icono "bajo"

- Post-Condición: Se abre la vista del bajo.

- Tipo: Manual

-

2.2- Diagrama de Clases

A continuación se muestra el diagrama de clases del proyecto:

3- Dificultades encontradas durante el desarrollo del proyecto:

-El problema principal fue la poca experiencia que se tenía en en el SO de android, se partió por aprender a implementar el lenguaje java en android studio, y aprender cómo funcionaban las clases nativas de android, luego se fue navegando en la api de android para aprender el funcionamiento de las clases que se usarían en el programa. https://developer.android.com/reference/classes.html

Uno de los bugs presentes es la reproducción de una nota cuando se sale de la vista de la aplicación, esto se debe a la poca experiencia con el manejo de botones nativos de los teléfonos, se trató de indagar cómo funcionaban los botones pero era demasiado complicado, la solución sería un condicional que apagara los sonidos al apretar el botón “back”. Como solución provisional se dejó un botón “Stop” en cada vista para detener el sonido antes de cambiar de vista.

4- Otros:

La aplicación no se encuentra en Google Play, ya que cobran por publicarla en dicha plataforma. Se adjunta link de Mega con la APK final de la aplicación.

Tun3r.apk

Para su uso sólo es necesario instalar la apk sin requisito previo

El link del repositorio con el código del proyecto es el siguiente:

Tun3r en Git (Acá se explica como conseguir el ejecutable en base al código mediante el uso de Android Studio)

Para correr la aplicacion desde android studio, se debe abrir el proyecto en android studio, y hacer click en el boton Run, el cual se encuentra en el toolbar de Android Studio.

Para mas detalles con la ejecucion de aplicaciones desde android, configuracion de emuladores, o uso de android studio en si, se invita a leer la api desde la página de android.

El link para la descarga del código sin pasar por Git es el siguiente:

Código Tun3r