capitulo iii - upsin

48
20 Capitulo III 3.1 Diseño Smar Travel desarrollará su aplicación con la cual desean obtener más clientes y ser una empresa muy reconocida y tener mucha publicidad mediante su aplicación. Con la aplicación la empresa tendrá la información de sus clientes más segura y tendrán a los clientes mejor informados sobre las promociones con las que cuente, de esta manera ya no será necesario buscar los clientes y miembros de uno por uno, ya que la aplicación tendrá secciones diferentes para cada tipo de usuario y les hará llegar la notificación de paquetes y promociones nuevas. Aparte de viajes y tours, la aplicación contará con apartado de seguros de vida y de automóviles. 3.2 Desarrollo A continuación se explicará brevemente algunos temas sobre Android, los cuales ayudaron a realizar esta investigación para tener un conocimiento de cómo trabaja este sistema operativo. Android A continuación se da una explicación sobre Android, que es, como funciona, sus características, etc. Android es un sistema operativo inicialmente pensado para teléfonos móviles por lo general con pantalla táctil, al igual que iOS, Symbian y BlackBerry OS. Lo que lo hace diferente es que está basado en Linux, un núcleo de sistema operativo libre, gratuito y multiplataforma.[1] El objetivo inicial de Android, de este modo, fue promover los estándares abiertos en teléfonos y computadoras (ordenadores) móviles.[2] Android ha sido diseñado para permitir a los usuarios crear distintas aplicaciones

Upload: others

Post on 24-May-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Capitulo III - UPSIN

20

Capitulo III

3.1 Diseño

Smar Travel desarrollará su aplicación con la cual desean obtener más clientes y ser

una empresa muy reconocida y tener mucha publicidad mediante su aplicación.

Con la aplicación la empresa tendrá la información de sus clientes más segura y

tendrán a los clientes mejor informados sobre las promociones con las que cuente,

de esta manera ya no será necesario buscar los clientes y miembros de uno por uno,

ya que la aplicación tendrá secciones diferentes para cada tipo de usuario y les hará

llegar la notificación de paquetes y promociones nuevas.

Aparte de viajes y tours, la aplicación contará con apartado de seguros de vida y de

automóviles.

3.2 Desarrollo

A continuación se explicará brevemente algunos temas sobre Android, los cuales

ayudaron a realizar esta investigación para tener un conocimiento de cómo trabaja

este sistema operativo.

Android

A continuación se da una explicación sobre Android, que es, como funciona, sus

características, etc.

Android es un sistema operativo inicialmente pensado para teléfonos móviles por lo

general con pantalla táctil, al igual que iOS, Symbian y BlackBerry OS. Lo que lo hace

diferente es que está basado en Linux, un núcleo de sistema operativo libre, gratuito

y multiplataforma.[1]

El objetivo inicial de Android, de este modo, fue promover los estándares abiertos en

teléfonos y computadoras (ordenadores) móviles.[2]

Android ha sido diseñado para permitir a los usuarios crear distintas aplicaciones

Page 2: Capitulo III - UPSIN

21

aprovechando las distintas características y utilidades de sus teléfonos. Por ejemplo,

al crear una utilidad con Android, un usuario podrá usar la función de llamada de su

teléfono, o la función de mensajería de texto, la de la cámara de fotos, etc.

La idea es que se puedan crear todo tipo de aplicaciones usando todas las funciones

del teléfono que se quiera y combinándolas como se quiera. Además, Android optimiza

los recursos internos del teléfono (memoria, hardware, etc.) con el objetivo de que la

aplicación funcione de la mejor manera posible.[3]

Las plataformas de desarrollo soportadas incluyen GNU/Linux, Mac OS X 10.5.8 o

posterior y Windows XP o posterior. También puede utilizarse el propio sistema

Android para desarrollos utilizando las aplicaciones AIDE - Android IDE - Java, C++

(app) [AIDE - Android IDE - Java, C++] y el editor de Java. La plataforma integral de

desarrollo soportada oficialmente es Android Studio junto con el complemento ADT

(AndroidDevelopment Tools plugin). Además, los programadores pueden usar un

editor de texto para escribir ficheros Java y XML y utilizar comandos en un terminal

(se necesitan los paquetes JDK, Java Development Kit y Apache Ant) para crear y

depurar aplicaciones, así como controlar dispositivos Android que estén conectados

es decir, reiniciarlos, instalar aplicaciones en remoto, etc..

Las Actualizaciones del SDK están coordinadas con el desarrollo general de Android.

El SDK soporta también versiones antiguas de Android, por si los programadores

necesitan instalar aplicaciones en dispositivos ya obsoletos o más antiguos. Las

herramientas de desarrollo son componentes descargables, de modo que una vez

instalada la última versión, pueden instalarse versiones anteriores y hacer pruebas de

compatibilidad.

Una aplicación Android está compuesta por un conjunto de ficheros empaquetados en

formato .apk y guardada en el directorio /data/app del sistema operativo Android (este

directorio necesita permisos de super usuario, root, por razones de seguridad). Un

paquete APK incluye ficheros .dex (ejecutables Dalvik, un código intermedio

compilado), recursos, etc.[4]

Page 3: Capitulo III - UPSIN

22

A continuación se muestra una tabla de las versiones más conocidas de Android con

algunas características:

Nombre Versión

Descripción Imagen Características

Donut 1.6 En donut se dieron los primeros pasos para poder usar Android en diferentes formas mientras Android Marquet maduraba.

Mejora en la búsqueda por entrada de texto y voz para incluir historial de favoritos, contactos y la web.

Habilidad de los desarrolladores de incluir su contenido en los resultados de búsqueda.

Mejoras de velocidad en búsqueda y aplicaciones de cámara.

Eclair 2.1 Con Eclair, las pantallas de alta densidad mostraron impresionantes fondos de pantallas animados que respondían al tocarlos.

Modificaciones menores de la API y correcciones de errores.

Froyo 2.2 Dio a conocer teléfonos ultrarrápidos que podían controlar por voz. Además, se podía tener conexión a internet, en cualquier zona, por las zonas Wii-fi.

Optimizaciones en velocidad, memoria y rendimiento.

Funcionalidad de anclaje de red por USB y Wii-Fi hotspot.

Agregada opción para deshabilitar acceso de datos sobre red móvil.

Page 4: Capitulo III - UPSIN

23

Gingerbread 2.3 Ofrecía una experiencia Android más sencilla y rápida tanto para los usuarios como para los desarrolladores. La duración de la batería era mayor y la compatibilidad con NFC dio lugar a una nueva categoría de aplicaciones.

Actualizado el diseño de la interfaz de usuario con incrementos en velocidad y simpleza.

Entrada de texto del teclado virtual más rápida e intuitiva, con mejoras en precisión, texto sugerido y entrada por voz.

Mejoras en la funcionalidad de copiar/pegar, permitiendo a los usuarios seleccionar una palabra al presionar-mantener, copiar y pegar.

