SlideShare a Scribd company logo
1 of 22
Download to read offline
1
Programación 3 Grupo 1
Informe de presentación del proyecto
individual interciclo.
Aplicación realizada para usuarios de android 5.0.1 en adelante
“Find Me”.
Molina Orellana Kamila Nicole kamila.molina@ucuenca.ec
Resumen.-
Al realizar este proyecto en forma individual se ha buscado brindar una muestra del
código que se ha efectuado para este trabajo, de manera que se dé a cumplir con algunos
objetivos planteados tales como que el usuario sienta que esta propuesta le ha ayudado a
mejorar su experiencia dentro de la ciudad, o a su vez que los clientes puedan creer en la
veracidad de la información que se brindará una vez que los usuarios comiencen a
registrarse, para así dar énfasis en la seguridad y en el fácil acceso que brindará esta
aplicación; en segunda instancia se muestra cómo funciona la aplicación realizando una
simulación real para el cliente en la que ya existan ciertos usuarios a los cuales podamos
acceder a sus servicios, los cuales estarán mostrados en las secciones de “Figuras”,
además de demostrar cuales han sido los diferentes métodos y materiales empleados en
el transcurso de este proyecto.
2
Introducción.-
Find Me es un programa que ayuda a los visitantes de la ciudad a encontrar a
personas registradas y dispuestas a brindar sus datos personales, como lo son sus
nombres y apellidos de pila, su edad, los idiomas que maneja, su número de
contacto telefónico, su dirección y tres tipos de servicios pre-establecidos por el
desarrollador, tales como lo son: servicio de guía turística, servicio
de intérpretes y servicio de transporte; los cuales gracias al uso de
esta aplicación se los podrá mostrar con distinción de colores en una ubicación
instanciada por el mismo usuario dentro del mapa de la ciudad, donde al brindar su
ubicación referencial, el cliente podrá visualizar la cercanía o lejanía del usuario con
respecto al mismo cliente que desee contratar los servicios de otra persona; vale
mencionar que este contrato ya no se dará mediante la aplicación, sino más bien se hará
ya por parte del propio cliente que contacte de forma manual al usuario gracias al número
telefónico que ha sido brindado por el mismo usuarios; por ello es que se pide 100% de
veracidad al momento de registrarse pues así está dando credibilidad a su mismo usuario,
causando buenas reseñas en lugar de malas para las personas que han ingresado datos
erróneos o aquellos a quienes los clientes consideren no haber visto en ellos a personas
de confianza que cumplan con lo antepuesto y con lo que ellos mismo han llenado. Una
vez que el cliente se encuentre en la ventana de visualización del mapa con los usuarios
registrados, no es responsabilidad de la aplicación brindar imágenes del lugar o como
llegar a ese desde la ubicación actual; aunque sin importar a eso gracias al apoyo de la
API de google maps se consiguió hacer que la aplicación lo haga.
Materiales y Métodos.-
> Android Studio: Entorno de desarrollo integrado IDE oficial para la plataforma
de Android enfocado en el desarrollo de sus aplicaciones, el cual ofrece
funcionalidades de productividad gracias a su sistema flexible y amigable.
> Api de Google maps: Plataforma de creación de mapas atractivos para las
aplicaciones, en este caso específico aplicaciones de dispositivos móviles, las cuales
contiene facilidades de acceso ilimitado a la base de datos mundial de Google. Por lo
que esta nos permite emplear mapas y todas las funcionalidades que vengan incluida
3
en esta API y que las podemos instanciar dentro de nuestro código al momento de
efectuar nuestra aplicación.
> GitHub: Plataforma de desarrollo donde se cargó esta aplicación para que las demás
personas interesadas en el puedan analizar su código y ver su funcionalidad e incluso
esté disponible para la descarga a quien desee y pueda modificarlo según sus gustos
y necesidades.
> Zootero: Gestor de referencias bibliográficas de libre acceso instalado como una
extensión del navegador web Google Chrome, además de la descarga para la
plataforma de Windows, la cual es la parte que nos permite tener el
complemento en Word ideal para las citas y referencias.
> SlideShare: Plataforma virtual donde se cargó la presentación explicativa del
proyecto, con las ideas principales y la graficas mas generales.
Procedimiento.-
Sin lugar a duda para comenzar con la explicación del procedimiento de la
aplicación fabricada, tenemos (ver figura 1) a nuestro ícono de la aplicación con su
respectivo nombre y a partir de ahí, de darle click e inicializarlo, comenzaremos con la
explicación de las clases e interfaces más importantes de esta aplicación.
Antes de poder explicar el código y la interfaz escogida por mí persona como la
desarrolladora de esta aplicación; considero necesario mostrar el modelo de desarrollo
que se ha empleado para esta aplicación, es decir, el desacoplamiento de las partes que
componen al mismo [1], esto se ha logrado al seguir el diseño de tres capas que son: capa
de presentación, o también conocida como la >>capa de interfaz gráfica<<, es la
adecuada para presentar el sistema en funcionamiento hacia el usuario, pues esta capa
comunica y capta la información con la que esta interactuando el usuario en un mínimo
de tiempo y de procesos, considerando a su vez que esta debe ser amigable para quien la
use. Tenemos después el segundo nivel llamado capa de negocio, llamada también
capa lógica del negocio, esta es la capa donde se establecen aquellas reglas que deben
cumplirse en la ejecución del programa, más claro, esta capa está enfocada en recibir las
peticiones de los usuarios y enviar las respuestas a esas peticiones >>recibir solicitudes y
presentar los resultados<< gracias a la comunicación que esta tiene con la capa de
4
presentación por medio del uso de un gestor de base de datos. Nuestro tercer nivel en este
diseño de software es la capa de datos, donde como su mismo nombre lo explica,
aquí es lugar en el cual entran y también donde se accede a los datos, debido al uso de un
gestor de uno o varias base de datos, las cuales hacen factible >>recibir las solicitudes de
almacenamiento y de recuperación de información<< gracias a la conexión de esta capa
con la capa de negocios.
Una vez expresados estos niveles dentro de nuestra aplicación, podemos notar que
en el ya enfocado entorno de desarrollo en el que estamos trabajando, ya está separada la
capa de la interfaz gráfica del resto de código, por lo que es mucho más fácil y conveniente
trabajar de esta manera, pues nos restaría separar los códigos en nuestros otros dos niveles
antes mencionados; y para ello crearemos paquetes en los cuales los organizaremos según
su funcionalidad en código y con la concordancia en las definiciones de las capas antes
dadas (ver figura 2).
En esta parte de la presentación tenemos agregada una cuarta capa, la cual la
llamamos capa de bienvenida, donde encontramos secciones de código básicas
que son simplemente la primera ventana, que es la bienvenida (ver sección de código 1),
y la otra parte es una actividad sencilla que tiene conectado a esta más actividades que se
mostrarán a continuación por medio de la conexión entre actividades (ver sección de
código 2).
A continuación se explicaran las clases de Java que constan dentro de cada clase,
por lo que lo haremos en orden, así:
1. Revisión del código de la aplicación en la capa de datos:
Para esta segunda capa considero correcto mencionar las clases que perteneces
a esta, las cuales son: “DBHelper”, “MapsActivity”,
“MostrarusuariosActivity”; estas tres clases están enfocadas en recibir y
devolver datos, por lo que al analizar las clases en orden tenemos:
 La primera clase DBHelper que es donde creamos nuestra base de datos (ver
sección de código 3), dando inicio a nuestros datos y a la creación (teórica)
de nuestra tabla, conjuntamente con las distintas opciones que tenemos para
5
trabajar con nuestra base de datos, tales como son el hecho de Guardar los
datos en la tabla de base de datos (ver sección de código 6), los cuales al
recibir por teclado los datos a guardar empleamos un contenedor, el cual
funciona para ir colocando según se vayan llenando los datos dentro de la
tabla ya creada con anterioridad. Buscar dentro de nuestra base de datos el
nombre y la contraseña con la que se creó un nuevo dato en la misma base
(ver sección de código 4), gracias que con esta sección de código podemos
comprobar dentro de todas las opciones de usuarios creados, la que es
compatible simultáneamente en los dos campos para que nos muestre un
mensaje avisándonos si existe o no dicho usuario y así poder trabajar con este.
También tenemos como se elimina un dato de la base de datos (ver sección
de código 5), la cual al recibir el usuario que desea eliminar, lo hace simple
y sencillamente al marcar como null en donde solía estar, y así borrarlo. Por
ultimo tenemos la parte en la que se explica cómo mostrar todos los datos
guardados en nuestra base de datos (ver sección de código 7), este
procedimiento se hace por medio de uso de listas donde cada vez que
encontremos un nuevo dato a mostrar lo vamos agregando al final de la lista.
 La segunda clase MapsActivity se enfoca específicamente en instanciar el
