“APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

71
“APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE URBANO DEL ESTADO DE MÉXICO (APP REDEDOMEX)” INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD PROFESIONAL “ADOLFO LÓPEZ MATEOS” ZACATENCO PRESENTAN: MERLINA CONCEPCIÓN FLORES ARREDONDO CYNTHYA YAZMIN GARCIA SANCHEZ ASESORES: M. en C. ALEJANDRO HERRERA MARTINEZ M. en C. DAVID VÁZQUEZ ÁLVAREZ CIUDAD DE MÉXICO, MARZO 2019. TESIS PARA OBTENER EL TÍTULO DE: INGENIERO EN COMUNICACIONES Y ELECTRÓNICA

Transcript of “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

Page 1: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

“APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE

URBANO DEL ESTADO DE MÉXICO

(APP REDEDOMEX)”

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA

UNIDAD PROFESIONAL

“ADOLFO LÓPEZ MATEOS” ZACATENCO

PRESENTAN:

MERLINA CONCEPCIÓN FLORES ARREDONDO

CYNTHYA YAZMIN GARCIA SANCHEZ

ASESORES:

M. en C. ALEJANDRO HERRERA MARTINEZ

M. en C. DAVID VÁZQUEZ ÁLVAREZ

CIUDAD DE MÉXICO, MARZO 2019.

TESIS

PARA OBTENER EL TÍTULO DE:

INGENIERO EN COMUNICACIONES Y ELECTRÓNICA

Page 2: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …
Page 3: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …
Page 4: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

1

Resumen

El siguiente trabajo de investigación, tiene como finalidad indicar la ruta de la zona que recorre

el transporte público del Estado de México, para fines de prueba se tomará la ruta del municipio

de Nezahualcóyotl. La realización de este proyecto, tiene como objetivo brindar al usuario una

alternativa para ubicar la zonas en las que circulan las unidades de transporte urbano del

municipio antes mencionado, con la finalidad de que si no conoce el lugar o región a la cual

desea llegar, le sirva como una opción de toma de decisión de cómo hacer uso de ese medio de

transporte. Surge de la necesidad de que, si un usuario requiere hacer uso de los transportes

urbanos del Estado de México y no tiene la suficiente información de las rutas por las que

circulan los microbuses, utilizando su dispositivo móvil pueda visualizar de forma gráfica el

recorrido que se realiza, desde el punto inicial y final que llevan a cabo. Con el objetivo de que el

usuario pueda llegar a su destino sin el problema de que se pierda en alguna zona desconocida.

El prototipo que a continuación se muestra, basó su desarrollo para sistemas operativos Android,

el motivo por el que se consideró utilizar este sistema operativo es debido a su extensa cobertura

dentro de la telefonía móvil. Para la realización se hará uso del entorno de desarrollo integrado

(IDE) Android Studio, software oficial para el desarrollo de aplicaciones Android, el cual utiliza

un lenguaje de programación orientado a objetos.

Page 5: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

2

Índice

Contenido

Resumen .............................................................................................................................. 1

Índice ................................................................................................................................... 2

Glosario Técnico ................................................................................................................. 7

Capítulo 1 ............................................................................................................................ 9

1. Introducción…………………...………………………………………………………..9

1.1 Introducción…………….......………………………………………………....………9

1.2 Objetivos………………...…………………………………………………………...10

1.2.1 General.………………………………………….......……………………………..10

1.2.2 Particulares…….………………...…………………………………………………10

1.3 Planteamiento del Problema………...……………………………………………….11

1.4 Justificación…………………………...……………………………………………..11

1.5 Alcances……………………………………………………………………………...12

1.6 Marco Metodológico…………………………………………………………………12

Capítulo 2 .......................................................................................................................... 13

2. Estado del Arte………………………………………………………………………...13

2.1 Antecedentes……………………………...………………………………………….13

2.1.1 Teléfono Celular o Móvil…………………………………………………………..13

2.1.2 Funcionamiento…………………………………………………………………….13

2.1.3 Era Digital………………………………………………………………………….14

2.1.3.1 Aparición en el Mercado………………………..………………………..14

2.1.3.2 Mejoras al Dispositivo…………………….……………………………..15

2.1.3.3 Variación de los Dispositivos en el Tiempo…………….……………….15

Page 6: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

3

2.2 Sistemas Operativos………………………………………………………………….16

2.3 Historia y Evolución de los Entornos de Programación Móvil…………...…………17

2.4 Aplicaciones Móviles para el Transporte Público…...………………………………17

2.5 El Valor de las Aplicaciones Android Dentro de Google en el Mercado……………21

Capítulo 3 .......................................................................................................................... 23

3. Análisis y Diseño……………...………………………………………………………23

3.1 Análisis…………….......…………………………………………………………….23

3.1.1 Conocimiento de las Herramientas y Recursos para el Desarrollo de Aplicaciones23

3.1.1.1 Comparativas de Entornos de Desarollo para Aplicaciones Móviles…...23

3.1.2 Android………………………………………………………...…………………..25

3.1.2.1 Versiones de Android en los Dispositios Móviles…….…………………25

3.1.3 Marco General e Introducción al Entorno de Desarrollo de Android Studio...……26

3.1.3.1 Arquitectura de Android……….....……………………………………...26

3.1.3.2 El Núcleo de Linux………….…………………………………………...26

3.1.3.3 Runtime de Android………………………………......………………….27

3.1.4 Lenguajes de Programación…………………………………....…………………..27

3.1.4.1 Surgimiento de Java………………………………….....………………..27

3.1.4.2 Nacimiento de XML………………………………….………………….27

3.1.5 Android SDK…………………………………………...………………………….28

3.1.6 APIs en Google………………………………….......……………………………..30

3.1.6.1 Funcionamiento de las APIs Implementadas en Android Studio.....…….30

3.1.6.2 Servicios………..………………………………………………………...31

3.1.6.3 Google Maps Android API………………………………….…………...31

3.1.6.4 Google Maps Geolocation API………………………….……………….32

3.1.7 Componentes de una Aplicación………………………………….......…………...32

Page 7: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

4

3.1.7.1 APK Archivo para el Móvil…………………………….………………..33

3.2 Análisis del Costo/Beneficio de la Creación de la Aplicación………………...…….34

3.3 Diseño……………….......…………………………………………………………...36

3.3.1 Ubicación del Mapa del Prototipo a Diseñar…………………………...………….36

3.3.2 Obtención de la Clave de API Google Maps………………………...…………….37

3.4 Uso del Móvil en los Pobladores…..………………………………………………...48

3.4.1 Conclusión de las Encuestas.……………………………………………………....49

Capítulo 4 .......................................................................................................................... 50

4 Construcción e Implementación………………………………………………………..50

4.1 Construcción de la Aplicación……………………….......…………………………..50

4.1.1 Iniciando un Proyecto en Android Studio………………………....……………….50

4.1.2 Obtención del Mapa y Ubicar Localización………...……………………………..53

4.2 Diseño de la Interfaz……….......…………………………………………………….55

4.3 Requisitos Previos a la Compilación de la Aplicación……………...……………….57

4.4 Requerimientos para su Funcionamiento…………….……………...……………….58

4.4.1 Usuarios……………………………...…………….……………...……………….58

4.4.2 Infraestructura………………………..…………….……………...……………….58

4.4.3 Instalación………………………………………….……………...……………….58

Conclusiones ..................................................................................................................... 59

5.1 Trabajos Futuros……………………….…………….……………...……………….60

Anexos……………………….…………….……………...……………………………..61

Anexo A……………………………………………………………………………….....61

Manifiesto de Google Maps para el uso de los mapas…………………………………...61

Anexo B…………………………………..……………………………………………...61

Módulos de las clases para el trazado de rutas y visualización del mapa de Google……61

Page 8: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

5

Anexo C………………………………………………………………………………….66

Diseño de la interfaz de usuario………………………………………………………….66

Referencias……………………………………………………………………………….68

Índice De Figuras

Capítulo 1

Figura 1.1: Tabla del número de habitantes por municipio en el Estado de México. ................... 10

Figura 1.2: Diagrama de Bloques de la Metodología de Desarrollo............................................. 12

Capítulo 2

Figura 2.1: Motorola Tought Talker(1985). ................................................................................. 14

Figura 2.2: Evolución del teléfono celular. .................................................................................. 15

Figura 2.3: Aplicaciones para Transporte Público. ...................................................................... 17

Figura 2.4: Forma de la App. ....................................................................................................... 19

Figura 2.5: Birmingham City Council Mapa. .............................................................................. 20

Figura 2.6: Estadística de Crecimiento del Mercado de las Aplicaciones. .................................. 21

Capítulo 3

Figura 3.1: Versiones de Android. ............................................................................................... 25

Figura 3.2: Captura de Pantalla del Emulador de Android Studio. ............................................ 30

Figura 3.3: Menú de Seguridad en el Dispositivo Móvil. ............................................................ 34

Figura 3.4: Mapa del Municipio de Nezahualcóyotl. .................................................................. 37

Figura 3.5: Captura de pantalla de la Consola de Google. ........................................................... 38

Figura 3.6: Opción de proyecto. .................................................................................................. 38

Figura 3.7: Captura de pantalla de la forma de dar de alta las credenciales. ............................... 39

Figura 3.8: Obtención de la clave de API. ................................................................................... 39

Page 9: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

6

Figura 3.9: APIs Habilitadas. ....................................................................................................... 40

Figura 3.10: Captura de Pantalla Código de ejemplo de mapa. ................................................... 40

Figura 3.11: Captura de Pantalla de Ejemplo del Mapa en el Emulador. .................................... 41

Capítulo 4

Figura 4.1: Menú de Inicio Android Studio. ................................................................................ 50

Figura 4.2: Creación de Proyecto en Android. ............................................................................ 51

Figura 4.3: Menú de Selección. ................................................................................................... 51

Figura 4.4: Porcentajes de Uso de las Versiones de Android. ..................................................... 52

Figura 4.5: Captura de Pantalla. Selección de Actividad a Realizar. .......................................... 53

Figura 4.6: Captura de Pantalla. Código donde se Muestra la Clave API. .................................. 54

Figura 4.7: Código para Declarar los Valores de Latitud y Longitud. ........................................ 54

Figura 4.8: Código de Diseño de la Interfaz de Usuario. ............................................................. 56

Figura 4.9: Declaración de Dependencias. .................................................................................. 57

Figura 4.10: Declaración de Permisos. ........................................................................................ 57

Índice De Tablas Y Gráficas Capítulo 3

Tabla 1: Tabla Comparativa de los Entornos de Desarrollo para Aplicaciones Móviles ............ 24

Tabla 2: Sueldo bruto promedio por entidad federativa. mensual, en pesos mexicanos ............. 35

Gráfica 1: Número de usuarios que usan el transporte público ................................................... 43

Gráfica 2: ¿Qué tipo de transporte se usa más?. .......................................................................... 44

Gráfica 3: Uso en la semana del transporte ................................................................................. 34

Gráfica 4: ¿Qué tanto conocen las rutas?. .................................................................................... 37

Gráfica 5: Opciones de consultas. ................................................................................................ 38

Gráfica 6: Tipos de conexión a Internet. ...................................................................................... 38

Page 10: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

7

Glosario Técnico

API: (Aplication Programming Interface), las iniciales en inglés de Interfaz de Programación de

Aplicaciones. Es una llave de acceso para hacer uso de funciones que un tercero provee.

APK: (Application Package File) paquete de las aplicaciones Android, utilizado para distribuir e