Honeycomb 3.0 Marco el inicio de la era de las tabletas con una interfaz sencilla que incluía imágenes y navegación en pantalla fluida.

Soporte optimizado para tabletas, con una nueva y "virtual" interfaz de usuario holográfica.

Añadida barra de acción (Action Bar en inglés).

Multitarea simplificada – tocando Aplicaciones recientes en la barra del sistema permite a los usuarios ver instantáneas de las tareas en curso y saltar rápidamente de una aplicación a otra.

Ice CreamSandwich

4.0 Subió la apuesta en materia de personalización y control de usuario. Permite personalizar la pantalla de inicio, definir cantidad de datos a utilizar y compartir contenido al instante en cualquier momento.

Botones software (en pantalla) Android 3.x están ahora disponibles para usar en los teléfonos móviles.

Separación de widgets en una nueva pestaña, listados de forma similar a las aplicaciones.

Facilidad para crear carpetas, con estilo de arrastrar y soltar.

Lanzador personalizable.

Page 5: Capitulo III - UPSIN

24

JellyBean 4.1 Permitía interactuar aún más con las notificaciones y utilizar varias cuentas de usuario en un mismo dispositivo.

Interfaz de usuario más fluida.

Mejoras en accesibilidad.

Soporte de texto bi-direccional y otros lenguajes.

Mapas de teclado usuario-instalable.

Notificaciones expandibles.

KitKat 4.4 Permite realizar acciones por voz y disfrutar de un nuevo diseño que destaca el contenido.

Arreglos en la conexión de datos.

Arreglos de enfoque de cámara en los modos HDR y normal.

Múltiples correcciones en el soporte Bluetooth.

Lollipop 5.0 Incorpora Material Design, que ofrece un diseño atractivo y una respuesta táctil fluida.

Un diseño intrépido, colorido, y sensible interfaz de usuario.

Nuevas formas de controlar cuándo y cómo se reciben mensajes.

Marshmallow 6.0 Google Now a un toque te ofrece accesos directos sencillos y respuestas inteligentes, la batería dura mucho más tiempo y los nuevos permisos de las aplicaciones permiten tener un mayor control de la información.[5]

Administrador de permisos.

Google NowonTap: es la expansión de Google Now a todo nuestro dispositivo.

Soporte para huellas dactilares.

Android Pay.[6]

Tabla 1: Versiones de Android.

A continuación se mencionarán los dispositivos que usan el sistema Android.

Un celular

Page 6: Capitulo III - UPSIN

25

El teléfono móvil o celular es un dispositivo inalámbrico electrónico que tiene acceso

a la red de telefonía celular o móvil. Su nombre se define por el uso de la red de

estaciones base o antenas repetidoras, en la cual cada estación base está compuesta

por celdas o células que proveen cobertura en un ángulo y rango determinado.

La principal característica de los celulares es la portabilidad y la facilidad de realizar

una comunicación desde cualquier lugar en donde se tenga cobertura de la red celular,

la comunicación entre los celulares y las redes celulares se realiza a través del

espectro electromagnético utilizando las frecuencias o bandas del mismo.

Cuando se realiza una llamada desde un celular, este se comunica con la celda de la

estación base que le está dando cobertura al celular en ese momento, la celda se

comunica con otras celdas y estaciones repetidoras hasta llegar a la celda que está

dando cobertura al otro celular y esta a su vez envía la comunicación al celular de

destino y se realiza la comunicación.

La función de los celulares es la comunicación de voz, pero los avances tecnológicos

en las diferentes áreas de las comunicaciones para la transmisión de datos, las

conexiones a internet y la evolución de los equipos móviles, han generado nuevas

características y servicios para los usuarios.

Smartphone o Teléfono Inteligente

Un Smartphone o teléfono inteligente es un dispositivo electrónico que tiene el

funcionamiento de un celular o teléfono móvil con características de un computador

personal.

Los teléfonos inteligentes tienen diferentes características especiales en tanto al

hardware y al software, debido a que sus componentes son desarrollados para realizar

tareas que exigen mayor capacidad de procesamiento y memoria.

Page 7: Capitulo III - UPSIN

26

Las características de hardware y software de los teléfonos inteligentes se encuentran

definidas en el uso de un sistema operativo que administra los recursos del equipo,

provee seguridad y optimiza las funcionalidades, la conectividad de los equipos a

Internet y a diferentes redes utilizando las diferentes tecnologías y estándares de

comunicación inalámbricas como Infrarrojo, Bluetooth, WAP, GPRS, Wi-Fi,

posicionamiento global GPS, entre otros, administración del correo electrónico, los

programas tradicionales de agenda, la administración de contactos, la sincronización

con otros equipos, la instalación de aplicaciones, la instalación de juegos, edición de

documentos ofimáticos, documentos portables como los PDF, cámaras que permiten

grabar videos y tomar fotos, reproducción de archivos de sonido en diferentes

formatos, utilizan pantallas táctiles, o teclados QWRTY, en general son herramientas

con bastante poder computacional e informático.

Tablet

Es un equipo de computación que se encuentra ubicado en el medio de un computador

portátil y Smartphone, los Tablet tienen la pantalla táctil la cual es utilizada como una

interfaz de ingreso de información, en la cual se puede escribir texto e ingresarlo en el

equipo y el usuario puede trabajar con el equipo sin necesidad de utilizar un teclado y

un mouse, también existen Tablet PC que se pueden convertir y utilizar con un teclado

y mouse.

Los Tablet utilizan hardware que consumen pocos recursos de energía, es decir los

procesadores, las memorias, los discos duros, las pantallas entre otros, tienen la

característica especial de diseño para la movilidad y para economizar recursos de

energía en el funcionamiento normal del dispositivo, es decir estos dispositivos no

están diseñados para el alto rendimiento o para un alto nivel de procesamiento.

El software de estos dispositivos está básicamente ligado al sistema operativo del

fabricante del dispositivo, debido a esto las características especiales de estos

dispositivos como la escritura en las pantallas, el dibujo, la conexión a internet y otros

Page 8: Capitulo III - UPSIN

27

tipos de redes se encuentran limitadas por las características y permisos que puede

proveer el fabricante.

Reloj Inteligente

Un reloj inteligente o smartwatch es un reloj que cuenta con un sistema operativo móvil

con el cual aparte de contar las horas los minutos y los segundos, es tiene una pantalla

multimedia a color o monocromática táctil, es capaz de conectarse a teléfonos

inteligentes y otros dispositivos a través de bluetooth, a internet a través de Wi-Fi, en

el que su pueden instalar aplicaciones y personalizar el reloj según los gustos de los

usuarios, estos reloj se pueden conectar a redes sociales, compartir archivos

multimedia, pueden realizar y recibir llamadas, enviar y recibir mensajes de texto,

correos electrónicos, reproducir música, monitorear la frecuencia cardiaca,

entrenamiento personal, entre muchas funciones.[7]