mapa que estamos creando (ver sección de código 8), es decir en colocarlo
dentro de la aplicación con los respectivos permisos además de la ubicación
predefinida por mí como desarrolladora que está en la ciudad de Cuenca,
donde a partir de ahí podrán los clientes visualizar a todos los usuarios
registrados con sus nombres y servicios.
 Le tercera y última clase dentro de esta capa es la de MostrarusuariosActivity
la cual como pude mencionar en la primera clase de esta capa, esta clase que
muestra a los usuarios (ver sección de código 9), llama a su función ubicada
en la base de datos para poder efectuar el procedimiento de ir guardando e
imprimiendo en forma de lista.
2. Revisión del código de la aplicación en la capa de negocios:
Dentro de esta capa considero ideal mencionar cuales sol las clases que la
conforman, “RegistrarseActivity”, “IniciarsesionActivity” y
6
“NavegacomoclienteActivity”; al estar estas clases en esta capa específica
podemos mencionar de ellas lo siguiente, por ejemplo para los primeras clases es
necesario el uso de la base de datos local que se creó para esta aplicación; por lo que
las explicaremos a continuación:
 La primera actividad RegistrarseActivity está asentada en el uso de base de
datos pues una vez llenados los datos que pide en esta actividad, estos datos
son obtenidos (ver sección de código 10), y así son transformados en strings
para a partir de ahí poderlos asignar al llamado de la función de guardar la
cual se creó en la clase DBHelper, y como podemos ver en esta clase (ver
sección de código 11), una vez que hayamos hecho el llamado a la función
donde se guarde la información ingresada para nuestro nuevo dato, limpiamos
los espacios donde se debe ingresar y nos redirige hacia la actividad principal
para desde ahí decidir que se desea hacer, si se desea agregar otro usuario, si
se desea iniciar sesión o si se desea mirar la lista de datos (usuarios).
 La segunda actividad es la de IniciarsesionActivity, y como su propio nombre
lo expresa, debemos ingresar por teclado la información del usuario que
seamos, es decir, nombre y contraseñas correctas (ver sección de código 12),
para poder por medio de la transformación a strings de los datos ingresados,
compararlos con la opción de búsqueda de la base de datos para corroborar
que esa contraseña pertenece a ese usuario, y en especial que dicho usuario
existe; por lo que una vez corroborada que la información ingresada existe
dentro de la base de datos poder asignar cada dato a un array que ayudará a
imprimirlo en esa misma ventana para poder analizarla, y dada el caso que
pueda incluso ser eliminada (ver sección de código 13).
 La tercera clase dentro de este nivel es NavegacomoclienteActivity la cual nos