instalar componentes empaquetados para la plataforma Android en smartphones y tablets.

APP: Vocablo en inglés de Application, nombre comúnmente utilizado para referirse a las

aplicaciones. Software ejecutado en teléfonos móviles y tablets.

Base de Datos: Conjunto de datos organizados de modo tal que resulte fácil acceder a ellos,

gestionarlos y actualizarlos.

Benchmarking: Proceso sistemático para evaluar comparativamente productos, servicios y

procesos. Es el estudio comparativo y analítico de otras aplicaciones, con el fin de determinar la

calidad y características de cada una de ellas, tomándolas como parámetros de referencia.

Dispositivo Móvil: Aparato electrónico de tamaño pequeño, posee capacidad de procesamiento,

conexión a una red, memoria limitada. Una de sus características más destacables es que al ser de

pequeño tamaño puede transportarse fácilmente.

Emulador: Herramienta que permite probar la aplicación sin necesidad de contar con un

dispositivo móvil. De esta forma, se puede ejecutar el código en la computadora y ver los

resultados en la pantalla, con el fin de realizar comprobaciones preliminares sobre el

funcionamiento de la aplicación.

Geolocalización: Localización geográfica de un dispositivo, incluida en un móvil, Tablet o

computadora con conexión a Internet.

GPS: Sistema americano de navegación y localización mediante satélites.

IDE: Acrónimo en inglés de Integrated Development Enviroment, que en español se traduciría

como Entorno de Desarrollo de Aplicaciones. Programa informático compuesto por un conjunto

de herramientas de programación.

Información: Conjunto organizado de datos procesados, constituyen un mensaje sobre

determinado tema.

Page 11: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

8

Interfaz de Usuario: Capa que existe entre el usuario y el dispositivo, es lo que le permitirá al

usuario interactuar de forma gráfica, a través de la pantalla del dispositivo con la aplicación.

Internet: Sistema mundial de redes de computadoras interconectadas. Actualmente es un espacio

público utilizado por millones de personas en todo el mundo como herramienta de comunicación

e información.

JavaScript: Lenguaje de programación principalmente en proyectos web como páginas o

aplicaciones, actúa en conjunto con HTML y CSS.

Lenguaje de Programación: Sistema de escritura para la descripción precisa de algoritmos o

programas informáticos.

Librería: Conjunto de código externo que puede aprovecharse para conseguir determinadas

acciones.

SDK: (Software Development Kit) o “Kit de desarrollo de software”, provee a los

programadores herramientas necesarias para desarrollar el código de una aplicación.

Servicio: Objeto que se ejecuta en segundo plano, sin necesidad de interfaz gráfica.

Sistema Operativo: Software que contiene cada uno de los teléfonos y sobre el cual se ejecutan

las aplicaciones. Ejemplo de ello son: Android, iOs y Windows Phone.

Smartphone: Conocidos como teléfonos inteligentes en los cuales se pueden hacer funciones

similares de una computadora. Ejemplo de esto es la edición de documentos, navegar por

Internet, compartir información, etc. Están diseñados para ejecutar una variedad de aplicaciones.

Page 12: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

9

Capítulo 1

1. Introducción.

1.1. Introducción.

El presente proyecto consiste en la elaboración de una aplicación para dispositivos

móviles con sistema operativo Android, que apoye a los usuarios en recorrido de las rutas

del transporte urbano del Estado de México del municipio de Nezahualcóyotl.

En las grandes urbes del mundo, en las ciudades más pobladas de México, es necesario el

transporte público para trasladarse de un lugar a otro, pero usarlo es un peligro. La

población en el municipio de Nezahualcóyotl ha aumentado, en la actualidad son un 1

millón 039, 867 habitantes, según el último censo del INEGI. [Argüelles Efrén, Excelsior,

2017]

Para realizar la aplicación se pueden utilizar los distintos entornos de desarrollo

enfocados en la creación de aplicaciones. Una aplicación para el transporte público,

puede entenderse como una herramienta digital, que brinda información para que el

usuario pueda trasladarse de un lugar a otro indicándole la parada cercana o información

sobre las rutas por las que circula, resultándole de mucha utilidad.

Existen personas que no conocen las rutas de transporte urbano del municipio de

Nezahualcóyotl pero necesitan trasladarse de un lugar a otro de una manera económica,

por lo que hacen uso de este medio de transporte. Por este motivo una aplicación que

muestre las rutas que circulan por esta zona y cuales les convienen abordar sería

beneficiosa.

Una aplicación en sus dispositivos móviles les brindaría la opción de conocer las rutas

del transporte urbano en este sector del Estado de México y así llegar a su destino.

Page 13: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

10

Figura 1.1 Tabla del número de habitantes por municipio en el Estado de México.

Fuente: INEGI. Encuesta Intercensal 2015.

1.2. Objetivos

1.2.1 General

Diseñar y desarrollar una aplicación que proporcione información a los usuarios de

transporte público para llegar de un punto a otro, por medio de las rutas de transporte

público del Estado de México.

1.2.2 Particulares

• Establecer una zona del Estado de México con la que se realizarán las pruebas para el

trazado del recorrido de una ruta.

• Analizar la información de rutas de transporte público del sector de Nezahualcóyotl.

• Diseñar una aplicación que muestre el mapeo del recorrido que realizan las rutas del

transporte urbano de la zona de Nezahualcóyotl, ubicando las paradas que realizan y

los transbordes necesarios.

• Desarrollar una aplicación móvil para teléfonos móviles que usan Android con

geolocalización.

Page 14: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

11

1.3. Planteamiento del Problema

Desarrollar una aplicación móvil la cual muestre las rutas que maneja el transporte

público en la zona del Estado de México en el municipio de Nezahualcóyotl, dando la

ruta más cercana a la ubicación de usuario en tiempo real. No mostrará el tiempo de

espera para abordar, solo mostrara el punto donde puede abordarlo.

Dará la información básica de los distintos transportes que lo acerquen o lleven al destino,

el usuario podrá decidir cuál es el más conveniente de acuerdo a sus necesidades.

Actualmente no existe una vía de información clara de las rutas del Estado de México en

el municipio de Nezahualcóyotl, los usuarios primerizos incluso los que diariamente se

transportan por este medio, no cuentan con la información precisa de paradas e

intersecciones de microbuses, combis u otro medio que forma parte del transporte

público de esta urbe.

La inserción de nuevas rutas, modifica el sistema de movilidad, lo que provoca que se

tenga que reorganizar los recorridos y paradas, tiendo como necesidad una forma de

difusión informativa dirigida a los usuarios que hacen de este su medio de transporte, que

les permita comprenderlas, conocerlas y saberlas utilizar.

1.4. Justificación

Se pretende elaborar esta aplicación como recurso de ayuda para los usuarios del

transporte público del Estado de México en la zona de Nezahualcóyotl que colinda con la

CDMX, ya que actualmente no hay aplicación que muestre las rutas por donde circula

este tipo de transporte público. Se desea brindar una aplicación a los usuarios del

transporte urbano que diariamente circulan por esa zona, así como a los nuevos usuarios

que por primera vez hacen uso de este medio de transporte.

Actualmente existen varias aplicaciones de transporte público, pero no se cuenta con

alguna aplicación que se centre en el estudio del transporte urbano de la zona del Estado

de México.

Aplicaciones como Moovit, Waze y CityMapper, por mencionar algunas. No cuentan con

la red de transporte urbano del Estado de México dentro de la zona de Nezahualcóyotl,

siendo descartables al momento de que el usuario se encuentre en esta zona. Estas

aplicaciones se enfocan más en los transportes colectivos como: el metro, metrobus y

Page 15: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

12

mexibus, los cuales sus rutas de transporte se encuentran dentro de las inmediaciones de

la CDMX, siendo este su alcance y con bases ya establecidas en su recorrido.

1.5. Alcances.

Se pretende delimitar el alcance de la aplicación a la zona del Estado de México, que

colinda en los límites de la CDMX, para la realización de este proyecto solo se realizarán

las pruebas con el municipio de Nezahualcóyotl. Al obtener la base de datos de las rutas

que circulan en esa zona se obtuvieron las siguientes:

El desarrollo se elaborará en un entorno de Android Studio, la mayoría de los usuarios

utilizan dispositivos con sistema operativo Android, al este ser un sistema operativo que

destaca sobre otros en cuanto a mayor uso se procederá a desarrollar la aplicación.

Durante el proceso del análisis para elegir la interfaz de desarrollo, en el capítulo III se

mostrará una tabla comparativa con la características de algunas plataformas de

desarrollo de aplicaciones, también se desarrollará el motivo por el que el IDE en el que

se trabajará el presente prototipo será desarrollado en Android Studio.

1.6. Marco Metodológico.

Para el presente proyecto, que consta del diseño de una aplicación móvil se llevó a cabo

la siguiente metodología para su desarrollo:

Figura 1.2 Diagrama de Bloques de la Metodología de Desarrollo.

Análisis de Programas

• Evaluar los tipos de entornos de desarrollo.

Caracteristicas y Obtención de Información

• Investigar y conocer los lenguajes a usar.

Google Developers

• Plataforma de desarrollo.

Creación del Entorno

• Hacer modificaciones de acuerdo a las necesidades.

Page 16: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

13

Capítulo 2

2. Estado Del Arte. 2.1. Antecedentes.

2.1.1 Teléfono celular o móvil.

A través de los años los avances tecnológicos han ido mostrando nuevos dispositivos que

facilitan la vida cotidiana de los seres humanos, con la llegada de las redes de

comunicación telefónica se logró establecer comunicación de un lugar a otro a pesar de la

distancia. En los últimos años la sociedad ha sido testigo de los nuevos desarrollos y

mejoras que ha tenido la telefonía móvil, en este capítulo se hablará de la historia de los

teléfonos móviles y como han ido mejorando, las nuevas tecnologías que se les han ido

integrando y como ha ido evolucionando con el transcurso del tiempo.

Siendo un equipo para la segunda guerra mundial se trataban de dispositivos

inalámbricos con alcance de 600km de onda de radio creado por la compañía Motorola,

el modelo llamado Handie Talkie H12-16 era pesado y se transportaba en la espalda

dentro de una mochila adaptada.

En los años 80’s se comercializa para gente de negocio y como un accesorio de lujo, que

solo algunos podían costear.

2.1.2 Funcionamiento

Desde el telégrafo los teléfonos operan con la ayuda de una red y los teléfonos celulares

no son la excepción, utilizando una gran red que sigue evolucionando y adaptándose a un

mercado exigente, el sistema de esta red se lleva en tiempo real y se monitorea el flujo de

voz y el tráfico de información.

Esto se logra por el enrutamiento dentro de conmutadores multiplex digitales llevado a

cabo en diferentes partes del mundo dentro de las oficinas de las empresas de telefonías

móviles, siendo un ejemplo la llamada hecha desde nuestros hogares, esta viaja por cable

de cobre a una primera red de cables troncales, que pueden estar en los postes o en líneas

subterráneas, la línea troncal llega a una oficina central que conecta la línea del cliente

con otro tipo de cable llamado par trenzado terminando en una tarjeta de línea donde es

codificada de análoga a digital, la cual se manda por fibra óptica a su destino

dependiendo del cual sea, tomara diferentes caminos ya sea por repetidores, ondas de

Page 17: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

14

microondas, si la señal viajara a otro continente se puede usar cables submarinos o vía

satelital.

La dirección destino esta decodificada en el número telefónico, este tiene 3 códigos, este