Varios estudios llegan a diversas conclusiones acerca del tipo de persona que usa

Android como sistema operativo, como la ocupación, edad, situación económica, etc.

Según el estudio, el 45% de usuarios de Android eligió la plataforma al escoger su

primer Smartphone, mientras que el 8% fue a raíz de migrar desde iPhone. El 37% de

los usuarios utiliza principalmente Android para chequear emails, mientras que un 21%

para jugar en Android o un 8% usa los mapas. En cuanto a la cantidad de aplicaciones

de Android (promedio que se usa en la instalación) versus la cantidad de aplicaciones

utilizadas en iPhone, el primero ronda las 17 aplicaciones, mientras que iPhone las 28

aplicaciones.[8]

Estas con algunas características de Android como sistema operativo:

Código abierto.

Page 9: Capitulo III - UPSIN

28

Núcleo basado en el Kernel de Linux.

Adaptable a muchas pantallas y resoluciones.

Utiliza SQLite para el almacenamiento de datos.

Ofrece diferentes formas de mensajería.

Navegador web basado en Web Kit incluido.

Soporte de Java y muchos formatos multimedia.

Soporte de HTML, HTML5, Adobe Flash Player, etc.

Incluye un emulador de dispositivos, herramientas para depuración de memoria

y análisis del rendimiento del software.

Catálogo de aplicaciones gratuitas o pagas en el que pueden ser descargadas

e instaladas (Google Play).

Bluetooth.

Google Talk desde su versión HoneyComb, para realizar video llamadas.

Multitarea real de aplicaciones. [9]

Grandes ventajas de Android:

El código es Abierto: gracias a esto cualquier persona puede realizar una

aplicación para Android.

Hoy en día hay más de 100,000 aplicaciones disponibles para teléfonos

Android, gran parte de ellas gratuitas.

Android es multitarea: es capaz de hacer funcionar a la vez varias aplicaciones.

Android se puede modificar a tu gusto: puedes personalizar totalmente la

pantalla.

Desventajas de Android:

Android es multitarea: no siempre cierra todas las aplicaciones así que hace

falta tener una aplicación que cierre las apps abiertas.

Duración de la Batería: Se gasta rápidamente.

Android es poco intuitivo: Problema provocado por la interfaz.

Android está desfragmentado: Cada modelo de teléfono móvil se ha de adaptar

a Android por lo que no es la misma versión.[10]

Page 10: Capitulo III - UPSIN

29

Seguridad

La seguridad en Android es lo más importante ya sea en aplicaciones o en los

dispositivos móviles, por lo tanto se debe de tener en cuenta cuales son los ataques

que existen, a continuación se hablará un poco de ello.

Existen varios tipos de seguridad en los dispositivos móviles, una de ellas es la física,

en donde se debe de eliminar todo el contenido personal de las memorias cuando el

teléfono móvil se recicle.

Otra se la seguridad es sobre las aplicaciones y los sistemas operativos, se deben

comprar e instalar aplicaciones y Software de páginas oficiales, se debe tener un

antivirus instalado en el móvil, apagar el móvil en las noches, ya que los ataques

ocurren cuando el usuario no está al tanto de ello.

Por último, sería el control de acceso y almacenamiento de datos, se debe asegurar

que se deben usar contraseñas alfanuméricas para el acceso y tras la inactividad de

los dispositivos, se debe evitar proporcionar información financiera y personal vía

correo electrónico, conversaciones telefónicas, etc., hacer copias de seguridad para

restablecer el sistema en caso de fallos o pérdidas de información. [11]

Los ataques en los dispositivos móviles con sistema operativo Android son muy

comunes ya que se usan para robar información personal, existen muchos tipos de

ataques los cuales se describen a continuación y algunas recomendaciones sobre

cómo evitarlos.

Stagefright: Dió el gran salto a Android a finales de 2015 y sigue siendo muy

popular entre los hackers, ya que destaca por ser altamente efectivo y por tener

la capacidad de afectar de manera simultánea a cientos de millones de

Page 11: Capitulo III - UPSIN

30

dispositivos. A grandes rasgos, es como un dardo que se dispara justo al centro

del sistema operativo. Todos los dispositivos equipados con el software del

robot verde tienen una carpeta denominada Stagefright que alberga

los contenidos multimedia y posibilita su reproducción. Mediante el envío de un

MMS por parte de los hackers, el malware se infiltra en los dispositivos y

consigue robar información personal y contenidos guardados en las galerías.

Uno de los factores por los que ha dado tanto de qué hablar es el hecho de que

hasta ahora, los desarrolladores de Android no han conseguido dar una

solución definitiva a este ataque que puede afectar a todos los terminales

con versiones superiores a 2.2.

CVE 2016-0728: Descubierto hace menos de un mes, el peligro de este

malware está en que puede hacer un acceso root. Pese a que Android sea un

software de código abierto, hay una serie de funciones que vienen de fábrica y

a las que los usuarios no pueden entrar ni modificar y que sirven para dar

estabilidad al sistema operativo y por tanto, a los dispositivos. Con esta

vulnerabilidad, el hacker pasa a ser administrador y puede reescribir los

códigos básicos que garantizan una ejecución normal de las tareas básicas.

Pese a que a simple vista, parezca un elemento grave y aunque 2 de cada 3

soportes con Android puedan verse expuestos, el número de ataques no ha

sido elevado.

Mediatek: Se trata de un fallo que viene dado por los procesadores

desarrollados por esta firma. Puede afectar a todos los terminales que posean

chips producidos por la compañía que posean exclusivamente a Android 4.4 y

consiste en la aparición de una puerta trasera o backdoor creada por error por

los diseñadores del procesador y que da permiso a los hackers para acceder al

software y poder reescribirlo, al igual que sucede con el caso que hemos

comentado anteriormente. Pese a que una gran cantidad de marcas,

especialmente de China, han sido las víctimas de este error, con la

actualización a versiones posteriores de Android el riesgo se elimina. Por otro

lado, el número de terminales que se ha visto afectado por esta vulnerabilidad,

Page 12: Capitulo III - UPSIN

31

ha sido bajo.[12]

Como evitar los ataques:

Activar las conexiones por bluetooth, infrarrojos y Wi-fi solo cuando se vayan

a utilizar.

Asegurarse que la información enviada o recibida no este infectada por

malware.

Descargar aplicaciones de sitios de confianza.

Cerrar todas las sesiones iniciadas al terminar de usarlas.

Mantener el software del dispositivo siempre actualizado.

Guardar el número IMEI del dispositivo móvil.[13]

Base de datos.

Una base de datos es indispensable en cualquier sistema, aplicaciones, juegos, etc.,

Android también trabaja con base de datos, y aquí se explicara un poco sobre base

de datos.

Una base de datos se puede definir como un conjunto de información relacionada

que se encuentra agrupada o estructurada. Es un sistema formado por un conjunto

de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto

de programas que manipulen ese conjunto de datos. Cada base de datos se compone