da la posibilidad de hacer exactamente lo que dice, es decir que desde esta
actividad nos redirigirá directamente hacia la actividad de vista del mapa
donde podremos diferencias los distintos marcadores con sus nombres y
servicios e incluso desde ahí dirigirnos hacia una vista de todos los usuarios
para que desde ahí podamos también ver cuál es el indicado para el caso que
deseemos.
7
3. Revisión del código de la aplicación en la capa de presentación o
interfaz gráfica:
Como ya se mencionó con anterioridad este nivel ya está desacoplado pre
definidamente, por lo que a continuación se mostrara el trabajo realizado en este nivel
mostrando, como se les llama en este entorno >>cada actividad<< es decir,
coloquialmente cada >>ventana<< que posee nuestra aplicación.
En primera vista, se muestra la actividad de bienvenida (ver figura 3), la cual es
una >>ventana de información<< que brinda al usuario en primera instancia de lo que
va a tratar la aplicación; después. Al presionar el botón “SIGUENTE” de esa misma
actividad, nos redirige hacia una segunda actividad (ver figura 4) donde desde aquí
podemos distinguirnos entre clientes y usuarios, los cuales se redirigirán a distintas
actividades dependiendo de lo escogido; al ir en orden analizaremos primero el caso
de ser usuarios, es decir, que nos podemos >>registrar<< e >>iniciar sesión<<; entonces
si seleccionamos el botón de “REGISTRAR” nos redirige hacia la ventana donde
debemos >>registrarnos como usuarios<< ingresando todos los datos que nos piden de
manera verídica (ver figura 5) y al seleccionar el botón “REGISTARSE” notamos como
nos envía nuevamente a la ventana anterior; por lo que ahora, en el mismo modo
usuario nos queda la segunda opción de “INICIAR SESION” la cual nos redirige a una
actividad donde al ingresar el nombre de pila con el que nos registramos y que la
contraseña coincida con la del usuario, al seleccionar el botón “BUSCAR USUARIO”
(ver figura 6), en este caso específico ingresaremos datos reales (ver figura 7) lo
cuales nos habilitara la misma ventana con una vista hacia abajo (ver figura 8) donde
podremos >>encontrar la información del usuario<< requerido y a partir de ahí,
trabajar con él, tanto si se desea eliminarlo permanentemente de la base de datos o si
solo se desea modificarlo. Una vez que hayamos navegado como usuarios, también
tenemos la opción de hacerlo como clientes como se veía la actividad anterior (ver
figura 4) donde al seleccionar el botón “NAVEGA COMO CLIENTE” podemos analizar
otra ventana de información (ver figura 9) la cual nos indica el funcionamiento visual
de la siguiente actividad que al seleccionar el botón “IR AL MAPA” nos redirige a esta
otra (ver figura 10) que es la actividad enfocada en el mapa de extensión de >>google
maps<< con sus respectivos marcadores según cada usuario se hayan registrado con
su ubicación de referencia. Quiero mencionar que cuando se seleccione algún
8
marcador, automáticamente aparecerá en la parte inferior derecha de esta misma
actividad dos opciones propias de la api de google que no son propias de las
especificaciones de esta aplicación, pero que sirven para el cliente pueda >>ubicarse<<
de mejor manera y si desea dado el caso, pueda >>llegar<< a esa ubicación en una
ciudad extraña para él/ella.
Para terminar dentro de la figura 4 hay una especie de extensión si deslizamos
hacia abajo (ver figura 11), donde podemos encontrar la opción de mirar la
información de todos los usuarios registrados en esta base de datos, redirigiéndonos a
otra actividad que mostrará todos los datos en nuestra base de datos (ver figura 12).
Deseo agregar que como se pudo haber notado en las figuras, todas estas capas están
dentro de una misma aplicación y de un mismo ordenador sin la necesidad de conectarlas
como se creyera, dando la solución a este problema de desacoplamiento con la simple
solución de separarlas en las tres capas principales [2] y en una cuarta que se lo ha hecho
por decisión propia para esta aplicación.
Conclusiones.-
De acuerdo a lo realizado durante esta aplicación, puedo asegurar que he cumplido
muchos de los objetivos que me propuse como meta al realizar este proyecto, pero
también hubo algunos otros que conforme iba avanzando en la programación del código
se me complicaba un poco resolver esos problemas de la forma en la que me lo propuse
inicialmente en hacer. A continuación expresaré mis metas cumplidas por mi primera
opción, y las que tuve que cambiar el plan inicial; así como las que no pude completar
dada su dificultad.
Dentro de las metas cumplidas según la idea originaria, tengo que sí inicialicé una
base de datos local en la cual puedo hacer que usuarios se registren guardando su
información en dicha tabla y a partir de ahí, también es posible extraer los datos como era
la idea principal. También he logrado una parte de código en la cual puedo iniciar sesión
como un usuario registrado, y si no lo estoy, no se abrirá el menú de información; por lo
que con esto puedo comprobar que tengo validada la información pertinente e ideal para
realizar muchas de las actividades. Además de otra meta cumplida que sería la agregación
del mapa gracias a la API de google maps, con la cual pude trabajar de manera en la
9
que muestro lo que deseo, en donde deseo y en el momento que lo quiero. Por otro lado
también he tenido metas cumplidas, pero para efectuarlas tuve que cambiar el plan
principal, por ejemplo en el caso de registrarse como usuario, tenía planeado escoger entre
los tres tipos de servicio a brindar por medio de check boxes, pero una vez que me
encontraba en esa situación, no supe como extraer los datos de forma continua, por lo que
mi solución fue el cambiar el método de entrada, y a la final lo conseguí de manera que
el usuario tenga que escribirlo por teclado.
Aunque parezco inverosímil, también tuve un objetivo que no pude alcanzar, ese
fue que al momento que un cliente ya haya contratado y experimentado el servicio
brindado por tal usuario, no logré implementar una función en la cual esté disponible la
opción de darle un Rankin de satisfacción, por lo que puedo afirmar que esto
no se cumplió.
Para finalizar, en el desarrollo de esta aplicación, me siento muy satisfecha con el
trabajo realizado durante todo este tiempo para llevar a cabo el proyecto, pues siento que
no he fallado en mi investigación previa al desarrollo del código [3], pues al no haber
tenido ninguna base ni idea antes de este proyecto, opino que al ser el primero (espero de
muchos más) logré aumentar mis conocimientos en programación de aplicaciones para
dispositivos, y más allá de todo esto, incrementé mis propios conocimientos en
programación.
Referencias.-
[1] «Conoce Android Studio | Android Studio,» 17 05 2017. [En línea]. Available:
https://developer.android.com/studio/intro/index.html.
[2] «HERE Map APIs - HERE Developer,» 19 05 2017. [En línea]. Available:
https://developer.here.com/lp/mapAPIs?cid=sem-bing-iprospect_cmTier1-Competitors-
E_agGoogle%3EMaps%3EE%3EUS&utm_source=ppc&utm_campaign=Maps-Bing-MM-T1-
Dev-Comp-E&utm_term=google%20maps%20api.
[3] «geolocalizacion,» 2007. [En línea]. Available:
https://www.definicionabc.com/geografia/geolocalizacion.php. [Último acceso: 11 05
2017].
10
Links de referencias.-
Código de la aplicación cargado en GitHub:
https://github.com/KamilaMolinaOrellana/MiApp
Figuras.-
Figura 1: Ícono de la aplicación.
11
Figura 2: Separación de las tres capas con las que se va a trabajar.
Figura 3: Ventana de información de la aplicación.
12
Figura 4: Ventana de división entre –clientes- y –usuarios-
Figura 5: Ventana de Registro de usuario.
13
Figura 6: Ventana de Inicio de sesión como usuario.
Figura 7: Ejemplo práctico de inicio de sesión para comprobar que funciona como se espera.
14
Figura 8: Ventana que muestra la información del usuario que inició sesión.
Figura 9: Ventana de información para los clientes para que se guíen en el mapa que se muestra a continuación.
15
Figura 10: Mapa de la ubicación predefinida por la desarrolladora que muestra ya tres marcadores de 3 usuarios
que ya están registrados dentro de la base de datos.
Figura 11: Ventana que muestra la extensión de la Figura 4
16
Figura 12: Ventana que muestra la lista con todos los usuarios y su información referencial registrada en la base de
datos.
Secciones de Código.-
Sección de Código 1
17
Sección de Código 2
Sección de Código 3
18
Sección de Código 4
Sección de Código 5
19
Sección de Código 6
Sección de Código 7
20
Sección de Código 8
Sección de Código 9
21
Sección de Código 10
Sección de Código 11
22
Sección de Código 12
Sección de Código 13