código le dice a qué línea de larga distancia está ubicado el remitente (código de área),

otro contiene la información de la oficina que corresponde a su zona (prefijo) y por

ultimo un conmutador lee la dirección del cliente al que fue hecha la llamada (número del

cliente).

2.1.3 Era Digital

En 1999 comienza la era digital telefónica, los conmutadores son cambiados rápidamente

por los digitales, siendo utilizados tanto para líneas locales como para los móviles.

2.1.3.1 Aparición en el Mercado

Figura 2.1 Motorola Tought Talker(1985).

Fuente: History Channel. Historia del Teléfono. Recuperado de: https://www.youtube.com/watch?v=xemRmISrHKQ

En principio los teléfonos inalámbricos se encontraban empotrados en algunos modelos

de vehículos, su modelo era casi similar al usado en la guerra, se basaba en radios

móviles con procesadores.

El gran paso a la tecnología portátil la logro Intel, con su ayuda se logró hacer más

compacto el sistema interno, con su microcomputador 8008 la unidad lógica del modelo

Motorola DynaTAC 8000X sale al mercado en 1984.

Page 18: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

15

Pero aún no existe la red que satisfaga las necesidades de este teléfono, por lo que las

empresas telefónicas comienzan a apostar a la creación de dicha red.

Esta red llamada sistema celular, consta de antenas pequeñas en ciertos puntos de una

ciudad, cada antena da servicio a un área de ciertas dimensiones (13 Km a 30 Km de

radio) al moverse por las antenas la computadora interna hace el cambio de una a otra

automáticamente.

La señal era ineficiente y con zonas sin cobertura, incluso entre las mismas antenas,

algunos reglamentos y sanciones fueron puestos por el peligro que representan las

antenas ya sea ubicación material o caídas de las mismas.

Este problema se solucionó con la adaptación de seguimiento, este método triangula la

ubicación basada en una red que mide la intensidad de la señal del móvil entre 3-4 torres.

Algunos métodos más precisos incluyen la tecnología GPS (sistema de posicionamiento

global) esta consiste en usar los satélites que triangulan la posición del móvil sin importar

donde esté ubicado, gracias a las redes inalámbricas codificadas digitalmente.

2.1.3.2 Mejoras al Dispositivo

Figura 2.2 Evolución del teléfono celular.

Fuente: Curiosfera. Historia del Teléfono y su Evolución. Recuperado de: http://www.curiosfera.com/historia-del-

telefono/

2.1.3.3 Variación de los Dispositivos en el Tiempo

Los celulares comienzan a ser populares en los 90’s siendo un estuche de gadgets en sí,

aumentando las funciones internas como: reloj, agendas, calculadoras, etc.

Estas funciones fueron en incremento conectándonos de formas inimaginables, en este

tiempo los teléfonos celulares no solo sirven para llamadas y envió de texto ya sea por

Page 19: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

16

wi-fi, bluetooth, o usando la red. Más que unos simples teléfonos, son computadoras que

funcionan con sistemas operativos específicos y optimizados según las condiciones de

cada aplicación, como tarjeta de wi-fi, antena GPS y antena emisora-receptora, capacidad

de envió de archivos, cámaras de gran potencia y mínimo tamaño.

Las terminales de hoy día, están preparados para permanecer conectados, tanto a la red de

telefonía como a la red de tráfico de datos e Internet, de alta velocidad, de manera

simultánea y permanente, ya que las baterías en promedio aguantan el funcionamiento

del dispositivo de manera correcta durante todo el día.

2.2. Sistemas Operativos

Los sistemas operativos son el software que ejecuta la interfaz de la computadora

logrando la interacción de usuario máquina, soporta los programas creados por su

compañía.

De un tiempo a esta parte, el boom de la telefonía móvil ha explotado, impulsado por la

aparición de sistemas operativos cada vez más y más complejos hasta el punto de

asemejarse mucho a los NetBooks actuales.

Los sistemas operativos fueron creados en primer lugar para computadoras de escritorio

y portátiles, los que ocupa los celulares son más simples lo que los hace totalmente

diferentes unos de otros, son orientados a la conectividad inalámbrica y a necesidades

específicas.

Los sistemas operativos que actualmente se puede encontrar en los dispositivos móviles

son principalmente Android, iOs y Windows Phone. Siendo el primero de estos en el que

se realizarán las pruebas del prototipo a realizar. Una de las principales razones por las

que se optó por realizar en Android, es debido a que estadísticamente la mayor parte de

los usuarios que hacen uso del transporte urbano del Estado de México y que cuentan con

un Smartphone, contiene sistema operativo Android.

En el siguiente capítulo se dará a conocer las herramientas que fueron utilizadas para el

desarrollo del prototipo del proyecto, se describirá cada una de ellas, las ventajas y

beneficios que ofrecen para los programadores en el desarrollo de aplicaciones móviles.

Page 20: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

17

2.3. Historia y Evolución de los Entornos de Programación Móvil

Dentro de la industria de los dispositivos móviles y aplicaciones móviles se encuentran

en cambios constantes a lo largo de los últimos años. Plataformas de distribución,

operadas por las compañías propietarias de los sistemas operativos móviles como lo es el

caso de Android, iOs, Blackberry y en algún tiempo Windows Phone, se han ido

modernizando en el trascurso del tiempo, las tiendas de aplicaciones brindan grandes

ganancias a estas empresas lo que implica que constantemente exista una gran demanda

de desarrolladores con especialidad en tecnologías móviles.

Las principales medidas para el desarrollo de aplicaciones móviles han ido cambiando y

lo seguirán haciendo. Una de ellas es la popularidad de las diferentes plataformas entre

los desarrolladores. En los últimos años se ha producido una migración en las

preferencias de los desarrolladores hacia nuevos sectores como IOS y Android.

Las aplicaciones móviles, a las cuales también se le denomina apps, se encuentran muy

presentes en los teléfonos desde hace algún tiempo. Sistemas operativos como Nokia o

Blackberry ya contaban con aplicaciones años atrás.

2.4. Aplicaciones Móviles para el Transporte Público

Existen algunas aplicaciones que están en el mercado actual, cabe destacar que estas

aplicaciones solo cuentan con los transportes que se encuentran en la CDMX y algunos

del Estado de México, pero que ya cuentan con rutas establecidas tal es el caso del

metrobus, mexibus, metro, tren suburbano y RTP.

Entre las aplicaciones que se centran en el transporte público y más específicamente en

los usuarios del mismo, se mencionarán los que mayor alcance tienen en el público

mexicano.

Figura 2.3 Aplicaciones para Transporte Público.

Page 21: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

18

Una aplicación que es internacional es Moovit, esta aplicación engloba varios países, en

los que presenta sus servicios de transporte y también han puesto sus servicios en nuestro

país, siendo popular en 1,200 ciudades de 70 países.

Su forma de operar consta de dos pasos:

1. Se ha acercado a los gobiernos de las ciudades y ha pedido los GTFS (General

Transit Feed Specification), que son las descripciones de las rutas de transporte

público de una ciudad, las líneas y paradas existentes, así como la frecuencia con la

que se mueven las unidades. De esta manera se crea un mapa de transporte público

con datos oficiales.

2. Los comentarios y revisiones que los usuarios hacen de las rutas y paradas, mejoran

los algoritmos y experiencia del uso de la aplicación.

Pero estas rutas no cuentan las rutas del Estado de México, por ser de otras dependencias.

Por lo que aun siendo una aplicación que cuenta con respaldo de la empresa con el

mismo nombre y 6 años de trabajo para mejorarla y expandirla.

Además de no mostrar las rutas de bus que se encuentran cerca del usuario, si no que el

mismo usuario debe de conocerlas siendo que el nivel de experiencia que debe tener el

usuario para usar Moovit debe ser media.

Citymapper, fue creada en Londres, esta aplicación ha tomado terreno en varios países

entrando en competencia con las grandes empresas como Google. En un principio solo

era para el sistema operativo iOS, estaba enfocada únicamente en las rutas de autobuses

por Londres, pero tiene una limitación, ya que solo funciona en 30 ciudades. Su función

principal es que el usuario pueda planear sus rutas utilizando el transporte público, si

bien, también sirve para ir a pie, en bicicleta o, en algunas ciudades por otros medios de

transporte. En 2013, hace alianza con el monopolio de Google y se une a la plataforma

de Android, abarcando más ciudades pero sin enfocarse en pequeñas urbes sino en las

grandes ciudades de los países.

A lo largo de los años ha cambiado de forma y algoritmo, pero aún hay deficiencias para

adaptarse al transporte de la CDMX. Aplicaciones como Citymapper, para que lleguen a

ciudades, especialmente aquellas en las que el transporte es más caótico y existen menos

datos disponibles.

Page 22: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

19

Waze es una aplicación de mapas, tránsito y navegación, está aplicación cuenta con un

sistema en el que los mismos usuarios de la aplicación publican información del tráfico o

sucesos que acontezcan, lo que hará que se ahorre tiempo durante el transcurso del viaje.

En el mercado nacional, existen algunas aplicaciones especialmente diseñadas para los

transportes de la Ciudad de México, tal es el caso de MasMetro y Metrobus.

Metro – Metrobus México es una aplicación creada para viajar solo en la Ciudad de

México y área metropolitana. Está centrada en consultar los mapas, rutas, transbordes

entre estaciones e información general de los principales transportes de gobierno.

La aplicación cuenta con la capacidad de mostrar cada una de las redes de transporte por

mapa, estación o línea, permite trazar rutas con la estación más cercana al usuario, con el

GPS le permitirá ubicar el camino a tomar dentro de la red de transporte y acercar al

usuario a su destino.

Metro – Metrobus guía los recorridos de los principales transportes de la CDMX, que

son el metro y metrobus, tren suburbano, tren ligero, mexicable y mexibus, con el

propósito de facilitar la movilidad.

Estas aplicaciones fueron creadas para dar a conocer los recorridos de los transportes

públicos que dependen del gobierno, así como sus conexiones entre ellas mismas.

Siendo similares a las demás, contando con los mismos servicios que ofrecen las otras

apps y dirigidas a transportes enfocados en la CDMX.

Figura 2.4 Forma de la App.

Page 23: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

20

En México, no se cuenta con una guía como tal de los transportes urbanos que no sean

parte de las redes manejadas por el gobierno, mientras que en otros países se pueden

encontrar estos sitios web, que han evolucionado adaptándose a las necesidades de los

pobladores.

En algunos países primermundistas, se han dado a la tarea de mejorar su transporte

colectivo para reducir la dependencia de los habitantes al automóvil. Siendo una página

donde se da toda la información que necesita el usuario para recorrer esta ciudad y un

municipio metropolitano perteneciente al Reino Unido, ubicado en el condado de

Midlands Occidentales. Por su población, Birmingham está considerada a la segunda

ciudad del país, se han dado a la tarea de crear y remodelar las rutas públicas, junto con

la creación de una página que les dé información sobre ella, tanto horarios como rutas.

Figura 2.5 Birmingham City Council Mapa.

Fuente:

https://www.birmingham.gov.uk/info/20013/roads_travel_and_parking/498/birmingham_connected

La página se encuentra en servicio actualmente y el proyecto está contemplado a terminar

en 20 años. Siendo los transportes del gobierno y no de uso confederado como lo es en

nuestro país.

Este proyecto, no solo muestra las rutas y ayuda al planear las salidas usando el

transporte de bus de Inglaterra, si no que tomara la infraestructura vial del poblado y la