de una o más tablas que guarda un conjunto de datos. Cada tabla tiene una o más

columnas y filas. Las columnas guardan una parte de la información sobre cada

elemento que se desee guardar en la tabla, cada fila de la tabla conforma un registro.

Es muy utilizada por los administradores, quienes entre sus funciones tienen la de

ordenar y catalogar al personal, las mercancías, los gastos, los ingresos, etc.

Por ello se encuentran en la eminente necesidad de catalogar los datos para que al

ser buscados puedan ser encontrados en forma adecuada.

Son muy utilizadas por las escuelas, hospitales, bibliotecas, para poder acceder a la

información que se desee buscar.

Page 13: Capitulo III - UPSIN

32

Algunas características de una base de datos:

Independencia logia y física de los datos.

Redundancia mínima.

Acceso concurrente por parte de múltiples usuarios.

Integridad de los datos.

Seguridad de acceso y auditoria.

Respaldo y recuperación.

Una base de datos posee tipos de campos, entre los más comunes son:

Numérico: Pueden ser enteros “sin decimales” y reales “decimales”.

Booleanos: Poseen dos estados.- Verdadero “Si” y False “No”.

Fechas: Se almacenan fechas, lo cual posibilita ordenar los registros por

fechas o calcular los días entre una fecha y otra.

Alfanuméricos: Pueden ser número y letras. La longitud es de 255 caracteres.

Auto-incrementales: Son campos numéricos enteros que incrementan en una

unidad su valor para cada registro.[14]

Las bases de datos funcionan como una especie de biblioteca, en la cual se organizan

los datos en fichas, sólo que en el caso de las bases de datos se utilizarán tablas, que

organizarán estructuradamente cada información disponible en un campo que la

describa dentro de la tabla, de manera que sea muy sencillo ubicarla, utilizando una

búsqueda organizada de dicha información.

Las bases de datos trabajan con una enorme cantidad de tablas, las cuales trabajan

con índices o correlativos, que permiten al sistema identificar cada una de estas tablas

y sus tipos, de modo que podamos acceder a la información con facilidad.[15]

Existen varios tipos de base de datos, a continuación se muestra la información:

Base de datos jerárquica:

Page 14: Capitulo III - UPSIN

33

En una base de datos jerárquica se organizan los datos utilizando estructuras

arborescentes (en árbol).

Un ÁRBOL es una estructura jerárquica en la que los elementos se suelen denominar

NODOS y existen dependencias entre los nodos. La dependencia es de 1: M del tipo

padre/hijo. Un hijo no puede tener más de un padre, pero un padre varios hijos.

Esquema 1: Ejemplo de base de datos jerárquica es el sistema IMS.

Base de datos en red:

También en desuso, en una base de datos en red se utiliza la estructura de

grafo/red, como en el caso anterior los distintos objetos están relacionados entre

sí mediante relaciones del tipo 1: M pero en este caso un objeto puede estar

relacionado como hijo con varios elementos que serán sus padres. En este caso

las relaciones que se crean se denominan SET y el equivalente al padre se

denomina PROPIETARIO (OWNER) y el equivalente al hijo se denomina

MIEMBRO (MEMBER).

Un ejemplo de sistema en red es el CODASYL. También existen modelos para

realizar el diseño de datos orientado a bases de datos en red.

Page 15: Capitulo III - UPSIN

34

Esquema 2: Un ejemplo de base de datos en red.

Los sistemas jerárquico y en red constituyen la primera generación de los SGBD.

Pero estos sistemas presentan algunos inconvenientes:

Es necesario escribir complejos programas de aplicación para responder a

cualquier tipo de consulta de datos, por simple que ésta sea.

La independencia de datos es mínima.

No incluyen controles de integridad.

Por lo que pronto fueron sustituidos por los sistemas relacionales.

Base de datos relacionales:

Esta es la estructura que se ha impuesto para aplicaciones de gestión, consiste en

organizar los datos en forma de tablas, las relaciones entre los objetos se consiguen

incluyendo en la tabla del hijo, la clave del objeto padre. Como son las que

utilizaremos durante todo el módulo hemos reservado un apartado especial para

ellas.

Base de datos orientados a objetos:

Es un modelo más reciente, trata de almacenar en la base de datos los objetos

completos (estado y comportamiento). La información que contienen se organiza

en atributos y el comportamiento en operaciones.

Page 16: Capitulo III - UPSIN

35

Base de datos multidimensionales:

En una base de datos multidimensional los datos se almacenan en tablas de

múltiples dimensiones en vez de tablas bidimensionales como las del modelo

relacional. Se utilizan para grandes volúmenes de información.[16]

Las bases de datos también tienen ventajas y desventajas, a continuación se

describen.

Ventajas:

Independencia de los datos y los programas y procesos. Permite modificar

los datos, excepto el código de aplicaciones.

Menor redundancia, es decir, no es necesario la repetición de datos.

Solamente se indica la manera en la que se relacionan éstos.

Integridad de los datos, lo que genera mayor dificultad de perder la

información o de realizar incoherencias con los datos.

Mayor seguridad en los datos. Al permitir restringir el acceso a los usuarios,

cada tipo de éstos tendrá la posibilidad de acceder a ciertos elementos.

Acceso simultaneo a los datos, facilitando controlar el acceso de usuarios de

manera concurrente.

Reducción del espacio de almacenamiento, debido a una mejor

estructuración de los datos.

Acceso a los datos más eficiente. La organización de los datos produce un

resultado más óptimo en rendimiento. Igualmente, en el caso de

empresas, usuarios de distintas oficinas pueden compartir datos si están

autorizados.

Reducción del espacio de almacenamiento, gracias a una mejor

estructuración de los datos.

Aumenta la productividad de los programadores, debido a que los

programadores no se tienen que preocupar por la organización de los datos ni

de su validación, se pueden concentrar en resolver otros problemas inmediatos,

Page 17: Capitulo III - UPSIN

36

mejorando de ese modo su productividad.

Desventajas:

Ausencia de estándares reales, lo cual significa una excesiva dependencia a los

sistemas comerciales del mercado. Sin embargo, actualmente un gran sector de la

tecnología esta aceptado como estándar de hecho.

Requiere personal calificado, debido a la dificultad del manejo de este tipo de

sistemas. Esto requiere que los programadores y los analistas deben tomar cursos

que los adiestren para poder comprender las capacidades y limitaciones de las

Bases de Datos.

Instalación costosa, ya que el control y administración de bases de datos requiere

de un software y hardware de elevado coste. Además de la adquisición y

mantenimiento del Sistema Gestor de Datos (SGBD).

Falta de rentabilidad a corto plazo, debido al coste de equipos y de personal, al

igual del tiempo que tarda en estar operativa.

Tamaño. El Sistema de Manejo de Base de Datos (DBMS) requiere de mucho

espacio en disco duro y también requiere de mucha memoria principal (RAM) para

poder correr adecuadamente.