More Related Content

What's hot

A toda máquina con herencia visual
A toda máquina con herencia visualA toda máquina con herencia visual
A toda máquina con herencia visualIgnacio Monllor
 
Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0daiacos
 
Fundamentos de visual basico por vicente sanchez
Fundamentos de visual basico por vicente sanchezFundamentos de visual basico por vicente sanchez
Fundamentos de visual basico por vicente sanchezJairo Bermudez
 
Dce2 Introduccion Win Forms
Dce2 Introduccion Win FormsDce2 Introduccion Win Forms
Dce2 Introduccion Win FormsEsteban Soraire
 
Fernando Espinoza
Fernando EspinozaFernando Espinoza
Fernando EspinozaMarvel ico
 
Trabajo
TrabajoTrabajo
Trabajoqwz123
 
Conexion bases de datos a visual basic 6.0
Conexion  bases de datos a visual basic 6.0Conexion  bases de datos a visual basic 6.0
Conexion bases de datos a visual basic 6.0bigdog10
 
Instructivo dia 2_curso_flex
Instructivo dia 2_curso_flexInstructivo dia 2_curso_flex
Instructivo dia 2_curso_flexVictor Aravena
 
visual basic 6.0
visual basic 6.0visual basic 6.0
visual basic 6.0lesly53
 
Fundamentos de Visual Basic
Fundamentos de Visual BasicFundamentos de Visual Basic
Fundamentos de Visual BasicSamirCabrera5
 
Visual basic y java
Visual basic y javaVisual basic y java
Visual basic y javaKareliaRivas
 
Manual gui net_beans
Manual gui net_beansManual gui net_beans
Manual gui net_beansYefry Coz
 
Aplicaciones windows en visual basic.net
 Aplicaciones windows en visual basic.net Aplicaciones windows en visual basic.net
Aplicaciones windows en visual basic.netRonald Rivas
 
Guia Practica Maquetación HTML5, CSS
Guia Practica Maquetación HTML5, CSSGuia Practica Maquetación HTML5, CSS
Guia Practica Maquetación HTML5, CSSlissette_torrealba
 

What's hot (20)

Unidad I. Programación
Unidad I. ProgramaciónUnidad I. Programación
Unidad I. Programación
 
A toda máquina con herencia visual
A toda máquina con herencia visualA toda máquina con herencia visual
A toda máquina con herencia visual
 
Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0Base de datos desde visual basic 6.0
Base de datos desde visual basic 6.0
 
Fundamentos de visual basico por vicente sanchez
Fundamentos de visual basico por vicente sanchezFundamentos de visual basico por vicente sanchez
Fundamentos de visual basico por vicente sanchez
 
Dce2 Introduccion Win Forms
Dce2 Introduccion Win FormsDce2 Introduccion Win Forms
Dce2 Introduccion Win Forms
 
Fernando Espinoza
Fernando EspinozaFernando Espinoza
Fernando Espinoza
 
Vb entorno manual
Vb entorno manualVb entorno manual
Vb entorno manual
 
Trabajo
TrabajoTrabajo
Trabajo
 
Conexion bases de datos a visual basic 6.0
Conexion  bases de datos a visual basic 6.0Conexion  bases de datos a visual basic 6.0
Conexion bases de datos a visual basic 6.0
 
Trabajo
TrabajoTrabajo
Trabajo
 
Instructivo dia 2_curso_flex
Instructivo dia 2_curso_flexInstructivo dia 2_curso_flex
Instructivo dia 2_curso_flex
 
visual basic 6.0
visual basic 6.0visual basic 6.0
visual basic 6.0
 
Fundamentos de Visual Basic
Fundamentos de Visual BasicFundamentos de Visual Basic
Fundamentos de Visual Basic
 
Luis jose coronel num 42
Luis jose coronel num 42Luis jose coronel num 42
Luis jose coronel num 42
 
Visual basic y java
Visual basic y javaVisual basic y java
Visual basic y java
 
Manual gui net_beans
Manual gui net_beansManual gui net_beans
Manual gui net_beans
 
Elemento2
Elemento2Elemento2
Elemento2
 
Aplicaciones windows en visual basic.net
 Aplicaciones windows en visual basic.net Aplicaciones windows en visual basic.net
Aplicaciones windows en visual basic.net
 
Guia Practica Maquetación HTML5, CSS
Guia Practica Maquetación HTML5, CSSGuia Practica Maquetación HTML5, CSS
Guia Practica Maquetación HTML5, CSS
 
Trabajo de patricia
Trabajo de patriciaTrabajo de patricia
Trabajo de patricia
 

Similar to Informe Proyecto Interciclo

Similar to Informe Proyecto Interciclo (20)