reorganizará para dar un mejor servicio al usuario. Para su mayor comodidad al momento

de utilizar los servicios de transporte tanto para los nativos como para los turistas

extranjeros.

Page 24: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

21

En los últimos años los usuarios europeos han optado por la bicicleta como medio de

transporte haciendo que este proyecto se adapte las necesidades y exigencias de los

pobladores creando rutas para ciclistas.

2.5. El Valor de las Aplicaciones Android Dentro de Google en el Mercado

Google Play, como el principal mercado de aplicaciones Android, funciona a base de

tendencias. Google Play, forma parte de los más importantes mercados de las

aplicaciones, aunque existen otro tipo de mercados.

En la actualidad el mercado es manejado por Google Play, siendo el portal que provee la

mayor parte de las apps para Android, las cuales pueden descargarse en la Google Play

Store, aun siendo es ella la tendencia de los usuarios de Google Play es que “todo debe

ser gratis”.

Sin publicidad, Google Play no podría ofrecer una amplia variedad de aplicaciones y

juegos con los que cuenta actualmente. Esto hace que casi todas las apps y juegos sean

de pago. Algunos desarrolladores optarían por elegir un modelo “fremium” que es dar

una parte gratis, enganchar al usuario y cobrar por el resto.

Mientras los usuarios no estén dispuestos a aceptar que el desarrollo de apps requiere de

muchos conocimientos técnicos, y además muy complejos, así como el tiempo requerido

para idear, diseñar, desarrollar y realizar pruebas a la app, tendrán que seguir existiendo

apps con publicidad. La publicidad, se ha convertido en un aliado para los

desarrolladores de aplicaciones, ya que el trabajo del programador viene pagado por este

medio.

En la siguiente gráfica se denota el incremento de este mercado:

Figura 2.6 Estadística de Crecimiento del Mercado de las Aplicaciones.

Page 25: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

22

En este capítulo se presentaron las aplicaciones que se pueden encontrar en el mercado y

que brindan los servicios de ubicaciones de rutas de los servicios del transporte público

dentro de la Ciudad de México. Así como el crecimiento que han tenido dentro del

mercado de las aplicaciones móviles.

En el siguiente capítulo se darán a conocer las diferentes plataformas de desarrollo que

existen para la creación de aplicaciones móviles, sus características y cuál es la más

óptima para el desarrollo del presente proyecto.

También se informará sobre el entorno de desarrollo seleccionado para la elaboración

del proyecto, las herramientas del mismo, así como su arquitectura. Los dispositivos

móviles disponen de diferentes versiones de los sistemas operativos, conforme se

realizan actualizaciones las versiones del sistema operativo van cambiando, brindándole

al usuario nuevas opciones y/o actualizaciones para poder hacer uso de nuevas

características en el dispositivo móvil y la corrección de errores de la versión anterior.

Otro de los temas que se tomará en cuenta en el capítulo siguiente serán las herramientas

del entorno de desarrollo utilizado, los paquetes necesarios para realizar su instalación y

una breve descripción, para conocer los beneficios que brindan en la elaboración de

aplicaciones móviles, las API’s que utilizaron durante el desarrollo del proyecto y la

visualización de mapas de Google incorporados dentro de la aplicación desarrollada.

Mostraremos los pasos que se siguieron para la elaboración de la aplicación, en cuanto a

la implementación de las APIs usadas y las capturas de pantalla de como el usuario

visualizará la aplicación en su dispositivo móvil.

Para la elaboración de una aplicación se necesita conocer las necesidades de los usuarios

de aplicaciones móviles, por lo que se requiere realizar encuestas para conocer si la

aplicación es viable, para el caso del presente trabajo se mostrará una serie de gráficas

que reflejan el uso del transporte público en el Estado de México en el municipio de

Nezahualcóyotl, al existir en esta zona varias rutas los usuarios habituales ya conocen las

rutas recorridas, pero para los usuarios nuevos genera cierta confusión, por lo que la

elaboración de este proyecto busca dar a conocer las rutas recorridas a los usuarios que

desconocen las rutas existentes en este municipio.

Page 26: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

23

Capítulo 3 3. Análisis y Diseño.

3.1. Análisis.

En el presente capítulo, se presentará la etapa de análisis, en donde se llevará a cabo

comparativas de las plataformas de desarrollo de aplicaciones móviles. Se visualizan

tablas comparativas de las herramientas que se utilizan actualmente en el mercado del

desarrollo de aplicaciones, describiendo de cada una sus características, para

posteriormente presentar el entorno adecuado para realizar la implementación. A

continuación se dará a conocer el entorno de desarrollo a utilizar, sus características y los

beneficios que brinda en cuanto a los otros entornos que fueron analizados en el proceso

de selección.

3.1.1 Conocimiento de las Herramientas y Recursos para el Desarrollo de Aplicaciones.

3.1.1.1 Comparativas de Entornos de Desarrollo para Aplicaciones Móviles.

Los entornos de desarrollo de aplicaciones móviles mejor conocidos como IDE

(acrónimo en inglés de Integrated Development Enviroment), son programas

informáticos compuestos por un conjunto de herramientas de programación. Estos IDE

han sido empaquetados como un programa de aplicación, es decir, contienen un editor de

código, compilador, depurador y constructor de interfaz gráfica (GUI)

Existen diversas plataformas de desarrollo de aplicaciones móviles, entre las más

utilizadas se muestran a continuación:

▪ Xamarin

▪ Adobe PhoneGap

▪ Plataformas web

En la siguiente tabla, se muestran las características que poseen cada una de las

plataformas que son analizadas en esta etapa. Una de las características que destacan a

Android Studio entre las demás es que al ser una plataforma gratuita y de código abierto,

cualquier persona puede iniciarse como desarrollador de aplicaciones.

Page 27: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

24

Otra de las ventajas es que Android Studio al pertenecer a Google brinda distintas

herramientas de forma gratuita que pueden ser incorporadas en el diseño de las

aplicaciones, lo cual facilita en el proceso de desarrollo de la aplicación.

Al ser una aplicación que necesitara incorporar la herramienta de Google Maps, Android

Studio ya tiene incorporada la plantilla de mapas, mientras que en el caso de las otras

plataformas se tiene que realizar la descarga de los paquetes necesarios para incorporar

su uso.

Tabla 1 Tabla Comparativa de los Entornos de Desarrollo para Aplicaciones Móviles.

O = cuenta con los requerimientos.

X = no cuenta con lo requerido.

- = Sus alcances son limitados para las necesidades del proyecto.

Con base a la tabla anterior, se puede concluir que actualmente existen múltiples

plataformas de desarrollo de aplicaciones para diferentes sistemas operativos, entre las

que destacan están Xamarin y Android Studio. Estas brindan al desarrollador

documentación en línea, un ejemplo de ello son los pasos que se deben llevar a cabo para

la instalación, por otra parte cuentan con plataformas especiales para desarrolladores en

donde se puede encontrar información en foros donde se discuten temas relacionados

con problemas que se presentan a lo largo del camino en el desarrollo de las aplicaciones.

También cuentan con varios ejemplos de códigos que brindarán un apoyo en el inicio de

la programación.

Entornos

de

desarrollo

Uso de

lenguajes

Plantillas Permisos Compatibles

Google

Maps

Cuotas por

Suscripción

Api google

Plataformas

web

X O X - O -

Xamarin O O X O - -

Adobe

PhoneGap

X O X X O O

Android

Studio

O O O O X O

Page 28: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

25

3.1.2 Android

Es un sistema operativo basado en el núcleo de Linux. Fue diseñado en un principio para

dispositivos móviles, Android controla dispositivos por medio de bibliotecas

desarrolladas o adaptadas por Google mediante el lenguaje de programación Java.

Android al ser una plataforma de código abierto permite a los desarrolladores crear y

desarrollar aplicaciones escritas en lenguaje C u otros lenguajes y compilarlas a código

nativo de ARM(API de Android). [1]

3.1.2.1 Versiones de Android en los Dispositivos Móviles

Los dispositivos móviles emplean diferentes versiones de Android debido a las

actualizaciones y correcciones que se realizan en el transcurso del tiempo. A

continuación se muestran las antiguas y actuales versiones que se pueden encontrar en

los diferentes dispositivos móviles.

Figura 3.1 Versiones de Android

El propósito de conocer las versiones de Android es que se debe elegir a partir de que

versión se realizará la programación de la aplicación, con la finalidad de conocer la

compatibilidad y las funcionalidades que se han agregado o modificado.

A partir de la versión 4.1 “Jelly Bean” se realizará la experimentación del proyecto de

rutas de transporte urbano del Estado de México, para realizar dicha programación se

Page 29: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

26

hará uso del software Android Studio, el cual nos brinda las herramientas necesarias para

realizar el prototipo.

3.1.3 Marco General e Introducción al Entorno de Desarrollo de Android Studio

A través de los años la telefonía celular ha ido cambiando la vida cotidiana de la sociedad,

en sus inicios solo era un medio de comunicación por el cual su principal objetivo era

comunicar a la sociedad con el exterior por lo que con lo que principalmente se contaba

era llamadas telefónicas y envió de texto por medio de mensajería, las principales

características que poseían los equipos móviles eran limitados, con el pasos del tiempo y

el desarrollo de nuevas tecnologías actualmente los dispositivos móviles cuentan con

mayores capacidades que se muestran semejanza con un ordenador personal, a lo que se

le denomina Smartphone.

El objetivo ya no es simplemente realizar llamadas o en envío de mensajes vía SMS, si

no que incluyen aplicaciones que brindan el usuario la oportunidad de realizar múltiples

tareas en un dispositivo de dimensiones no mayores a 1920x1080 pulgadas y que le

brindan la oportunidad de realizar actividades como las que haría en un ordenador, uno

de los beneficios ya incluidos en estos equipos es que poseen un sistema de ubicación

GPS, el cual posee la capacidad de geo localizar la ubicación en que el usuario se

encuentre.

3.1.3.1 Arquitectura de Android Studio.

Aplicaciones: Cualquier tipo de aplicación escrita en Java.

Framework de las aplicaciones: Acceso al API para rehusar componentes o modificarlos.

Bibliotecas en C/C++: El desarrollador puede usarlas a través del Framework

Runtime de Android: Bibliotecas del lenguaje Java y única instancia en la máquina

virtual Dalvik.

Núcleo Linux: Capa de abstracción del hardware y servicios de seguridad, gestión de

memoria, de procesos, pila de red, modelo de los controladores, etc.

3.1.3.2 El Núcleo de Linux.

Utiliza el núcleo de Linux 2.6, como interfaz entre software y el hardware del sistema,

proporcionando una plataforma de hardware estable sobre la cual se ejecuten las

Page 30: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

27

aplicaciones. Esta capa proporciona servicios como la seguridad, el manejo de la

memoria, el multiproceso, la pila de protocolos y el soporte de drivers para dispositivos.

Es la única que es dependiente del hardware.

3.1.3.3 Runtime de Android.

Basado en el concepto de máquina virtual de Java. Debido a las limitaciones de los

dispositivos donde se había de ejecutar Android, como por ejemplo la memoria o que

posee un procesador limitado, no fue posible utilizar una máquina virtual Java estándar.

Google opto por crear una nueva máquina virtual a la que llamó “máquina virtual

Dalvik”, que generó mejores respuestas a estas limitaciones.

3.1.4 Lenguajes de Programación.

Google ha empleado Java como lenguaje de programación para crear aplicaciones