Requerimientos adicionales de Equipo. El adquirir un producto de Base de

Datos, requiere a su vez adquirir equipo adicional para poder correr ese producto

como por ejemplo, servidores, memoria, discos duros, entre otros. Si se pretende

correr la Base de Datos con el mínimo de requerimientos, esta posiblemente se

degrada.[17]

Android Studio

Android Studio es el entorno de desarrollo integrado (IDE) oficial para el desarrollo de

aplicaciones para Android y se basa en IntelliJ IDEA. Además del potente editor de

Page 18: Capitulo III - UPSIN

37

códigos y las herramientas para desarrolladores de IntelliJ, Android Studio ofrece aún

más funciones que aumentan tu productividad durante la compilación de apps para

Android.[18]

Android Studio posee distintos componentes que ayudan a la tarea de la construcción

de aplicaciones; sistema de construcción basado en Gradle, es la construcción de

variantes y múltiples archivo APK, como también plantillas de código que ayudan a la

creación de aplicaciones. Un completo editor de diseño con soporte para la edición de

arrastrar y soltar el tema elementos. Facilidad de uso y compatibilidad de versiones,

Código encoge con ProGuard y consumo de recursos cada vez menor con Gradle.

Por último, soporte integrado para Google Cloud Platform, lo que hace más fácil de

integrar Google mensajería en la nube y la App Engine.

En cuanto al desarrollo del flujo de trabajo, Android Studio posee un conjunto de

herramientas encargadas, adicionado a eso el posible acceso desde la línea de

comandos las herramientas SDK. Lo importante de todo esto es que, Android Studio

ofrece comodidad para los desarrolladores, ya que desde él es posible invocar,

durante el desarrollo de aplicaciones, las herramientas necesarias como una forma

más ágil de trabajo.

Imagen 2: Página Oficial de Android Studio.

Estructura de un proyecto en Android Studio

Cada proyecto en Android Studio contiene uno o más módulos con archivos de código

fuente y archivos de recursos. Entre los tipos de módulos se incluyen los siguientes:

Page 19: Capitulo III - UPSIN

38

Módulos de apps para Android

Módulos de bibliotecas

Módulos de Google App Engine

De forma predeterminada, en Android Studio se muestran los archivos de tu proyecto

en la vista de proyectos de Android. Esta vista está organizada en módulos para que

puedas acceder rápidamente a los archivos de origen claves de tu proyecto.

Todos los archivos de compilación son visibles en el nivel superior de Secuencias de

comando de Gradle y cada módulo de la aplicación contiene las siguientes carpetas:

Manifiestos: contiene el archivo AndroidManifest.xml.

Java: contiene los archivos de código fuente de Java, incluido el código de prueba

JUnit.

Res: Contiene todos los recursos, como diseños XML, cadenas de IU e imágenes de

mapa de bits.

Imagen 3: Estructura del proyecto en Android Studio.

Interfaz de usuario

La ventana principal de Android Studio consta de varias áreas lógicas que se

identifican en la imagen 4.

Page 20: Capitulo III - UPSIN

39

1. La barra de herramientas te permite realizar una gran variedad de acciones,

como la ejecución de la app y el inicio de herramientas de Android.

2. La barra de navegación te ayuda a explorar tu proyecto y abrir archivos para

editar. Proporciona una vista más compacta de la estructura visible en la

ventana Project.

3. La ventana del editor es el área en la que puedes crear y modificar código.

Según el tipo de archivo actual, el editor puede cambiar. Al visualizar un archivo

de diseño, por ejemplo, el editor muestra el Editor de diseño.

4. Las ventanas de herramientas te permiten acceder a tareas específicas, como

la administración de proyectos, la búsqueda y los controles de versión, entre

otras. Puedes expandirlas y contraerlas. En la barra de estado se muestra el

estado de tu proyecto y el IDE, además de advertencias o mensajes.[19]

Imagen 4: Ventana principal de Android Studio. [19]

Principales características que incluye Android Studio:

Page 21: Capitulo III - UPSIN

40

Soporte para programar aplicaciones para Android Wear (sistema operativo

para dispositivos corporales como por ejemplo un reloj).

Herramientas Lint (detecta código no compatible entre arquitecturas diferentes

o código confuso que no es capaz de controlar el compilador) para detectar

problemas de rendimiento, usabilidad y compatibilidad de versiones.

Utiliza ProGuard para optimizar y reducir el código del proyecto al exportar a

APK (muy útil para dispositivos de gama baja con limitaciones de memoria

interna).

Integración de la herramienta Gradle encargada de gestionar y automatizar la

construcción de proyectos, como pueden ser las tareas de testing, compilación

o empaquetado.

Nuevo diseño del editor con soporte para la edición de temas.

Nueva interfaz específica para el desarrollo en Android.

Permite la importación de proyectos realizados en el entorno Eclipse, que a

diferencia de Android Studio (Gradle) utiliza ANT.

Posibilita el control de versiones accediendo a un repositorio desde el que

poder descargar Mercurial, Git, GitHub o Subversión.

Alertas en tiempo real de errores sintácticos, compatibilidad o rendimiento antes

de compilar la aplicación.

Vista previa en diferentes dispositivos y resoluciones.

Editor de diseño que muestra una vista previa de los cambios realizados

directamente en el archivo XML.

Requerimientos del Sistema.

Windows Mac OS Linux

Microsoft Windows

8/7/Vista/2003 (32 o 64 bit)

Mac OS X 10.8.5 o superior,

hasta la 10.9 (Mavericks)

GNOME o entorno

de escritorio KDE

mínimo de 2 GB de RAM, recomendado 4 GB de RAM

Page 22: Capitulo III - UPSIN

41

400 MB de espacio en disco

Necesita de al menos 1 GB para Android SDK, emulador de imágenes del sistema,

y cachés

Resolución mínima de pantalla de 1280 x 800

Java Development Kit (JDK) 7 o superior

Tabla 2: Requisitos de Sistema para Sistema Operativo.

Ventajas uso Android Studio:

Android Studio ha pasado a ser el entorno recomendado para el desarrollo de

aplicaciones en Android, al tratarse de un IDE oficial de Google en colaboración

con JetBrains (compañía de desarrollo software especializada en diseño de

IDEs).

Android Studio permite la creación de nuevos módulos dentro de un mismo

proyecto, sin necesidad de estar cambiando de espacio de trabajo para el

manejo de proyectos.

Con la simple descarga de Android Studio se disponen de todas las

herramientas necesarias para el desarrollo de aplicaciones para la plataforma

Android.

Su nueva forma de construir los paquetes .apk, mediante el uso de Gradle,

proporciona una serie de ventajas más acorde a un proyecto Java.

Facilita la distribución de código y por lo tanto el trabajo en equipo.

Reutilización de código y recursos.

Permite compilar desde línea de comandos, para aquellas situaciones en las

que no esté disponible un entorno de desarrollo.

Mayor facilidad para la creación de diferentes versiones de la misma aplicación,