Turismo sobre ruedas
Turismo sobre ruedasTurismo sobre ruedas
Turismo sobre ruedas
 
CTParking documentacion aplicacion
CTParking documentacion aplicacion CTParking documentacion aplicacion
CTParking documentacion aplicacion
 
DAM-S7.pptx
DAM-S7.pptxDAM-S7.pptx
DAM-S7.pptx
 
Actividad 11
Actividad 11Actividad 11
Actividad 11
 
Actividad 11
Actividad 11Actividad 11
Actividad 11
 
Actividad 11
Actividad 11Actividad 11
Actividad 11
 
Preentrega needing help
Preentrega needing helpPreentrega needing help
Preentrega needing help
 
Preentrega needinghelp 2.0
Preentrega needinghelp 2.0Preentrega needinghelp 2.0
Preentrega needinghelp 2.0
 
Aplicacion movil
Aplicacion movilAplicacion movil
Aplicacion movil
 
Monografia top sw
Monografia top swMonografia top sw
Monografia top sw
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Aplicaciones de beacons y NFC
Aplicaciones de beacons y NFCAplicaciones de beacons y NFC
Aplicaciones de beacons y NFC
 
Instrucciones y estructuras
Instrucciones y estructurasInstrucciones y estructuras
Instrucciones y estructuras
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 
Arquitectura de Software
Arquitectura de SoftwareArquitectura de Software
Arquitectura de Software
 
Clase numero 6
Clase numero 6Clase numero 6
Clase numero 6
 
Preguntas android
Preguntas androidPreguntas android
Preguntas android
 
A charla12 arq.3-capas
A charla12 arq.3-capasA charla12 arq.3-capas
A charla12 arq.3-capas
 
Aplicacion movil con_bd
Aplicacion movil con_bdAplicacion movil con_bd
Aplicacion movil con_bd
 

Recently uploaded

Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----AdministracionSSTGru
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidasNelsonQuispeQuispitu
 
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosRevista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosJeanCarlosLorenzo1
 
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...Arquitecto Alejandro Gomez cornejo muñoz
 
La mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionLa mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionnewspotify528
 
Tema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaTema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaLissetteMorejonLeon
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
PPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdf
PPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdfPPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdf
PPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdfDarwinJPaulino
 
POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......dianamontserratmayor
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfErikNivor
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTAvanessaecharry2511
 
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEfrain Yungan
 
3.3 Tipos de conexiones en los transformadores trifasicos.pdf
3.3 Tipos de conexiones en los transformadores trifasicos.pdf3.3 Tipos de conexiones en los transformadores trifasicos.pdf
3.3 Tipos de conexiones en los transformadores trifasicos.pdfRicardoRomeroUrbano
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023ANDECE
 
5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx
5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx
5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptxNayeliZarzosa1
 
electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejerciciosEfrain Yungan
 
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfPRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfAuraGabriela2
 
lean manufacturing and its definition for industries
lean manufacturing and its definition for industrieslean manufacturing and its definition for industries
lean manufacturing and its definition for industriesbarom
 
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdfINSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdfautomatechcv
 

Recently uploaded (20)

Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----Ley 29783 ALCANCES E INTERPRETACION ----
Ley 29783 ALCANCES E INTERPRETACION ----
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidas
 
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosRevista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
 
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
MEC. FLUIDOS - Análisis Diferencial del Movimiento de un Fluido -GRUPO5 sergi...
 
La mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacionLa mineralogia y minerales, clasificacion
La mineralogia y minerales, clasificacion
 
Tema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieriaTema 7 Plantas Industriales (2).pptx ingenieria
Tema 7 Plantas Industriales (2).pptx ingenieria
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
PPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdf
PPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdfPPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdf
PPT - MODIFICACIONES PRESUPUESTARIAS - Anexo II VF.pdf
 
POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......POBLACIONES CICLICAS Y NO CICLICAS ......
POBLACIONES CICLICAS Y NO CICLICAS ......
 
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdfCONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
CONSTRUCCIONES II - SEMANA 01 - REGLAMENTO NACIONAL DE EDIFICACIONES.pdf
 
Linea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptxLinea del tiempo de la inteligencia artificial.pptx
Linea del tiempo de la inteligencia artificial.pptx
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
 
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
 
3.3 Tipos de conexiones en los transformadores trifasicos.pdf
3.3 Tipos de conexiones en los transformadores trifasicos.pdf3.3 Tipos de conexiones en los transformadores trifasicos.pdf
3.3 Tipos de conexiones en los transformadores trifasicos.pdf
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
 
5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx
5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx
5.1 MATERIAL COMPLEMENTARIO Sesión 02.pptx
 
electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicios
 
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdfPRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
PRIMER Y SEGUNDO TEOREMA DE CASTIGLIANO.pdf
 
lean manufacturing and its definition for industries
lean manufacturing and its definition for industrieslean manufacturing and its definition for industries
lean manufacturing and its definition for industries
 
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdfINSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
INSTRUCTIVO_NNNNNNNNNNNNNNSART2 iess.pdf
 