Android. El lenguaje Java es un lenguaje orientado a objetos. Además se usa el

metalenguaje XML para el diseño de interfaces.

3.1.4.1 Surgimiento de Java.

A principios de los años noventa, poner inteligencia en los aparatos domésticos se

consideraba como el siguiente paso de la tecnología. Algunos ejemplos de enseres

domésticos inteligentes incluyen las cafeteras controladas por computadoras, o

televisores controlados por un dispositivo programable interactivo. Anticipándose a un

fuerte mercado para tales dispositivos, en 1991, Sun Microsystems fundó un equipo de

investigación para trabajar en un “Proyecto verde” secreto, cuya misión era desarrollar

software para enseres domésticos inteligentes. [Dean Raymon, Intro. A la programación

con Java].

Al principio Sun nombró el nuevo lenguaje Oak (Roble, nombre que se le dio debido a

que había un árbol que se veía desde la ventana del líder de proyecto, James Gosling),

pero ese nombre ya le pertenecía a otro lenguaje de programación. Fue entonces, que

mientras un grupo de empleados de Sun tomaban un descanso en una cafetería local, se

les ocurrió el nombre de “Java”.

3.1.4.2 Nacimiento de XML.

A mediados de los años 90, el consorcio W3C(World Wide Consortium) quiso conseguir

que la web tuviera un lenguaje más potente y que pudiera darle una estructura semántica.

Page 31: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

28

Por este motivo, se propusieron crear un nuevo lenguaje de marcas basado en

SGML(Standard Generalized Markup Language).

Finalmente, en 1998 nació el nuevo lenguaje XML(eXtented Markup Language), más

sencillo que SGML y más poderoso que HTML (Hyper Text Markup Language).

[Tortajada Juan, Lenguaje de marcas].

La difusión que ha tenido XML, ha sido en buena parte por el impulso que le ha dado

Internet y la necesidad de crear, transmitir y procesar información adecuadamente en

distintos campos.

Las ventajas que proporciona son:

• Mayor precisión en la utilización de buscadores.

• Reciclaje del formato según las necesidades.

• Desarrollo de aplicaciones informáticas.

• Uso simultaneo de los documentos.

• Presentación de la información en múltiples dispositivos, como libros electrónicos o

teléfonos móviles.

• Navegación rápida y eficaz.

Al procesar respuestas XML, es necesario utilizar un lenguaje de consulta adecuado para

seleccionar nodos dentro del documento, sin asumir que los elementos residen en

posiciones absolutas dentro del marcado XML.

3.1.5 Android SDK.

Google ofrece de manera gratuita el SDK (Software Development Kit) oficial de Android

Studio. El SDK se refiere a aquellas librerías, serie de drivers, herramientas y recursos

diversos que se deberán instalar para iniciar a programar en Android.

En Android Studio SDK se incluyen las herramientas necesarias para comenzar a

programar un proyecto de aplicación móvil, cuenta también con APIs facilitadas por

Google tanto para el control de ciertas funciones del dispositivo como para la integración

de servicios, cuenta con un depurador, un emulador para visualizar las aplicaciones y

toda la documentación para dar los primeros pasos programando en Android.

Para el caso de Android Studio, cuenta con una interfaz gráfica amigable para el

desarrollador se debe descargar y posteriormente instalar las librerías requeridas del SDK.

Es posible seleccionar las que se necesitan, pero principalmente se tienen que aceptar la

Page 32: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

29

licencia y condiciones que se especifican antes de proceder a la instalación, para

posteriormente realizarla.

Android Studio ya incluye algunas SDK preinstaladas, sin embargo no serán suficientes

si se requiere tener un entorno de desarrollo completo.

Las librerías del Android SDK se dividen de la siguiente manera:

• SDK Platforms(Plataformas del SDK)

• SDK Tools (Herramientas del SDK)

• SDK Updates(Actualizaciones del SDK)

• SDK Platforms

Permitirán tener vistas previas en las distintas versiones de Android. Incluye varias

herramientas que requiere la plataforma de Android, incluida la herramienta adb.

Android Debug Bridge (ADB) es una herramienta que permite comunicarse con el

emulador o un dispositivo. Proporciona realizar diferentes acciones en dispositivos, como

la instalación y depuración de apps.

Se requiere al menos una plataforma para poder compilar una aplicación.

SDK Tools incluye varias herramientas esenciales, como Android Emulator y ProGuard.

La herramienta Android Emulator, es donde se podrá ir visualizando de manera virtual la

aplicación desde la computadora en donde se haya realizado la instalación de Android

Studio, pues nos muestra tal y como se observaría en el dispositivo móvil. Esta

herramienta, dentro de varias funciones que posee, permite al desarrollador ver los

errores que se generan al momento de ejecutar el código y afecten la funcionalidad de la

aplicación, así como modificar la estructura de los menús dentro de la misma, para lograr

una interfaz viable de acuerdo con las necesidades que requiere el público para el que va

dirigido.

Page 33: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

30

Figura 3.2 Captura de Pantalla del Emulador de Android Studio.

3.1.6 APIs en Google

Las APIs, son un conjunto de funciones y procedimientos que permiten cumplir una o

varias funciones, su fin es ser utilizadas por otro software. API proviene de las siglas en

inglés (Application Programming Interface), que es español se traduciría como Interfaz

de Programación de Aplicaciones.

3.1.6.1 Funcionamiento de las APIs Implementadas en Android Studio.

Estas interfaces permiten implementar las funciones y procedimientos que engloban las

necesidades en el proyecto, sin la necesidad de programarlas desde cero. Permiten usar

códigos que otros desarrolladores han probado exitosamente, poniendo como prioridad el

asegurar un producto de calidad.

API REST, es una biblioteca apoyada totalmente en el estándar HTTP, la cual es un

servicio que provee funciones que dan la capacidad de hacer uso de un servicio web

privado, dentro de una aplicación propia.

Page 34: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

31

Al hacer uso de las APIs no se pueden añadir nuevas funcionalidades. De esta manera

compañías como Twitter se aseguran de lo que pueden o no hacer los clientes.

3.1.6.2 Servicios.

Google Maps API proporciona ciertos servicios web, un ejemplo de ello es una interfaz

para solicitar datos de Maps API a servidores externos y usarlos dentro de las

aplicaciones de Maps. Estos servicios están diseñados para usarse junto con un mapa, de

acuerdo con las restricciones de la licencia para las condiciones de servicio de las Google

Maps API.

Los servicios web usan solicitudes tipo HTTP para direcciones en formato URL

específicas y les pasan a los servicios y parámetros, dentro de direcciones URL como

argumentos. Generalmente los servicios devuelven datos en la solicitud HTTP como

JSON o XML para que la aplicación los analice o los procese.

La información completa acerca de cada uno de los servicios se encuentra en las guías

del desarrollador específicas para esos servicios. Por otra parte en estas guías se abordan

algunas prácticas comunes, que resultan útiles para configurar las solicitudes de servicios

web y procesar respuestas.

3.1.6.3 Google Maps Android API.

Utilizando Google Maps Android API, se pueden agregar mapas basados en los datos

proporcionados por Google Maps a la aplicación. La API administra en forma automática

el acceso a servidores, descarga de datos, visualización de mapas y respuesta a gestos de

mapas de Google Maps. Usando el llamado de API es posible agregar marcadores,

polígonos y superposiciones a un mapa básico, es posible cambiar la vista del usuario

para que solo se pueda mostrar un área en particular dentro del mapa. Estos objetos

proporcionan información adicional de ubicaciones en el mapa y permitirá la interacción

del usuario con este.

A continuación se enlistan los gráficos permitidos por la API en un mapa:

• Iconos anclados situados en posiciones específicas dentro del mapa (marcadores).

• Conjuntos de segmentos de líneas (polilíneas).

• Segmentos cerrados (polígonos).

• Gráficos de mapa de bits anclados en posiciones específicas del mapa (marcadores).

• Conjuntos de imágenes que se muestran sobre los mosaicos de mapas básicos

(superposiciones de mosaicos).

Page 35: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

32

Requisitos de atribuciones.

Al hacer uso de Google Maps Android API en una aplicación, se requiere incluir en el

texto de atribución de Google Play Services como parte de una sección “Avisos legales”

dentro de la aplicación.

3.1.6.4 Google Maps Geolocation API

Google Maps Geolocation API devuelve una ubicación y radios de precisión en función

de información acerca de torres celulares y nodos de WiFi que el cliente móvil pueda

detectar.

La comunicación se realiza a través de HTTPS usando POST. Tanto la solicitud como la

respuesta poseen formato JSON, y el tipo de contenido de ambas es application/json.

Las solicitudes de geolocalización se envían usando POST a una URL como la siguiente:

https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_API_KEY

Para la cual se deberá especificar una clave en la solicitud e incluirla como el valor de un

parámetro key. Una key es la clave de API de la aplicación. Esta clave permitirá

identificar la aplicación la administración de la cuota.

Respuesta a solicitudes de geolocalización

Una solicitud de geolocalización devolverá una respuesta en formato JSON que definirá

una ubicación y un radio.

• Location: La latitud y longitud calculadas del usuario, en grados. Contiene subcampo

lat y lng.

• Accuracy: Precisión de la ubicación calculada, en metros. Esto representa el radio de

un círculo alrededor de la location especificada.

3.1.7 Componentes de una Aplicación

En el diseño de una aplicación móvil existen una serie de componentes que forman parte

de la estructuración de una app, algunos de estos los mencionamos a continuación:

• Activities: Componentes de la interfaz de usuario, al crear un Activity se representa

una pantalla que será lo que el usuario observará.

• Services: Son ejecutados en segundo plano y no contienen una interfaz para que el

usuario lo pueda ver.

Page 36: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

33

• Content Provider: Proveedor de contenido, se encarga de proporcionar datos a la

aplicación.

• Views: Componentes de la interfaz de usuario, ejemplo de ello son los botones,

cuadros de texto, etiquetas, barra de herramientas, etc.

• Intents: Objetos que sirven para mandar mensajes. Forma de comunicación entre los

componentes de la aplicación y otras aplicaciones.

• Manifest: El archivo AndroidManifest.xml que se encuentra dentro del proyecto de

la aplicación, en el cual se agregan permisos, actividades, claves, etc.

3.1.7.1 APK Archivo para el Móvil

APK, es el formato de archivo utilizado para distribuir e instalar software de aplicaciones

en el SO (sistema operativos). Los celulares inteligentes usan SO (como las

computadoras) que permiten a los usuarios ejecutar aplicaciones o programas desde el

celular.

Esta clase de ficheros contienen softwares para los teléfonos celulares con sistema

operativo Android, permitiendo reconocer y ejecutar el programa. Un archivo APK, se

pueden descargar directamente desde sitios web en el teléfono o primero en la

computadora, para luego instalarlos mediante el uso de un cable USB o tarjeta SD.

Google Play Store simplifica este proceso, poniendo a disposición todas las aplicaciones

que se pueden descargar para el dispositivo del usuario con una interfaz amigable.

Los archivos APK se guardan en un ZIP y se pueden abrir con cualquier herramienta de

descompresión, son esencialmente un formato de paquetes basados en el formato de

archivo JAR, con .apk como extensión y el nombre de archivo. Estos contienen todos los

códigos, recursos, activos, certificados, y el archivo de manifiesto de ese programa.

Para poder ejecutar un archivo .apk, se debes autorizar la instalación de aplicaciones en el

equipo móvil. Para ello, se necesita ir a la opción de Configuración del equipo y al