que proporciona numerosas ventajas como puede ser la creación de una

versión de pago y otra gratuita, o por ejemplo diferentes dispositivos o almacén

de datos.

Page 23: Capitulo III - UPSIN

42

Desventajas uso Android Studio:

Aunque ya ha se ha lanzado la primera versión estable, la v1.0, al estar en una

fase inicial, siempre es susceptible de introducirse más cambios que puedan

provocar inestabilidad entre proyectos de diferentes versiones.

Curva de aprendizaje más lenta para nuevos desarrolladores de Android.

El sistema de construcción de proyectos Gradle puede resultar complicado

inicialmente.

En comparativa con Eclipse, menor número de plugins.[20]

Instalación de Android Studio en Windows

Para instalar Android Studio en la PC se debe seguir los siguientes pasos:

Paso 1: Descargar la versión más reciente de Android desde la página oficial de

Android.

Imagen 5: Sitio Oficial de Android. [21]

Page 24: Capitulo III - UPSIN

43

Paso 2: Una vez descargado el instalador que corresponde al sistema operativo del

PC, se ejecuta el instalador para comenzar la instalación.

Imagen 6: Pantalla principal del instalador de Android Studio. [21]

Paso 3: Al darle siguiente el instalador preguntara cuales son los componentes que

se desee instalar.

Page 25: Capitulo III - UPSIN

44

Imagen 7: Seleccionar los componentes que se desee. [21]

Paso 4: Después se llega a la licencia y términos de uso, se debe aceptar para poder

continuar con la instalación.

Imagen 8: Licencia y términos de uso. [21]

Paso 5: En este paso, se debe elegir la ruta de donde se instalara Android Studio.

Se debe elegir una rata para el programa y otra para instalar el SDK.

Page 26: Capitulo III - UPSIN

45

Imagen 9: Localización de programa y SDK. [21]

Paso 6: En el siguiente paso, se pregunta la cantidad de memoria RAM que se

desee asignar para el uso de las máquinas virtuales y emuladores de Android.

Imagen 10: Asignación de memoria RAM. [21]

Page 27: Capitulo III - UPSIN

46

Paso 7: Después comenzará la copia de archivos al disco duro. Puede tardar un

tiempo este proceso.

Imagen 11: Copia de archivos al disco duro. [21]

Paso 8: una vez que finalice la instalación, Android Studio se conectara a Internet

para descargar los elementos del SDK para funcionar correctamente.

Page 28: Capitulo III - UPSIN

47

Imagen 12: Descargando los SDK. [21]

Paso 9: Una vez finalizada la descarga de los SDK, estará listo para ser usado y

programar aplicaciones de Android.

Imagen 13: Finalizada la instalación. [21]

Instalar el SDK y componentes de Android Studio.

Para poder trabajar correctamente con Android Studio es necesario instalar los

componentes y los SDK.

Una vez instalado Android Studio y ejecutada en la CP, lo primero que se observara

será el asistente principal de la herramienta.

Page 29: Capitulo III - UPSIN

48

Imagen 14: Asistente de configuración.[22]

Desde aquí se pueden realizar diversas acciones, aunque la más interesante es la

opción de configure.

Imagen 15: Opción configure.[22]

Una vez en la opción configure, se mostrara una ventana donde se puede configurar

Android Studio. En esta ocasión se elegirá la opción de instalar SDK y componentes.

Page 30: Capitulo III - UPSIN

49

Imagen 16: Opción SDK Manager.[22]

Se abrirá una ventana, donde se muestra una lista de componentes y extensiones

que se pueden instalar en Android Studio.

Imagen 17: Componentes y extensiones para Android Studio. [22]

Algunos componentes se instalan por default al momento de la instalación, tiene

varias opciones como herramientas, API, y componentes extras, se seleccionan los

Page 31: Capitulo III - UPSIN

50

que se deseen instalar y se da clic en “install”, para comenzar a instalar los

componentes seleccionados.

Imagen 18: Instalación de elementos.[22]

Se aceptan los términos de licencia antes, para poder comenzar la descarga de los

componentes.

Imagen 19: Términos de licencia.[22]

El proceso de instalación puede tardar un tiempo, según el tamaño y número de

componentes.

Page 32: Capitulo III - UPSIN

51

Imagen 20: Instalación de paquetes.[22]

Dispositivo móvil con Android

Un dispositivo móvil se puede definir como un aparato de pequeño tamaño, con

algunas capacidades de procesamiento, con conexión permanente o intermitente a

una red, con memoria limitada, que ha sido diseñado específicamente para una

función, pero que puede llevar a cabo otras funciones más generales. De acuerdo con

esta definición existen multitud de dispositivos móviles, desde los reproductores de

audio portátiles hasta los navegadores GPS, pasando por los teléfonos móviles, los

PDAs o los Tablet PCs.

Tipos de dispositivos móviles

Page 33: Capitulo III - UPSIN

52

Dispositivo Móvil de Datos Limitados (Limited Data Mobile Device): teléfonos

móviles clásicos. Se caracterizan por tener una pantalla pequeña de tipo texto.

Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP.

Dispositivo Móvil de Datos Básicos (Basic Data Mobile Device): se caracterizan

por tener una pantalla de mediano tamaño, menú o navegación basada en

iconos, y ofrecer acceso a emails, lista de direcciones, SMS, y, en algunos

casos, un navegador web básico. Un típico ejemplo de este tipo de dispositivos

son los teléfonos inteligentes (“Smartphone”).

Dispositivo Móvil de Datos Mejorados (Enhanced Data Mobile Device): se caracterizan

por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixels), y que

ofrecen las mismas características que el "Dispositivo Móvil de Datos Básicos" más

aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word, Excel,

PowerPoint) o similares y aplicaciones corporativas usuales, en versión móvil, portales

intranet, etc. Este tipo de dispositivos incluyen los S.O. como Windows Mobile, Android

o iOS IPhone. Entre estos dispositivos portátiles se pueden encontrar las PDA, PC

Ultra Móvil, tabletas, e incluso computadoras portátiles.[21]

Dispositivos móviles con Android.

Teléfonos celulares

Tabletas electrónicas

Page 34: Capitulo III - UPSIN

53

Tabla 3: Dispositivos Móviles con Android.

Ventajas de dispositivos móviles con Android.

Algunas de las ventajas de utilizar alguno de los dispositivos Android, es la capacidad

que tiene este sistema para poder ser personalizado de la manera que al usuario le

sea más fácil y rápido realizar las acciones que necesite, además de las miles de

aplicaciones con las que cuenta en todas sus formas ya sea como celular o asta en

un auto, que hacen del dispositivo un arma muy potente para el día a día con la que

podemos ahorrarnos tiempo.

Tv box

SmarTv

Relojes inteligentes

Android Auto

Page 35: Capitulo III - UPSIN

54

Sistema Operativo.

En esta sección se hablara sobre los sistemas operativos, se presenta la información