Informe Proyecto Interciclo

  • 1. 1 Programación 3 Grupo 1 Informe de presentación del proyecto individual interciclo. Aplicación realizada para usuarios de android 5.0.1 en adelante “Find Me”. Molina Orellana Kamila Nicole kamila.molina@ucuenca.ec Resumen.- Al realizar este proyecto en forma individual se ha buscado brindar una muestra del código que se ha efectuado para este trabajo, de manera que se dé a cumplir con algunos objetivos planteados tales como que el usuario sienta que esta propuesta le ha ayudado a mejorar su experiencia dentro de la ciudad, o a su vez que los clientes puedan creer en la veracidad de la información que se brindará una vez que los usuarios comiencen a registrarse, para así dar énfasis en la seguridad y en el fácil acceso que brindará esta aplicación; en segunda instancia se muestra cómo funciona la aplicación realizando una simulación real para el cliente en la que ya existan ciertos usuarios a los cuales podamos acceder a sus servicios, los cuales estarán mostrados en las secciones de “Figuras”, además de demostrar cuales han sido los diferentes métodos y materiales empleados en el transcurso de este proyecto.
  • 2. 2 Introducción.- Find Me es un programa que ayuda a los visitantes de la ciudad a encontrar a personas registradas y dispuestas a brindar sus datos personales, como lo son sus nombres y apellidos de pila, su edad, los idiomas que maneja, su número de contacto telefónico, su dirección y tres tipos de servicios pre-establecidos por el desarrollador, tales como lo son: servicio de guía turística, servicio de intérpretes y servicio de transporte; los cuales gracias al uso de esta aplicación se los podrá mostrar con distinción de colores en una ubicación instanciada por el mismo usuario dentro del mapa de la ciudad, donde al brindar su ubicación referencial, el cliente podrá visualizar la cercanía o lejanía del usuario con respecto al mismo cliente que desee contratar los servicios de otra persona; vale mencionar que este contrato ya no se dará mediante la aplicación, sino más bien se hará ya por parte del propio cliente que contacte de forma manual al usuario gracias al número telefónico que ha sido brindado por el mismo usuarios; por ello es que se pide 100% de veracidad al momento de registrarse pues así está dando credibilidad a su mismo usuario, causando buenas reseñas en lugar de malas para las personas que han ingresado datos erróneos o aquellos a quienes los clientes consideren no haber visto en ellos a personas de confianza que cumplan con lo antepuesto y con lo que ellos mismo han llenado. Una vez que el cliente se encuentre en la ventana de visualización del mapa con los usuarios registrados, no es responsabilidad de la aplicación brindar imágenes del lugar o como llegar a ese desde la ubicación actual; aunque sin importar a eso gracias al apoyo de la API de google maps se consiguió hacer que la aplicación lo haga. Materiales y Métodos.- > Android Studio: Entorno de desarrollo integrado IDE oficial para la plataforma de Android enfocado en el desarrollo de sus aplicaciones, el cual ofrece funcionalidades de productividad gracias a su sistema flexible y amigable. > Api de Google maps: Plataforma de creación de mapas atractivos para las aplicaciones, en este caso específico aplicaciones de dispositivos móviles, las cuales contiene facilidades de acceso ilimitado a la base de datos mundial de Google. Por lo que esta nos permite emplear mapas y todas las funcionalidades que vengan incluida
  • 3. 3 en esta API y que las podemos instanciar dentro de nuestro código al momento de efectuar nuestra aplicación. > GitHub: Plataforma de desarrollo donde se cargó esta aplicación para que las demás personas interesadas en el puedan analizar su código y ver su funcionalidad e incluso esté disponible para la descarga a quien desee y pueda modificarlo según sus gustos y necesidades. > Zootero: Gestor de referencias bibliográficas de libre acceso instalado como una extensión del navegador web Google Chrome, además de la descarga para la plataforma de Windows, la cual es la parte que nos permite tener el complemento en Word ideal para las citas y referencias. > SlideShare: Plataforma virtual donde se cargó la presentación explicativa del proyecto, con las ideas principales y la graficas mas generales. Procedimiento.- Sin lugar a duda para comenzar con la explicación del procedimiento de la aplicación fabricada, tenemos (ver figura 1) a nuestro ícono de la aplicación con su respectivo nombre y a partir de ahí, de darle click e inicializarlo, comenzaremos con la explicación de las clases e interfaces más importantes de esta aplicación. Antes de poder explicar el código y la interfaz escogida por mí persona como la desarrolladora de esta aplicación; considero necesario mostrar el modelo de desarrollo que se ha empleado para esta aplicación, es decir, el desacoplamiento de las partes que componen al mismo [1], esto se ha logrado al seguir el diseño de tres capas que son: capa de presentación, o también conocida como la >>capa de interfaz gráfica<<, es la adecuada para presentar el sistema en funcionamiento hacia el usuario, pues esta capa comunica y capta la información con la que esta interactuando el usuario en un mínimo de tiempo y de procesos, considerando a su vez que esta debe ser amigable para quien la use. Tenemos después el segundo nivel llamado capa de negocio, llamada también capa lógica del negocio, esta es la capa donde se establecen aquellas reglas que deben cumplirse en la ejecución del programa, más claro, esta capa está enfocada en recibir las peticiones de los usuarios y enviar las respuestas a esas peticiones >>recibir solicitudes y presentar los resultados<< gracias a la comunicación que esta tiene con la capa de
  • 4. 4 presentación por medio del uso de un gestor de base de datos. Nuestro tercer nivel en este diseño de software es la capa de datos, donde como su mismo nombre lo explica, aquí es lugar en el cual entran y también donde se accede a los datos, debido al uso de un gestor de uno o varias base de datos, las cuales hacen factible >>recibir las solicitudes de almacenamiento y de recuperación de información<< gracias a la conexión de esta capa con la capa de negocios. Una vez expresados estos niveles dentro de nuestra aplicación, podemos notar que en el ya enfocado entorno de desarrollo en el que estamos trabajando, ya está separada la capa de la interfaz gráfica del resto de código, por lo que es mucho más fácil y conveniente trabajar de esta manera, pues nos restaría separar los códigos en nuestros otros dos niveles antes mencionados; y para ello crearemos paquetes en los cuales los organizaremos según su funcionalidad en código y con la concordancia en las definiciones de las capas antes dadas (ver figura 2). En esta parte de la presentación tenemos agregada una cuarta capa, la cual la llamamos capa de bienvenida, donde encontramos secciones de código básicas que son simplemente la primera ventana, que es la bienvenida (ver sección de código 1), y la otra parte es una actividad sencilla que tiene conectado a esta más actividades que se mostrarán a continuación por medio de la conexión entre actividades (ver sección de código 2). A continuación se explicaran las clases de Java que constan dentro de cada clase, por lo que lo haremos en orden, así: 1. Revisión del código de la aplicación en la capa de datos: Para esta segunda capa considero correcto mencionar las clases que perteneces a esta, las cuales son: “DBHelper”, “MapsActivity”, “MostrarusuariosActivity”; estas tres clases están enfocadas en recibir y devolver datos, por lo que al analizar las clases en orden tenemos:  La primera clase DBHelper que es donde creamos nuestra base de datos (ver sección de código 3), dando inicio a nuestros datos y a la creación (teórica) de nuestra tabla, conjuntamente con las distintas opciones que tenemos para
  • 5. 5 trabajar con nuestra base de datos, tales como son el hecho de Guardar los datos en la tabla de base de datos (ver sección de código 6), los cuales al recibir por teclado los datos a guardar empleamos un contenedor, el cual funciona para ir colocando según se vayan llenando los datos dentro de la tabla ya creada con anterioridad. Buscar dentro de nuestra base de datos el nombre y la contraseña con la que se creó un nuevo dato en la misma base (ver sección de código 4), gracias que con esta sección de código podemos comprobar dentro de todas las opciones de usuarios creados, la que es compatible simultáneamente en los dos campos para que nos muestre un mensaje avisándonos si existe o no dicho usuario y así poder trabajar con este. También tenemos como se elimina un dato de la base de datos (ver sección de código 5), la cual al recibir el usuario que desea eliminar, lo hace simple y sencillamente al marcar como null en donde solía estar, y así borrarlo. Por ultimo tenemos la parte en la que se explica cómo mostrar todos los datos guardados en nuestra base de datos (ver sección de código 7), este procedimiento se hace por medio de uso de listas donde cada vez que encontremos un nuevo dato a mostrar lo vamos agregando al final de la lista.  La segunda clase MapsActivity se enfoca específicamente en instanciar el mapa que estamos creando (ver sección de código 8), es decir en colocarlo dentro de la aplicación con los respectivos permisos además de la ubicación predefinida por mí como desarrolladora que está en la ciudad de Cuenca, donde a partir de ahí podrán los clientes visualizar a todos los usuarios registrados con sus nombres y servicios.  Le tercera y última clase dentro de esta capa es la de MostrarusuariosActivity la cual como pude mencionar en la primera clase de esta capa, esta clase que muestra a los usuarios (ver sección de código 9), llama a su función ubicada en la base de datos para poder efectuar el procedimiento de ir guardando e imprimiendo en forma de lista. 2. Revisión del código de la aplicación en la capa de negocios: Dentro de esta capa considero ideal mencionar cuales sol las clases que la conforman, “RegistrarseActivity”, “IniciarsesionActivity” y
  • 6. 6 “NavegacomoclienteActivity”; al estar estas clases en esta capa específica podemos mencionar de ellas lo siguiente, por ejemplo para los primeras clases es necesario el uso de la base de datos local que se creó para esta aplicación; por lo que las explicaremos a continuación:  La primera actividad RegistrarseActivity está asentada en el uso de base de datos pues una vez llenados los datos que pide en esta actividad, estos datos son obtenidos (ver sección de código 10), y así son transformados en strings para a partir de ahí poderlos asignar al llamado de la función de guardar la cual se creó en la clase DBHelper, y como podemos ver en esta clase (ver sección de código 11), una vez que hayamos hecho el llamado a la función donde se guarde la información ingresada para nuestro nuevo dato, limpiamos los espacios donde se debe ingresar y nos redirige hacia la actividad principal para desde ahí decidir que se desea hacer, si se desea agregar otro usuario, si se desea iniciar sesión o si se desea mirar la lista de datos (usuarios).  La segunda actividad es la de IniciarsesionActivity, y como su propio nombre lo expresa, debemos ingresar por teclado la información del usuario que seamos, es decir, nombre y contraseñas correctas (ver sección de código 12), para poder por medio de la transformación a strings de los datos ingresados, compararlos con la opción de búsqueda de la base de datos para corroborar que esa contraseña pertenece a ese usuario, y en especial que dicho usuario existe; por lo que una vez corroborada que la información ingresada existe dentro de la base de datos poder asignar cada dato a un array que ayudará a imprimirlo en esa misma ventana para poder analizarla, y dada el caso que pueda incluso ser eliminada (ver sección de código 13).  La tercera clase dentro de este nivel es NavegacomoclienteActivity la cual nos da la posibilidad de hacer exactamente lo que dice, es decir que desde esta actividad nos redirigirá directamente hacia la actividad de vista del mapa donde podremos diferencias los distintos marcadores con sus nombres y servicios e incluso desde ahí dirigirnos hacia una vista de todos los usuarios para que desde ahí podamos también ver cuál es el indicado para el caso que deseemos.
  • 7. 7 3. Revisión del código de la aplicación en la capa de presentación o interfaz gráfica: Como ya se mencionó con anterioridad este nivel ya está desacoplado pre definidamente, por lo que a continuación se mostrara el trabajo realizado en este nivel mostrando, como se les llama en este entorno >>cada actividad<< es decir, coloquialmente cada >>ventana<< que posee nuestra aplicación. En primera vista, se muestra la actividad de bienvenida (ver figura 3), la cual es una >>ventana de información<< que brinda al usuario en primera instancia de lo que va a tratar la aplicación; después. Al presionar el botón “SIGUENTE” de esa misma actividad, nos redirige hacia una segunda actividad (ver figura 4) donde desde aquí podemos distinguirnos entre clientes y usuarios, los cuales se redirigirán a distintas actividades dependiendo de lo escogido; al ir en orden analizaremos primero el caso de ser usuarios, es decir, que nos podemos >>registrar<< e >>iniciar sesión<<; entonces si seleccionamos el botón de “REGISTRAR” nos redirige hacia la ventana donde debemos >>registrarnos como usuarios<< ingresando todos los datos que nos piden de manera verídica (ver figura 5) y al seleccionar el botón “REGISTARSE” notamos como nos envía nuevamente a la ventana anterior; por lo que ahora, en el mismo modo usuario nos queda la segunda opción de “INICIAR SESION” la cual nos redirige a una actividad donde al ingresar el nombre de pila con el que nos registramos y que la contraseña coincida con la del usuario, al seleccionar el botón “BUSCAR USUARIO” (ver figura 6), en este caso específico ingresaremos datos reales (ver figura 7) lo cuales nos habilitara la misma ventana con una vista hacia abajo (ver figura 8) donde podremos >>encontrar la información del usuario<< requerido y a partir de ahí, trabajar con él, tanto si se desea eliminarlo permanentemente de la base de datos o si solo se desea modificarlo. Una vez que hayamos navegado como usuarios, también tenemos la opción de hacerlo como clientes como se veía la actividad anterior (ver figura 4) donde al seleccionar el botón “NAVEGA COMO CLIENTE” podemos analizar otra ventana de información (ver figura 9) la cual nos indica el funcionamiento visual de la siguiente actividad que al seleccionar el botón “IR AL MAPA” nos redirige a esta otra (ver figura 10) que es la actividad enfocada en el mapa de extensión de >>google maps<< con sus respectivos marcadores según cada usuario se hayan registrado con su ubicación de referencia. Quiero mencionar que cuando se seleccione algún
  • 8. 8 marcador, automáticamente aparecerá en la parte inferior derecha de esta misma actividad dos opciones propias de la api de google que no son propias de las especificaciones de esta aplicación, pero que sirven para el cliente pueda >>ubicarse<< de mejor manera y si desea dado el caso, pueda >>llegar<< a esa ubicación en una ciudad extraña para él/ella. Para terminar dentro de la figura 4 hay una especie de extensión si deslizamos hacia abajo (ver figura 11), donde podemos encontrar la opción de mirar la información de todos los usuarios registrados en esta base de datos, redirigiéndonos a otra actividad que mostrará todos los datos en nuestra base de datos (ver figura 12). Deseo agregar que como se pudo haber notado en las figuras, todas estas capas están dentro de una misma aplicación y de un mismo ordenador sin la necesidad de conectarlas como se creyera, dando la solución a este problema de desacoplamiento con la simple solución de separarlas en las tres capas principales [2] y en una cuarta que se lo ha hecho por decisión propia para esta aplicación. Conclusiones.- De acuerdo a lo realizado durante esta aplicación, puedo asegurar que he cumplido muchos de los objetivos que me propuse como meta al realizar este proyecto, pero también hubo algunos otros que conforme iba avanzando en la programación del código se me complicaba un poco resolver esos problemas de la forma en la que me lo propuse inicialmente en hacer. A continuación expresaré mis metas cumplidas por mi primera opción, y las que tuve que cambiar el plan inicial; así como las que no pude completar dada su dificultad. Dentro de las metas cumplidas según la idea originaria, tengo que sí inicialicé una base de datos local en la cual puedo hacer que usuarios se registren guardando su información en dicha tabla y a partir de ahí, también es posible extraer los datos como era la idea principal. También he logrado una parte de código en la cual puedo iniciar sesión como un usuario registrado, y si no lo estoy, no se abrirá el menú de información; por lo que con esto puedo comprobar que tengo validada la información pertinente e ideal para realizar muchas de las actividades. Además de otra meta cumplida que sería la agregación del mapa gracias a la API de google maps, con la cual pude trabajar de manera en la
  • 9. 9 que muestro lo que deseo, en donde deseo y en el momento que lo quiero. Por otro lado también he tenido metas cumplidas, pero para efectuarlas tuve que cambiar el plan principal, por ejemplo en el caso de registrarse como usuario, tenía planeado escoger entre los tres tipos de servicio a brindar por medio de check boxes, pero una vez que me encontraba en esa situación, no supe como extraer los datos de forma continua, por lo que mi solución fue el cambiar el método de entrada, y a la final lo conseguí de manera que el usuario tenga que escribirlo por teclado. Aunque parezco inverosímil, también tuve un objetivo que no pude alcanzar, ese fue que al momento que un cliente ya haya contratado y experimentado el servicio brindado por tal usuario, no logré implementar una función en la cual esté disponible la opción de darle un Rankin de satisfacción, por lo que puedo afirmar que esto no se cumplió. Para finalizar, en el desarrollo de esta aplicación, me siento muy satisfecha con el trabajo realizado durante todo este tiempo para llevar a cabo el proyecto, pues siento que no he fallado en mi investigación previa al desarrollo del código [3], pues al no haber tenido ninguna base ni idea antes de este proyecto, opino que al ser el primero (espero de muchos más) logré aumentar mis conocimientos en programación de aplicaciones para dispositivos, y más allá de todo esto, incrementé mis propios conocimientos en programación. Referencias.- [1] «Conoce Android Studio | Android Studio,» 17 05 2017. [En línea]. Available: https://developer.android.com/studio/intro/index.html. [2] «HERE Map APIs - HERE Developer,» 19 05 2017. [En línea]. Available: https://developer.here.com/lp/mapAPIs?cid=sem-bing-iprospect_cmTier1-Competitors- E_agGoogle%3EMaps%3EE%3EUS&utm_source=ppc&utm_campaign=Maps-Bing-MM-T1- Dev-Comp-E&utm_term=google%20maps%20api. [3] «geolocalizacion,» 2007. [En línea]. Available: https://www.definicionabc.com/geografia/geolocalizacion.php. [Último acceso: 11 05 2017].
  • 10. 10 Links de referencias.- Código de la aplicación cargado en GitHub: https://github.com/KamilaMolinaOrellana/MiApp Figuras.- Figura 1: Ícono de la aplicación.
  • 11. 11 Figura 2: Separación de las tres capas con las que se va a trabajar. Figura 3: Ventana de información de la aplicación.
  • 12. 12 Figura 4: Ventana de división entre –clientes- y –usuarios- Figura 5: Ventana de Registro de usuario.
  • 13. 13 Figura 6: Ventana de Inicio de sesión como usuario. Figura 7: Ejemplo práctico de inicio de sesión para comprobar que funciona como se espera.
  • 14. 14 Figura 8: Ventana que muestra la información del usuario que inició sesión. Figura 9: Ventana de información para los clientes para que se guíen en el mapa que se muestra a continuación.
  • 15. 15 Figura 10: Mapa de la ubicación predefinida por la desarrolladora que muestra ya tres marcadores de 3 usuarios que ya están registrados dentro de la base de datos. Figura 11: Ventana que muestra la extensión de la Figura 4
  • 16. 16 Figura 12: Ventana que muestra la lista con todos los usuarios y su información referencial registrada en la base de datos. Secciones de Código.- Sección de Código 1
  • 17. 17 Sección de Código 2 Sección de Código 3
  • 18. 18 Sección de Código 4 Sección de Código 5
  • 19. 19 Sección de Código 6 Sección de Código 7
  • 20. 20 Sección de Código 8 Sección de Código 9
  • 21. 21 Sección de Código 10 Sección de Código 11
  • 22. 22 Sección de Código 12 Sección de Código 13