submenú de Seguridad o Aplicaciones para activar la característica de Fuentes

Desconocidas.

Page 37: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

34

Figura 3.3 Menú de Seguridad en el Dispositivo Móvil.

3.2 Análisis del Costo/Beneficio de la Creación de la Aplicación

El mercado de las aplicaciones móviles sigue en crecimiento, el usuario al tener varias

opciones se fija en la calidad del servicio, esta competencia dentro del mercado que, si

bien no es nuevo, aún falta por explotar.

La presente información da sustento al valor del trabajo realizado para esta aplicación y

su costo monetario en el sector público, también de ser costeada para el sector privado.

Teniendo como horas hombre de trabajo entre 5 a 7 horas por 2 personas, de lunes a

viernes dando un promedio de 20 días por mes, durante 12 meses, obteniendo 1,680

horas laboradas para la creación de este proyecto.

Sumado a ello en México, un programador cobra en la actualidad: $57.00 por hora.

Incluso con la devaluación que ha sufrido el peso contra el dólar, las personas de la

industria han mantenido su poder adquisitivo, lo que convierte a los desarrolladores de

aplicaciones móviles en un buen negocio para comercializar.

Page 38: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

35

Estado Salario Promedio

Mensual (MXN)

Morelos 37,827

Ciudad de México 36,605

Jalisco 34,955

Colima 34,388

Aguascalientes 33,656

Coahuila 32,607

Sonora 32,466

Promedio Nacional 32,087

Nuevo León 30,949

Guanajuato 30,419

Estado de México 27,747

Yucatán 26,843

Quintana Roo 25,396

Michoacán 25,230

Chihuahua 24,994

Querétaro 24,797

Puebla 24,311

Baja California 22,082

Sinaloa 19,085

Veracruz 18,058 Tabla 2 Sueldo bruto promedio por entidad federativa. mensual, en pesos mexicanos.

Fuente:https://everac99.wordpress.com/2017/06/02/sueldos-it-en-mexico-2017-menos-equidad-de-

genero-mas-cloud-computing/

En la tabla anterior muestra el salario promedio mensual que recibe un programador de

aplicaciones, pero dependiendo de la distribución geográfica los valores monetarios

cambian.

Teniendo en cuenta que el desarrollo del proyecto ha sido elaborado por 2 personas, que

en promedio se trabajan 7 horas por día, por un total de 20 días por mes, dados los

siguientes datos sumaria la cantidad de $7,980.00 pesos mensuales por persona.

Esto engloba la técnica de desarrollo de apps, los conocimientos técnicos y complejos, el

tiempo destinado a planificar, diseñar, desarrollar e implementar la aplicación.

En concreto por el trabajo realizado resulta un promedio de: $191,520.00 pesos para su

venta al sector privado. Si se desea incorporar la app a una plataforma su costo se

modifica dependiendo de la plataforma y el uso.

Para la aplicación se sugiere que sea gratis su descarga con la renta de publicidad, ya que

en el mercado las app “gratis” son las que están en los estándares más altos, haciendo

invisible las de costo.

Page 39: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

36

Las app deben ser catalogadas antes de su lanzamiento, siendo este tipo de catálogo para

que la publicidad mostrada sea apta para el usuario que pueda utilizar los transportes

públicos.

Si se desea ser autónomo o crear sociedad con la plataforma para declarar ingresos, hay

obligaciones específicas que se deben tomar en cuenta para cada caso. Si se desea ser

socio se debe tomar en cuenta que Google al ser una empresa gigante, si ocurre alguna

controversia será complicado el tener una respuesta por parte de ellos.

3.3 Diseño.

En la etapa de desarrollo se muestra el proceso del diseño de la aplicación. En la primera

parte se localizará la zona a trabajar en el prototipo utilizando la herramienta de Google

Maps, para poder visualizar la zona a trabajar a través de un mapa y poder tener la

localización de las rutas que circulan por la zona de Nezahualcóyotl y delimitar las rutas

con las que se trabajarán.

Se mostrarán los pasos a seguir para la obtención de la API Key, esta API es necesaria

para poder insertar un mapa de Google. Esta clave es un tipo de autenticación para hacer

uso de aplicaciones con Google Maps, es importante tener esta clave ya que será

solicitada por Android Studio para hacer uso de las API’s requeridas para poder utilizar

la plantilla de los mapas de Google integrada en la plataforma de desarrollo y la

habilitación de herramientas requeridas. Aunque existen dos versiones de esta clave, para

el desarrollo de este prototipo se hará uso de la API estándar, la cual no tiene costo.

3.3.1 Ubicación del Mapa del Prototipo a Diseñar

Como zona a trabajar se ha elegido a Nezahualcóyotl.

Page 40: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

37

Figura 3.4 Mapa del Municipio de Nezahualcóyotl.

Fuente: Google Maps.

Por medio de la base de datos proporcionada por la página web https://viadf.mx/

visualizamos las rutas existentes en este sector del Estado de México.

3.3.2 Obtención de la Clave de API Google Maps

Para poder visualizar Google Maps en Android Studio es necesario dar de alta el

proyecto de la aplicación a realizar, para este procedimiento se deberá realizar lo

siguiente:

Pasos para dar de alta la clave de API

1. Entrar a la consola de desarrolladores de Google. Se debe tener en cuenta que para la

realización de este paso, se debe contar con una cuenta de correo en Gmail.

Page 41: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

38

Figura 3.5 Captura de pantalla de la Consola de Google.

Fuente: Android Developers Recuperado de:

https://console.developers.google.com/apis/dashboard?project=apprededomex&duration=PT1H

2. Crear un nuevo proyecto, crear credenciales. Es esta sección es donde se asignará la

clave de API.

Figura 3.6 Opción de proyecto.

Page 42: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

39

Figura 3.7 Captura de pantalla de la forma de dar de alta las credenciales.

Fuente: Android Developers Recuperado de:

https://console.developers.google.com/apis/dashboard?project=apprededomex&duration=PT1H

Figura 3.8 Obtención de la clave de API.

Fuente: Android Developers Recuperado de:

https://console.developers.google.com/apis/dashboard?project=apprededomex&duration=PT1H

Page 43: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

40

3. Una vez que es asignada la clave de API se deben habilitar las bibliotecas que se

muestran en la figura:

Figura 3.9 APIs Habilitadas.

Fuente: Android Developers Recuperado de:

https://console.developers.google.com/apis/dashboard?project=apprededomex&duration=PT1H

4. Código de prueba para visualizar el mapa proporcionado por Google Maps.

Figura 3.10 Captura de Pantalla Código de ejemplo de mapa.

Page 44: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

41

Figura 3.11 Captura de Pantalla de Ejemplo del Mapa en el Emulador.

Page 45: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

42

El código de la ilustración 10.3 se genera al seleccionar la plantilla de mapas en Android

Studio, por defecto viene con la ubicación de Sídney, realizando una modificación al

código y colocando las coordenadas requeridas, en este caso para México se han

obtenido los resultados de la Figura 11.3.

Android Studio al ser una interfaz de desarrollo gratuito proporciona a los

desarrolladores una plataforma con guías que proporcionan la información requerida en

el proceso de desarrollo de la aplicación.

Las APIs necesarias para la visualización de los mapas dentro de la aplicación son:

• Google Maps Android API

• Google Maps Geocoding API

• Google Maps Geolocation

En la ilustración 9.3 se puede visualizar que dentro del proyecto creado están APIs están

habilitadas para que se puedan observar dentro de la aplicación a programar.

Cada API cumple con una función en específico la cual fue mencionada dentro del

Funcionamiento de APIs de Google. Android Studio al momento de realizar un proyecto

en el cual se haga uso de la plantilla de mapas nos pedirá la llave, de lo contrario al

compilar el programa este no se verá. Por lo que la obtención de la llave de API es muy

importante si se requiere hacer uso de los servicios de Google Maps.

Se tomaron datos recopilados de los usuarios del transporte público en el estado de

Nezahualcóyotl. En estos datos tomados de una encuesta realizada por la UNAM en

cooperación con INEGI en el año 2015, el cual tenía por objetivo conocer el uso diario

de los pobladores en los transportes públicos en el Estado de México. Esto para el

mejoramiento de vías de transporte a una ciudad en constante cambio y expansión.

Lo cual brinda una estimación de personas que diariamente transitan por este municipio

y que podrían hacer uso de aplicaciones móviles que les muestren como llegar de un

lugar a otro dentro del municipio de Nezahualcóyotl o que vías alternas tomar según sea

su necesidad, así como la incorporación de los nuevos usuarios que hagan uso del

transporte público que circula frecuentemente por esta zona, brindando la información

necesaria para evitar tomar la ruta equivocada.

A continuación se mostrarán algunas gráficas que mostrarán los resultados obtenidos en

las encuestas.

Page 46: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

43

Gráfica 1 Número de usuarios que usan el transporte público.

En este primer esquema se tiene como resultado una mayor movilidad de personas en

edad de laborar por lo que el tener varias rutas alternativas por cualquier percance es una

forma de prevenir retardos en sus trabajos.

De estos en la encuesta se hicieron varias preguntas sobre cómo llegan a su destino y el

uso que dan a las diferentes opciones de trasladarse a sus destinos, ya sean diarios o

eventuales dentro del estado de México, en especial en el municipio de Netzahualcóyotl,

obteniendo los siguientes resultados.

78.773

21.227

0

10

20

30

40

50

60

70

80

90

trabajo estudios

Usuarios en el estado de mexico

usuarios en el estado de mexico

Page 47: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

44

Gráfica 2 ¿Qué tipo de transporte se usa más?

Se puede ver reflejado en este esquema que la aplicación está orientada para el 77% de

los encuestados, la cual le sería útil por utilizar las rutas que recorren su municipio

mayormente que el mexibus, como medio de transporte.

Aun contando con la línea de mexibus los usuarios optan por otros medios de transporte,

siendo el publico el de mayor demanda, esto refleja que los encuestados, a pesar de

pertenecer a diferentes clases sociales, utilizan medios de transporte públicos, o al menos

es su primera opción.

61

17

6

17

00

10

20

30

40

50

60

70

microbus mexibus taxi metro otro

Tipo de transporte

tipo de transporte

Page 48: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

45

Gráfica 3 Uso en la semana del transporte

En esta gráfica se ve que los usuarios, usan frecuentemente el transporte público, y esto

reflejaría un porcentaje aproximado de cuantas veces a la semana podrían acceder a la

aplicación los usuarios, permitiéndole reducir el tiempo que les toma decidir que ruta

tomar hacia su destino, de tener algún problema con la habitual o encontrar otras rutas

que no conocen.

Analizando la respuesta de los encuestados, se puede definir que la Aplicación es

necesaria para personas que necesitan trasladarse continuamente, y esto corresponde a

una problemática diaria de las personas.

21

57

21

0

10

20

30

40

50

60

1 - 5 veces 10 - 20 veces mas de 20 vees

Uso semanal del transporte publico

uso semanal del transporte

publico

Page 49: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

46

Gráfica 4 ¿Qué tanto conocen las rutas?

Las personas que usan el transporte público, no saben realmente por donde pasan las rutas, al

menos están acostumbrados a tomar la ruta en una parada determinada, pero en sí, no conocen

el recorrido total. Por lo que solo un 27% está consciente de los lugares por donde pasan el

transporte público que usan frecuentemente, pero esto no determina si conocen las calles o si

conocen el recorrido de la ruta desde su salida, por lo que se nota una falta de información