necesaria para entender el concepto de este tema.

El sistema operativo es aquel recurso de software, que nos permite gestionar un

equipo computarizado y los diversos periféricos que lo conforman (o estén conectados

a este dispositivo), y además, nos permite realizar todas las actividades que

deseemos hacer en dicho dispositivo computarizado.

Es aquel que se encarga de dirigir las acciones que se llevan a cabo dentro del

dispositivo y hacer ejecutar las órdenes dadas por el usuario. Podemos decir

entonces, que es el componente de software que nos permite interactuar con el

dispositivo computarizado(PC, móvil, tableta, etc.), así como, controlar y administrar

todos los dispositivos que conforman el aparato y los que están conectados a este, de

modo, que podamos administrar cualquier función, tal cual como el cerebro humano.

El sistema operativo es un software, por lo tanto, está conformado por líneas de

código, hechas en un lenguaje de programación específico. [22]

Esquema 3: Para qué sirve un Sistema Operativo. [22]

Page 36: Capitulo III - UPSIN

55

Tipos de Sistemas Operativos.

Los tres sistemas operativos más comunes para ordenadores personales son

Microsoft Windows, Mac OS X y Linux. Los sistemas operativos modernos utilizan una

interfaz gráfica de usuario o GUI. Una interfaz gráfica te permite utilizar el ratón o una

pantalla táctil, para hacer clic o desplazarte sobre los iconos, botones, menús, y todo

lo que se muestra claramente en la pantalla utilizando una combinación de gráficos y

texto.[23]

Imagen 21: Tipos de Sistemas Operativos. [23]

Sistemas Operativos para Dispositivos Móviles

Las principales características de un sistema operativo móvil son su facilidad de uso,

su simpleza y su orientación hacia elementos de la movilidad, como el Internet

inalámbrico, el Bluetooth y el multimedia.

El sistema operativo móvil más popular del mundo es Android, un software

basado en Linux desarrollado por Google y la Open Handset Alliance, una

alianza en la que participan más de 10 empresas de tecnología.

Page 37: Capitulo III - UPSIN

56

Imagen 22: Sistema Operativo Android. [24]

Desarrollado por Apple, iOS es el sistema operativo de los dispositivos móviles

de Apple: iPhone, iPod e iPad. La primera versión de iOS fue lanzada en junio

de 2007, junto con el primer iPhone, si bien en sus inicios se le llamaba iPhone

OS.

Imagen 23: Sistema Operativo iOS. [24]

Microsoft tienevariosañoscreandosistemasoperativosparadispositivosmóviles.

El primero fue Windows Mobile, lanzado en abril del 2000 y que estaba

destinado al sector empresarial a través de PDAs y teléfonos celulares con

pantalla táctil, aunque por medio de stylus.

Page 38: Capitulo III - UPSIN

57

Imagen 24: Así luce el Sistema Operativo Windows Phone. [24]

Un sistema operativo creado por Samsung como respuesta al éxito de

Android. Utilizado por esta empresa en teléfonos como el Samsung Z1, que ha

tenido buena respuesta en países como India, también se ha incorporado en

los relojes inteligentes Samsung Gear y en algunas Samsung TV. Tizen está

basado en Linux y tiene compatibilidad con las aplicaciones de Android por

medio de un software de compatibilidad. Sin embargo, hasta el momento se

desconocen los planes de Samsung para lanzar más Smartphone con este

sistema operativo, y más aún, si tendrá éxito entre los consumidores.

Imagen 25: Sistema Operativo creado por Samsung. [24]

Page 39: Capitulo III - UPSIN

58

Ubuntu Touch es un sistema operativo móvil basado en Linux que se puede

instalar en los teléfonos con Android por medio de una ROM de software.

Algunos de los teléfonos soportados incluyen al Nexus 10, el HTC One X y el

Nexus 5, si bien otras marcas han lanzado ya terminales con este sistema de

fábrica.[24]

Imagen 26: Sistema Operativo Ubuntu en celulares. [24]

Aplicaciones

Una aplicación (también llamada app) es simplemente un programa informático creado

para llevar a cabo o facilitar una tarea en un dispositivo informático. Cabe destacar

que aunque todas las aplicaciones son programas, no todos los programas son

aplicaciones. Existe multitud de software en el mercado, pero sólo se denomina así a

aquel que ha sido creado con un fin determinado, para realizar tareas concretas. No

se consideraría una aplicación, por ejemplo, un sistema operativo, ni una suite, pues

su propósito es general.

Las aplicaciones nacen de alguna necesidad concreta de los usuarios, y se usan para

facilitar o permitir la ejecución de ciertas tareas en las que un analista o un

programador han detectado una cierta necesidad. Pero las aplicaciones también

pueden responder a necesidades lúdicas, además de laborales (todos los juegos, por

Page 40: Capitulo III - UPSIN

59

ejemplo, son considerados aplicaciones). Se suele decir que para cada problema hay

una solución, y en informática, para cada problema hay una aplicación.[25]

Tipos de aplicaciones

1.- App nativa

Una aplicación nativa es la que se desarrolla de forma específica para un

determinado sistema operativo, llamado Software Development Kit o SDK. Cada una

de las plataformas, Android, iOS o Windows Phone, tienen un sistema diferente, por

lo que si quieres que tu app esté disponible en todas las plataformas se deberán de

crear varias apps con el lenguaje del sistema operativo seleccionado.

Por ejemplo:

Las apps para iOS se desarrollan con lenguaje Objetive-C.

Las apps para Android se desarrollan con lenguaje Java.

Las apps en Windows Phone se desarrollan en .Net.

Tabla 4: Ventajas y desventajas de App Nativas.

Page 41: Capitulo III - UPSIN

60

2.- Web App

Una aplicación web o web App es la desarrollada con lenguajes muy conocidos por

los programadores, como es el HTML, JavaScript y CSS. La principal ventaja con

respecto a la nativa es la posibilidad de programar independiente del sistema operativo

en el que se usará la aplicación. De esta forma se pueden ejecutar en diferentes

dispositivos sin tener que crear varias aplicaciones.

Tabla 5: Ventajas y desventajas de Web App.

3.- Web App nativa

Una aplicación híbrida es una combinación de las dos anteriores, se podría decir que

recoge lo mejor de cada una de ellas. Las apps híbridas se desarrollan con lenguajes

propios de las webabpp, es decir, HTML, Javascript y CSS por lo que permite su uso

en diferentes plataformas, pero también dan la posibilidad de acceder a gran parte de

las características del hardware del dispositivo. La principal ventaja es que a pesar de

estar desarrollada con HTML, Java o CSS, es posible agrupar los códigos y

distribuirla.[26]

Page 42: Capitulo III - UPSIN

61

Tabla 6: Ventajas y desventajas de Web App Nativa.

Tipos de aplicaciones en Android

La mayoría de las aplicaciones de Android se caen en una o dos de estas categorías:

Foreground (De Primer Plano). Estas aplicaciones solo se utilizan cuando el

usuario las ve y las usa. En cuanto la minimiza o cierra, deja de actuar. Los

juegos son un ejemplo típico de estas aplicaciones.

Background (De fondo). Estas aplicaciones tienen una interacción limitada

con el usuario, pasan la mayoría de su vida escondidas, esperando algún

evento. Aplicaciones para responder SMS o interactuar con llamadas son

ejemplos.

Intermittent (Intermitentes). Son aplicaciones que son interactivas, pero

hacen mucho de su trabajo de fondo, notificando a los usuarios cuando es

apropiado. Servicios de Chat y Música son ejemplos.

Page 43: Capitulo III - UPSIN

62

Widget, Live Wallpapers. Son aplicaciones que viven solamente en el home-

screen del aparato.

Al crear una aplicación, podemos utilizar todas las técnicas mencionadas

anteriormente, pero es importante considerar como la utilizará el usuario y diseñar

la interfaz apropiadamente.

Google Play

Es una integración para aplicaciones, juegos, libros, películas y música disponible en

cualquier dispositivo Android y en la web. Con el lanzamiento de Google Play se

reemplaza y extiende el Android Market. Ahora los usuarios, desde cualquier parte,

podrán encontrar sus aplicaciones y juegos en Google Play, con otro contenido digital,

todo en un mismo sitio.

¿Qué podemos hacer desde Google Play?

Almacenar hasta 20.000 canciones de forma gratuita y poder comprar la que

queramos.

Descargar más de 450.000 juegos y aplicaciones Android.

Disfrutar de la selección más grande de eBooks.

Alquilar miles de películas, tanto estrenos como títulos HD.

Como subir tu propia aplicación Android a la Google play

Acceder a la consola Google Play para desarrolladores

La consola de Google Play será el centro donde se controlan todas las apps, su estado

y estadísticas. Se accede desde con la cuenta Gmail que anteriormente se ha creado

o se quiere usar.

La primera vez que se accede, se debe registrar dicha cuenta como desarrollador

Page 44: Capitulo III - UPSIN

63

pagando la cuota de alta, que en el momento de escribir esta guía son 25$ haciendo

un cargo a la tarjeta de crédito especificada.

Subir App

Seguidamente, se hará clic en Añadir nueva aplicación y se subirán los archivos:

APK: archivo generado tras la compilación del proyecto.

Capturas de pantalla: al menos un par y se pueden hacer desde el simulador.

Icono de alta resolución, como emblema en Play Store.

A continuación se especifican los detalles de la aplicación como nombre, descripción,

tipo, idioma, categoría opciones de publicación, información de contacto.

Se debe rellenar cuidadosamente esta información ya que será la que se verá

públicamente como información de la aplicación.

Una vez hecho el envío, se podrán crear traducciones para diferentes idiomas,

capturas de pantalla, gráficos de funciones, iconos de alta resolución, URL de vídeo

de YouTube y gráficos promocionales localizados geográficamente.

Asignar un precio de venta por app o por contenido

En el caso de que se quiera asignar un precio de venta de nuestra aplicación se debe

echar un vistazo a la documentación de Google para tener información completa sobre

pagos, monedas, reembolso, etc. Por el contrario se puede utilizar el pago por

contenido (libros, vídeos, revistas…) dentro de la propia app durante la

programación.[27]

Page 45: Capitulo III - UPSIN

64

Otras plataformas para desarrollar aplicaciones Android.

Android es el sistema operativo que ocupa mayor parte del mercado de las

aplicaciones móviles. Por eso un desarrollador de Android debe dominas el lenguaje

Java a la perfección. Sim embargo, en la actualidad existen diferentes lenguajes de

programación, si no para muchos sistemas operativos.

Entornos para desarrollar aplicaciones Android:

Basic 4 Android

La plataforma Basic4Android es una de las grandes enemigas de Android Studio,

que programa con el lenguaje Visual Basic, también rival de Java desde sus inicios.

Basic4Android está especialmente indicado para aquello desarrolladores Android que

empezamos a desarrollar apps en Android. La explicación la encontramos en que es

un entorno más gráfico y menos abstracto, de manera que podemos ver los avances

conforme programamos.

Imagen 27: Basic4Android. [28]

Mono para Android

Aunque Java sea el lenguaje nativo de Android, la gran fama de este sistema operativo

ha conseguido que llegaran herramientas para programar apps en Android conociendo

otros lenguajes de programación. Los lenguajes que Microsoft para desarrollar

apps C# y .NET han llegado también a Android.

Page 46: Capitulo III - UPSIN

65

Cuando se desee utilizar este lenguaje seguramente es porque se usara Visual Basic,

por lo tanto solo te queda descargar la SDK de Mono para Android y directamente

podrás desarrollar apps en Android desde tu entorno Microsoft.

Imagen 28: Mono para Android. [28]

App Inventor

Esta es una plataforma desarrollada por Google Labs para que más gente se uniera

a programar aplicaciones en Android. Es un entorno totalmente visual en el que no

hace falta ni escribir una sola línea de código para desarrollar apps en Android. Uno

de los grandes inconvenientes es también su punto fuerte, la simplicidad y la rapidez

a la hora de crear apps para Android. Es completamente gratuito, solamente hay que

descargar App Inventor en la web y empezar a crear apps.

Imagen 29: App Inventor. [28]

Page 47: Capitulo III - UPSIN

66

InDesing CS6

Con este CSE se pueden conseguir crear apps en Android basadas en los contenidos

que ya has creado.

Solamente se deben seguir estos pasos:

Descargar In Design CS6.

Descargar Adobe Content View.

Comprar una licencia dependiendo de cuántas publicaciones vaya a tener tu

revista o periódico.

Después solamente se tiene que preocupar por el trabajo de diseño de las

aplicaciones y el programa hace el resto del trabajo.

Imagen 30: InDesign CS6. [28]

Page 48: Capitulo III - UPSIN

67

HTML5

Este lenguaje supone un avance enorme especialmente a la hora de hacer

aplicaciones web. Lo bueno de este lenguaje de programación es que posee una gran

versatilidad y que su contenido se adapta a muchísimas plataformas. Es decir, que es

ideal para el desarrollo de apps multiplataforma. También para desarrollar apps en

Android. Con la gran ventaja de poder realizar actualizaciones de manera instantánea.

Imagen 31: HTML5. [28]

AppceleratorTitanium

Es una de las plataformas para desarrollar aplicaciones más activas del momento.

Con más de millón y medio de usuarios activos y más de 20.000 aplicaciones

desarrolladas. Existe muchísima documentación sobre esta herramienta con la que se

puede aprender fácilmente y empezar a desarrollar aplicaciones móviles. Como

referencia de calidad se puede decir que grandes firmas digitales como eBay o PayPal

desarrollan sus aplicaciones móviles desde AppceleratorTitanium. [28]

Imagen 32: AppceleratorTitanium. [28]