entre todos los encuestados, y que la aplicación podría brindar.

27

73

0

10

20

30

40

50

60

70

80

Si No

Conocimiento del recorrido de las rutas

conosimiento del recorrido de

las rutas

Page 50: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

47

Gráfica 5 Opciones de consultas

Por último se preguntó a los usuarios como saber que ruta tomar cuando se dirigen a un

lugar que no conocen, al no saber dónde realmente pasan las rutas, buscan maneras de

conseguir esa información, llegando hasta el punto de hablar con extraños poniendo en

riesgo su integridad. También se puede observar que la solución más “rápida” es tomar

un taxi, sin embargo no todos están en la posición económica para recurrir a esta opción

siempre que desean trasladarse, ya que no saben que ruta pasa por su destino. La falta de

información hace que las personas pierdan su tiempo, teniendo que estar parando en cada

parada que ven para preguntar si pasan por su destino, esto es incómodo no solo para el

usuario, sino también para el chofer.

50

14

31

13

0

10

20

30

40

50

60

preguntar al

chofer

preguntar en

la calle

utilizar taxi consultar

apps

otros medios

Llegar a nuevos lugares

llegar a nuevos lugares

Page 51: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

48

3.4 Uso del móvil en los pobladores.

México, es un país en el que más del 80% de los mexicanos cuentan con un dispositivo

móvil, cuatro de cada diez poseen un smartphone por lo que el marketing móvil es un

sector en clara expansión que se ve confirmado por el número creciente de clientes de

México.

El fuerte incremento del número de smartphones, está provocando que las redes sociales

y correo electrónico se estén trasladando del PC al entorno móvil, y que las aplicaciones

móviles también se estén convirtiendo en un estándar dentro del marketing móvil de las

marcas.

Basada en datos del estudio realizado por IFT (Instituto Federal de Telecomunicaciones),

se considera la siguiente información para conocer los hábitos de los usuarios en torno al

uso de móviles en su vida diaria y como esta información es útil al proyecto.

Estos datos también pueden ser usados como retroalimentación para posibles mejoras

futuras del proyecto. Siendo una muestra de 649 personas encuestadas del estado de

México.

Page 52: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

49

Gráfica 6 Tipos de conexión a Internet

En este esquema, nos muestra que la mayoría de los encuestados saben usar las aplicaciones de

sus móviles y depende de las redes de Internet, por lo que el funcionamiento de la aplicación

se mantendría constante dentro de los usuarios al necesitar de ella.

3.4.1 Conclusión De Las Encuestas

Teniendo estos datos podemos decir que la aplicación desarrollada si es subida a Google Play

Store tendría una clientela, ya que es útil y necesario para personas que usan el transporte

público en el Estado de México.

Después del análisis realizado, la selección de la tecnología Android Studio como sistema de

desarrollo y la aplicación de la metodología, se obtuvo como resultado el Análisis y Diseño de

una Aplicación Móvil para Localización de Rutas de Transporte Urbano en el estado de

México dentro del municipio de Netzahualcóyotl, de esta forma se detallan los requerimientos

mínimos para el funcionamiento y las respectivas funcionalidades de la Aplicación.

39

31

17

13

0

5

10

15

20

25

30

35

40

45

datos y wi-fi wi-fi por proveedor No conoce

Conexión a internet por el móvil

conexión a internet por el movil

Page 53: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

50

Capítulo 4 4 Construcción e Implementación

4.1 Construcción de la Aplicación

En la etapa anterior se realizó en análisis de los entornos de desarrollo de aplicaciones

móviles, siendo seleccionado Android Studio como IDE para fines de este proyecto, al

presentar las características necesarias para uso.

La construcción de la aplicación estará basada en las plantillas que vienen incluidas en la

plataforma de Android Studio, para poder visualizar el mapa en la aplicación ya se cuenta

con la clave de API requerida para hacer uso de Google Maps, así mismo se procederá a

crear las rutas de Nezahualcóyotl y el menú de usuario, en el cual este podrá introducir su

ubicación actual y el destino al que quiere llegar.

4.1.1 Iniciando un Proyecto en Android Studio

Para iniciar un proyecto en Android Studio, se deben seguir los siguientes pasos:

Figura 4.1 Menú de Inicio Android Studio.

La ilustración 12.4 muestra el menú de inicio una vez que se inicia el programa. Para

crear un nuevo proyecto se da click en la opción “Star a new Android Studio Project”,

generando la siguiente ventana:

Page 54: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

51

Figura 4.2 Creación de Proyecto en Android.

Figura 4.3 Menú de Selección.

Una vez asignado el nombre del proyecto y continuar al siguiente paso, aparecerá la

siguiente ventana ilustración 14.4. Es aquí donde se tiene que seleccionar con que

dispositivos será compatible la aplicación. Android Studio solicita un SDK mínimo de

soporte, lo cual significa que se debe seleccionar una versión de Android. Una de las

opciones que Android Studio brinda a los desarrolladores, es que muestra una gráfica del

uso de las versiones, incluyendo las antiguas y nuevas. Para esto se selecciona la opción

“Help me choose.”

Page 55: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

52

Figura 4.4 Porcentajes de Uso de las Versiones de Android.

Fuente: Android Studio.

Basándonos en la estadística que proporciona Android Studio se puede observar que la

versión de Android que aún se encuentran activos en la plataforma de Google Play Store

es Jelly Bean de nivel de API 16. Por lo que el soporte mínimo será para dispositivos

móviles con sistema operativo Android, que cuenten con la versión Jelly Bean.

Page 56: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

53

Figura 4.5 Captura de Pantalla. Selección de Actividad a Realizar.

En la ilustración 16.4 seleccionamos que actividad requerimos realizar. Para el caso de

este proyecto seleccionamos la opción de “Google Maps Activity”, la cual desplegará el

código mostrado anteriormente (tema 3.3.2) en la (ilustración 10.3). Donde también se

había dicho que se debe contar con la clave de API para poder usar los servicios de

Google Maps.

Una observación importante es que Google Maps Android API necesita de un nivel de

API de nivel 12 como mínimo para poder admitir los objetos de mapa.

4.1.2 Obtención del Mapa y Ubicar Localización.

Como se había mencionado anteriormente, para poder hacer uso de los mapas en

Android, se debe tener la clave de API, a continuación se muestra la parte del código en

la que se deberá colocar esta clave.

Page 57: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

54

Figura 4.6 Captura de Pantalla. Código donde se Muestra la Clave API.

Esta clave de API es la que permitirá el uso de Google Maps Android API. Existen

algunas restricciones para las claves de API, dependiendo de la categoría que tenga la

aplicación y del uso que se le dará, la plataforma de Android Studio brinda planes

adecuados para los desarrolladores.

Para el caso de este proyecto se usó el Plan estándar, el cual es gratuito. A continuación

se mencionan las características que posee este plan:

✓ Implementaciones gratuitas, externas y disponibles de forma pública

✓ Uso limitado y gratuito de Google Android API y Google Maps SDK

✓ Tarifas individuales de API y límites de uso

En el caso de que el Plan estándar no cubriera las necesidades requeridas para la

aplicación y se tuviera que extender los beneficios del uso de estos servicios, se tendría

que contactar con el equipo de ventas de Google Maps API, para obtener la información

y solicitar precios y planes adecuados para el uso de estos recursos.

Figura 4.7 Código para Declarar los Valores de Latitud y Longitud.

Page 58: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

55

En la ilustración 18.4 las líneas de código mostradas permiten crear la posición inicial,

las variables Lat y Lng corresponden a la latitud y longitud de la ubicación. El objeto

Map, por medio de Google Maps Android API que permite mostrar un mapa de Google

dentro de la aplicación Android. La forma es que se visualizará es de forma idéntica a los

mapas de la aplicación de Google Maps for Mobile(GMM). Existen dos diferencias entre

la aplicación GMM y los mapas que se muestran en Google Maps Android API:

• Los mosaicos que muestra la API no tienen contenido personalizado

• Los iconos del mapa no todos son seleccionables. Para este caso en los marcadores

son receptores de varias interacciones

Otra de las propiedades de los mapas es que se encuentran disponibles cuatro clases de

mapas en la Google Maps Android API. Estos pueden ser de tipo:

• Normal

• Hibrido

• Satélite

• Tierra

• Ninguno

Para el caso de los marcadores su función es indicar ubicaciones en el mapa. Los

marcadores se pueden personalizar.

4.2 Diseño de la Interfaz

La parte visual de la aplicación es declarada en un archivo de formato .XML, está

compuesta por los siguientes elementos: un Fragment, Map, que es donde se mostrarán

las ubicaciones en el mapa, un editor de texto, que permitirá al usuario ingresar su

ubicación y destino y un botón para seleccionar la opción de realizar la búsqueda de la

ruta. La distribución de estos elementos estará realizada sobre un LinearLayout, el cual

permite que las vistas secundarias se puedan alinear de forma vertical u horizontal, esto

dependerá del diseño que se desee lograr.

Page 59: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

56

Figura 4.8 Código de Diseño de la Interfaz de Usuario.

Page 60: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

57

En la ilustración se muestran los elementos que contiene la aplicación, este diseño será

el que el usuario vea en la pantalla del teléfono celular al momento de que la aplicación

se ejecute. Este código irá en el archivo activity_maps.xml

4.3 Requisitos Previos a la Compilación de la Aplicación

Primordialmente se debe asegurar el nivel de API y el SDK de destino. Para el caso de

este ejemplo deberán ser de 23 o superior. Asegurar estar utilizando la biblioteca se

soporte de V4 para la verificación y solicitud de permisos. Estos deberá ir dentro del

código en el grandle, a continuación se muestra la forma en que es declarado:

Figura 4.9 Declaración de Dependencias.

También se deberá declarar permisos dentro del archivo AndroidManifest.xml, en este

archivo se deberán declarar todos los permisos que se necesiten. A continuación se

muestra un ejemplo de un permiso requerido en el uso de mapas:

Figura 4.10 Declaración de Permisos.

Recordemos que para utilizar el servicio de mapas, previamente debemos ya tener la

clave de API con las bibliotecas requeridas habilitadas, dentro del código se deberá

colocar la clave de API para poder mostrar el mapa en el emulador o en él .apk una vez

que se proceda a realizar la prueba en un dispositivo móvil.

Page 61: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

58

4.4 Requerimientos para su funcionamiento

4.4.1 Usuarios

El desarrollo de esta aplicación móvil REDEDOMEX va dirigido a personas de entre

14(estudiantes) a 60(trabajadores y visitantes) años de edad, que poseen dispositivos

móviles que cuenten con sensor GPS preinstalado y acceso a internet. La aplicación

tiene un diseño de interfaz amigable e interactiva para que su uso sea fácil y rápido.

4.4.2 Infraestructura

La aplicación móvil ha sido desarrollada en Android Studio 2.3.3 que es un entorno de

desarrollo integrado para la plataforma Android, y uso de las APIS pertenecientes a

Google en específico Google Maps.

Para alojar la aplicación móvil REDEDOMEX se requiere de un dispositivo móvil con

sistema operativo Android en su versión mínima hasta ahora, Jelly Bean.

4.4.3 Instalación

La aplicación REDEDOMEX que permite buscar autobuses de transporte urbano del

Estado de México en el municipio de Nezahualcoyotl, se podrá utilizar en dispositivos

móviles que cuenten con sistema operativo Android.

Page 62: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

59

Conclusiones El uso de aplicaciones en los diferentes dispositivos móviles, es muy utilizado en la

actualidad, ya que facilitan ciertas tareas de la vida cotidiana de las personas, en el caso

de las aplicaciones de transporte público sirven como un recurso de información para

conocer los diferentes medios por los que se puede ir de un lugar a otro, haciendo uso

del mismo.

En cuanto a la elaboración de la aplicación (APP REDEDOMEX). A lo largo de la

elaboración del proyecto se identificaron algunos problemas como: Las dependencias,

las cuales cumplen con la función de ayudar a realizar de forma eficaz el añadir nuevas

funcionalidades a la aplicación. Con la ayuda de la etapa de análisis y la consola de

desarrolladores se pudieron solucionar estos errores de forma satisfactoria.

En cuanto a la compatibilidad de versiones, Android Studio cuenta con una biblioteca de

compatibilidad, está al incorporar la biblioteca appcompat permitirá que la versión

Android en la que esté trabajando, tenga acceso a las funciones disponibles en las nuevas

versiones. Lo que hará que la aplicación tenga una amplia variedad de versiones de

plataforma.

Objetivos Planteados Se

Cumplió

Establecer una zona del Estado de México para realizar las pruebas del

trazado de ruta.

Si

Analizar la información de rutas de transporte en el municipio de

Nezahualcóyotl

Si

Realizar el diseño de la aplicación que muestre el mapeo del recorrido de

las rutas de Nezahualcóyotl

Si

Diseñar una aplicación para teléfonos móviles con sistema operativo

Android

Si

Page 63: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

60

5.1 Trabajos Futuros

Al ser una aplicación móvil de transporte público para el Estado de México, a futuro se

podría agregar rutas de más municipios, así como la actualización de las rutas que se

vayan integrando a este sector.

Soporte para el sistema operativo iOS y las nuevas versiones de Android.

Integrar un monitoreo de ruta, para que el usuario pueda visualizar en tiempo real la ruta

por la que está trasladándose.

Brindar servicios para turistas que necesiten usar el transporte público del Estado de

México, contando con retroalimentación de los usuarios, para brindar mejor información

sobre ciertas zonas de inseguridad.

Page 64: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

61

ANEXOS

ANEXO A

Manifiesto de Google Maps para el uso de los mapas.

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.rutaedomexapp.computacion.aplicacionmapa">

<!--

The ACCESS_COARSE/FINE_LOCATION permissions are not required

to use

Google Maps Android API v2, but you must specify either coarse

or fine

location permissions for the 'MyLocation' functionality.

-->

<uses-permission

android:name="android.permission.ACCESS_FINE_LOCATION" />

<application

android:allowBackup="true"

android:icon="@mipmap/ic_launcher"

android:label="@string/app_name"

android:roundIcon="@mipmap/ic_launcher_round"

android:supportsRtl="true"

android:theme="@style/AppTheme">

<meta-data

android:name="com.google.android.geo.API_KEY"

android:value="@string/google_maps_key" />

<activity

android:name=".MapsActivity"

android:label="@string/title_activity_maps">

<intent-filter>

<action android:name="android.intent.action.MAIN" />

<category

android:name="android.intent.category.LAUNCHER" />

</intent-filter>

</activity>

</application>

</manifest>

ANEXO B

Módulos de las clases para el trazado de rutas y visualización del mapa de Google

Package Modules;

Page 65: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

62

import android.os.AsyncTask;

import com.google.android.gms.maps.model.LatLng;

import org.json.JSONArray;

import org.json.JSONException;

import org.json.JSONObject;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.UnsupportedEncodingException;

import java.net.MalformedURLException;

import java.net.URL;

import java.net.URLEncoder;

import java.util.ArrayList;

import java.util.List;

public class DirectionFinder {

private static final String DIRECTION_URL_API =

"https://maps.googleapis.com/maps/api/directions/json?";

private static final String GOOGLE_API_KEY = "AIzaSyAil6yckpQdWb-

KYsRvSy14eDyW3nCZBrk";

private DirectionFinderListener listener;

private String origin;

private String destination;

public DirectionFinder(DirectionFinderListener listener, String

origin, String destination) {

this.listener = listener;

this.origin = origin;

this.destination = destination;

}

public void execute() throws UnsupportedEncodingException {

listener.onDirectionFinderStart();

new DownloadRawData().execute(createUrl());

}

private String createUrl() throws UnsupportedEncodingException {

String urlOrigin = URLEncoder.encode(origin, "utf-8");

String urlDestination = URLEncoder.encode(destination, "utf-8");

return DIRECTION_URL_API + "origin=" + urlOrigin +

"&destination=" + urlDestination + "&key=" + GOOGLE_API_KEY;

}

private class DownloadRawData extends AsyncTask<String, Void,

String> {

@Override

Page 66: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

63

protected String doInBackground(String... params) {

String link = params[0];

try {

URL url = new URL(link);

InputStream is = url.openConnection().getInputStream();

StringBuffer buffer = new StringBuffer();

BufferedReader reader = new BufferedReader(new

InputStreamReader(is));

String line;

while ((line = reader.readLine()) != null) {

buffer.append(line + "\n");

}

return buffer.toString();

} catch (MalformedURLException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

return null;

}

@Override

protected void onPostExecute(String res) {

try {

parseJSon(res);

} catch (JSONException e) {

e.printStackTrace();

}

}

}

private void parseJSon(String data) throws JSONException {

if (data == null)

return;

List<Route> routes = new ArrayList<Route>();

JSONObject jsonData = new JSONObject(data);

JSONArray jsonRoutes = jsonData.getJSONArray("routes");

for (int i = 0; i < jsonRoutes.length(); i++) {

JSONObject jsonRoute = jsonRoutes.getJSONObject(i);

Route route = new Route();

JSONObject overview_polylineJson =

jsonRoute.getJSONObject("overview_polyline");

JSONArray jsonLegs = jsonRoute.getJSONArray("legs");

JSONObject jsonLeg = jsonLegs.getJSONObject(0);

JSONObject jsonDistance = jsonLeg.getJSONObject("distance");

JSONObject jsonDuration = jsonLeg.getJSONObject("duration");

JSONObject jsonEndLocation =

Page 67: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

64

jsonLeg.getJSONObject("end_location");

JSONObject jsonStartLocation =

jsonLeg.getJSONObject("start_location");

route.distance = new

Distance(jsonDistance.getString("text"), jsonDistance.getInt("value"));

route.duration = new

Duration(jsonDuration.getString("text"), jsonDuration.getInt("value"));

route.endAddress = jsonLeg.getString("end_address");

route.startAddress = jsonLeg.getString("start_address");

route.startLocation = new

LatLng(jsonStartLocation.getDouble("lat"),

jsonStartLocation.getDouble("lng"));

route.endLocation = new

LatLng(jsonEndLocation.getDouble("lat"),

jsonEndLocation.getDouble("lng"));

route.points =

decodePolyLine(overview_polylineJson.getString("points"));

routes.add(route);

}

listener.onDirectionFinderSuccess(routes);

}

private List<LatLng> decodePolyLine(final String poly) {

int len = poly.length();

int index = 0;

List<LatLng> decoded = new ArrayList<LatLng>();

int lat = 0;

int lng = 0;

while (index < len) {

int b;

int shift = 0;

int result = 0;

do {

b = poly.charAt(index++) - 63;

result |= (b & 0x1f) << shift;

shift += 5;

} while (b >= 0x20);

int dlat = ((result & 1) != 0 ? ~(result >> 1) : (result >>

1));

lat += dlat;

shift = 0;

result = 0;

do {

b = poly.charAt(index++) - 63;

result |= (b & 0x1f) << shift;

shift += 5;

} while (b >= 0x20);

Page 68: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

65

int dlng = ((result & 1) != 0 ? ~(result >> 1) : (result >>

1));

lng += dlng;

decoded.add(new LatLng(

lat / 100000d, lng / 100000d

));

}

return decoded;

}

}

package Modules;

import com.google.android.gms.maps.model.LatLng;

import java.util.ArrayList;

import java.util.List;

import Modules.Route;

public interface DirectionFinderListener {

void onDirectionFinderStart();

void onDirectionFinderSuccess(List<Route> route);

}

package Modules;

public class Distance {

public String text;

public int value;

public Distance(String text, int value) {

this.text = text;

this.value = value;

}

}

package Modules;

public class Duration {

public String text;

public int value;

public Duration(String text, int value) {

this.text = text;

this.value = value;

}

}

Page 69: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

66

package Modules;

import com.google.android.gms.maps.model.LatLng;

import java.util.List;

public class Route {

public Distance distance;

public Duration duration;

public String endAddress;

public LatLng endLocation;

public String startAddress;

public LatLng startLocation;

public List<LatLng> points;

}

ANEXO C

Diseño de la interfaz de usuario

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:map="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

tools:context="com.rutaedomexapp.computacion.aplicacionmapa.MapsActivit

y"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" >

<EditText

android:id="@+id/etOrigin"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:hint="Ubicacion inicial" />

<EditText

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:hint="Destino"

android:id="@+id/etDestination" />

<LinearLayout

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal"

>

<Button

Page 70: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

67

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Buscar"

android:id="@+id/btnFindPath" />

<ImageView

android:layout_marginLeft="20dp"

android:layout_marginTop="5dp"

android:layout_width="40dp"

android:layout_height="40dp"

android:src="@drawable/ic_distance"/>

<TextView

android:layout_marginLeft="5dp"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="0 km"

android:id="@+id/tvDistance" />

<ImageView

android:layout_marginLeft="20dp"

android:layout_marginTop="5dp"

android:layout_width="40dp"

android:layout_height="40dp"

android:padding="5dp"

android:src="@drawable/ic_schedule_black_24dp"/>

<TextView

android:layout_marginLeft="5dp"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="0 min"

android:id="@+id/tvDuration" />

</LinearLayout>

<fragment

android:id="@+id/map"

android:name="com.google.android.gms.maps.SupportMapFragment"

android:layout_width="match_parent"

android:layout_height="match_parent" />

</LinearLayout>

Page 71: “APLICACIÓN PARA UBICAR LAS RUTAS DEL TRANSPORTE …

IPN-ESIMEZ

APP

REDEDOMEX

68

Referencias

Argüelles, Efrén (2017). Excelsior. Recuperado de:

http://www.excelsior.com.mx/comunidad/2017/05/17/1164086

Desarrollo de aplicaciones para Android. Edición 2015, Ribas Lequerica, Joan

[1] http://www.mundomanuales.com/telefonia/telefonos-moviles/que-es-android-caracteristicas-

y-aplicaciones-4110.html

[2]Gabino González Santos. (2017). El Economista. Ciudad de México. Recuperado de:

https://www.eleconomista.com.mx/opinion/Apps-y-derecho-20170601-0123.html

[3]https://everac99.wordpress.com/2017/06/02/sueldos-it-en-mexico-2017-menos-equidad-de-

genero-mas-cloud-computing/

[4]https://www.google.es/admob/

[5]https://developers.google.com/maps/web-services/overview?hl=es-419

[6]https://hipertextual.com

[7]https://www.ibm.com/support/knowledgecenter/es/SS7K4U_8.5.5/com.ibm.websphere.zserie

s.doc/ae/csec_sslsecurecom.html

[8]https://blog.neothek.com/blog-neothek/que-es-un-certificado-ssl-y-como-funciona/

[9]https://docs.microsoft.com/es-es/dotnet/csharp/expression-trees-explained

[10]http://omicrono.elespanol.com/2015/02/diferencia-entre-http-y-https-2/