programación de dispositivos móviles unidad 5

65
Instituto Tecnológico de Saltillo Tópicos Avanzados de Programación Unidad 5: Programación de dispositivos móviles Lorenzo Antonio Flores Pérez Fecha 24/nov/2014

Upload: lorenzo-antonio-flores-perez

Post on 21-Jan-2018

333 views

Category:

Software


4 download

TRANSCRIPT

Page 1: Programación de dispositivos móviles UNIDAD 5

Instituto Tecnológico de Saltillo

Tópicos Avanzados de Programación

Unidad 5: Programación de

dispositivos móviles

Lorenzo Antonio Flores Pérez

Fecha 24/nov/2014

Page 2: Programación de dispositivos móviles UNIDAD 5

ÍNDICE

1. Tipos de dispositivos móviles en la actualidad …………...................... 1

1.1. Características de cada tipo de dispositivo móvil ………………… 5

1.2. Uso intencionado de cada tipo de dispositivo móvil ……………… 15

1.3. Porcentaje de presencia en el mercado de cada tipo ………......... 20

2. Entornos de desarrollo de aplicaciones móviles …………………........ 25

2.1. Características …………………………………………………….......... 32

2.2. Ventajas de cada entorno ……………………………………………… 35

2.3. Desventajas de cada entorno …………………………………………. 37

3. Desarrollo de aplicaciones para dispositivos móviles ………………… 39

3.1. Protocolos relacionados (de red, de interfaces, etc.) …………….. 40

3.2. Hardware y Software mínimo ……………………………………........ 45

3.3. Manejo de Audio, Video y Animaciones ………………………......... 51

3.4. Costos e implicaciones asociadas (hardware y software)............. 56

3.5. Comercialización ………………………………………………………… 57

3.6. Ejemplo de desarrollo básico …………………………………………. 59

4. Conclusiones y Recomendaciones ……………………………………….. 60

5. Referencias …………………………………………………………………….. 61

Page 3: Programación de dispositivos móviles UNIDAD 5

1

Los dispositivos móviles (también conocidos como computadora de

mano, palmtop o simplemente handheld) son aparatos de pequeño tamaño, con

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

a una red, con memoria limitada, diseñados específicamente para una función,

pero que pueden llevar a cabo otras funciones más generales.

Los dispositivos móviles son aparatos de tamaño pequeño que cuentan con

características tales como:

1. Tipos de dispositivos móviles en la actualidad

Actualmente existen infinidad de dispositivos móviles pero pueden dividirse según

su funcionamiento su capacidad o su diseño entre los cuales podemos destacar:

Teléfonos móviles y Smartphone.

Entre los dispositivos móviles son los más ligeros, portables y cómodos

Page 4: Programación de dispositivos móviles UNIDAD 5

2

(económicamente hablando). Su principal función es permitir recibir y realizar

llamadas; sin embargo, cada vez tienen mayores aplicaciones y funcionalidades

(Smartphone) que los hacen más atractivos para los consumidores. Tales como

mejor resolución en cámara de fotos, grabación de videos, video llamadas, GPS,

lectura y edición de documentos, navegar por la web y más.

Categoría de dispositivos móviles( Phone y Smartphone)

Dado el variado número de niveles de funcionalidad asociado con dispositivos

móviles, en el 2005, T38 y DuPont Global Mobility Innovation Team propusieron

los siguientes estándares para la definición de dispositivos móviles

Dispositivo Móvil de Datos Limitados : dispositivos que tienen una pantalla

pequeña, principalmente basada en pantalla de tipo texto con con servicios de

datos generalmente limitados a SMS y acceso WAP Un típico ejemplo de este tipo

de dispositivos son los teléfonos móviles.

Dispositivo Móvil de Datos Básicos :

Dispositivos que tienen una pantalla de mediano tamaño, (entre 120 x 120 y 240 x

240 pixeles), menú o navegación basada en íconos por medio de una "rueda" o

cursor, y que ofrecen acceso a EMAILS lista de direcciones, SMS, y un

NAVEGADOR WEB básico. Un típico ejemplo de este tipo de dispositivos son las

BlackBerry y los teléfonos inteligentes.

Dispositivo Móvil de Datos Mejorados:

Dispositivos que tienen pantallas de medianas a grandes (por encima de los 240 x

120 pixeles), navegación de tipo stylus, 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) y aplicaciones

corporativas usuales, en versión móvil, como SAP, portales intranet, etc. Este tipo

de dispositivos incluyen los sistemas operativos muy completos, como en las

pocket pc.

Page 5: Programación de dispositivos móviles UNIDAD 5

3

De PDA o Tablet.

PDA significa Personal Digital Assitant, sirven como organizadores electrónicos

que contienen agenda, calendario y lista de contacto, con el paso del tiempo

fueron modo creciendo y actualmente los conocemos como Tablet´s (o tabletas)

sirven tanto como para leer libros hasta realizar video llamadas, pronto no serán

muy diferentes a los teléfonos celulares.

Videoconsola portátil.

Un dispositivo electrónico ligero que permite jugar videojuegos y que, a diferencia

Page 6: Programación de dispositivos móviles UNIDAD 5

4

de una videoconsola clásica, los controles, la pantalla, los altavoces y la

alimentación (baterías) están todos integrados en la misma unidad y todo ello con

un pequeño tamaño, para poder llevarla y jugar en cualquier lugar o momento.

Existen dos ejemplos en la actualidad que resaltan sobre los demás, el PSP o Play

Station Portable y el Nintendo DS.

Reproductores de música

El llevar la música de manera portátil no es una idea novedosa, los primeros

dispositivos que grababan música para luego ser reproducida en otro

espacio/tiempo datan de finales del siglo XIX.

Sólo para listar en orden que fueron inventados:

- Fonógrafo (1877)

- Gramó grafo (1888)

- Tornamesa para Vinilos (50's)

- Reproductor de casetes (60's)

- Walkman

- DAT (reproductor de cinta de audio digital) por SONY

- Reproductores de CD (discman)

- Reproductores digitales (El formato MP3 y WMA son los más populares. ATRAC

por Sony y AAC por Apple, etc.)

Computadora portátil

Page 7: Programación de dispositivos móviles UNIDAD 5

5

O también las llamadas Laptop, fueron desarrolladas desde el año 1981 con la

iniciativa de poder transportar información de un lugar a otro. El primer modelo es

considerado el Epson HX-20 (a la mano derecha) hasta la diversidad de tamaños,

formas, capacidades y colores que conocemos actualmente.

1.1 Características de cada tipo de dispositivo móvil

Características de un Smartphone

Sistema Operativo del Smartphone

Se ha escrito mucho sobre cuáles son las ventajas de uno u otro sistema

operativo, pero lo evidente es que hoy predominan dos corrientes, el sistema

operativo Android y el sistema operativo de los iPhone de Apple, el iOS. Ambos

actualizables y con gran cantidad de prestaciones. La escogencia de uno u otro

quizás sea más algo intrínseco al equipo que adquieras, pero de todas maneras

debería estar entre las consideraciones que hagas para adquirir un Smartphone.

Toma en cuenta el sistema operativo que tenga el Smartphone, así como las

aplicaciones de comunicación y otras prestaciones que están incorporadas:

Page 8: Programación de dispositivos móviles UNIDAD 5

6

programas que vayas a necesitar, facilidad para instalarle nuevos programas,

actualización del sistema operativo, y expansión de la capacidad de

almacenamiento de datos.

Soporte de Banda

Mientras más bandas de radio pueda soportar un Smartphone, más

frecuencias podrá usar. Los teléfonos de Cuatro bandas, operan a lo largo de

cuatro frecuencias, por lo tanto, en teoría proporcionan una mejor cobertura

comparándose con cualquier otro teléfono móvil que sea tri banda, banda dual o

banda simple.

Estos Smartphone de cuatro bandas, también han sido llamados Smartphone

mundiales ya que son compatibles con las cuatro frecuencias GSM prevalentes en

casi todo el mundo. Por lo tanto pueden funcionar en cualquier parte. Sin

embargo, siempre comprueba con tu operador de servicio para su compatibilidad.

Redes soportadas

Aquellas personas que constantemente viajan de un país a otro y van a

utilizar un Smartphone como parte integral de esa actividad, ya sea por diversión o

trabajo, pueden verse afectadas por los estándares inalámbricos existentes. La

mayor parte de los países usan redes basadas en GSM (Sistema global para

comunicación móviles), sin embargo, existen otros estándares de comunicación

inalámbrica como la CDMA (Acceso Múltiple con División de Código), la TDNA

(Acceso Múltiple con División de Tiempo), IDEN (Red Digital Integrada Mejorada),

GPRS (Servicio Radial General de Paquetes), EDGE (Flujo de Datos Mejorado

para Evolución Global), y EvDO(Evolución de Datos Optimizada).

Un mismo proveedor suele ofrecer uno o varios de estos estándares inalámbricos

de comunicación, pero varía de uno a otro.

Page 9: Programación de dispositivos móviles UNIDAD 5

7

Actualmente está muy difundida la característica Wi-Fi en los smartphones,

facilitando así su conectividad para navegar en la red o para transferir datos con

otros dispositivos. Si viajas constantemente o estás con mucha frecuencia lejos de

tu lugar habitual de trabajo o tu hogar, es muy probable que esta prestación sea

de gran utilidad para ti. Asegúrate de conseguir un Smartphone que tenga esta

característica, no dejes pasar una oferta que pueda ofrecerte Smartphone con ella.

En la actualidad es casi norma que los restaurantes, cafeterías, Centros de

shopping y muchos otros sitios ofrezcan acceso Wi-Fi.

Diseño

Hay tantos diseños como Smartphone y teléfonos móviles , es más un aspecto de

preferencia personal el que se escoja un diseño u otro. Sin embargo, además de

esa personal preferencia por un modelo o diseño dados, considera si te conviene

con tapa o sin ella, tapa deslizante o de abrir, teclado cubierto, ampliado,

comodidad para usar las teclas o leer la pantalla. Puede parecer un aspecto

relativamente irrelevante pero no lo es.

Tamaño y peso

Quizás este factor no sea tan importante como lo era antes, donde cada vez que

salía una nueva oferta de celulares, era de modelos cada vez más pequeños y

más livianos. Si el teléfono era minúsculo para algunos era sinónimo de

tecnología. Pero hoy, las cosas sin que se hayan ido al otro extremo, hacen que

los Smartphone hayan comenzado una expansión y engorde naturales por las

múltiples prestaciones que ofrecen. Pero considera si esas nuevas prestaciones

valen la pena cuando tienes que cargar un Smartphone todo el día en exteriores.

Escoge siempre algo que esté en el fino compromiso entre prestación tecnológica

de punta y comodidad de transporte.

Vida de la Batería

Page 10: Programación de dispositivos móviles UNIDAD 5

8

La mayor parte de los Smartphone en la actualidad son capaces de ofrecer

tiempos de uso bastante prolongados, de varios días o incluso algunas semanas

en la mayor parte de los casos, eso con el Smartphone en espera. Sin embargo,

varios factores pueden modificar esa duración, las redes digitales 3G por ejemplo

usan bastante energía, el uso constante de juegos o escuchar música también

disminuyen significativamente el período de uso efectivo de una batería. Si las

redes de tu proveedor no son muy potentes y sus señales son débiles, el

Smartphone consumirá más energía en menos tiempo.

En consideración a esto, revisa bien cuanto tiempo le toma recargarse a la batería

del equipo. Mientras menos tiempo, mejor.

La Pantalla del Smartphone

La pantalla escógela pensando siempre en el uso que le darás al

Smartphone. Navegar la red, enviar mensajes de texto, ver videos, fotografía,

como agenda personal, uso en exteriores o no.

El tamaño deberá ser aquel que te garantiza usarlo cómodamente y sin fatigas

para la vista. Si vas a ver mucho tiempo esa pantalla o sólo por breves períodos,

el tamaño importa. De igual modo, las características de contraste y back light son

muy importantes. Debes poder ajustarlas de modo que siempre sea bien visible lo

que muestra la pantalla de tu Smartphone. La resolución de las pantallas debe ser

también la máxima disponible, mejorando así la calidad de las imágenes.

La pantalla táctil es hoy también algo que debes considerar. La tecnología táctil de

las pantallas te permite usarlas como un lienzo donde puedes apuntar, escribir,

digitar, y en general manipular cualquier aspecto que en ella se proyecta, con lo

cual podrás hacer muchas nuevas cosas: usarla como teclado, interactuar con un

juego, etc. Pero no hay un sólo tipo de pantallas táctiles, las hay aquellas que

sirven sólo para apuntar en un sitio, y las que permiten una manipulación libre de

su contenido. Las últimas son las mejores, flexibles, útiles y recomendables.

Teclado del Smartphone

Page 11: Programación de dispositivos móviles UNIDAD 5

9

Un teclado debe ser lo suficientemente sencillo como para que puedas

usarlo casi intuitivamente, de lo contrario, perderás tiempo valioso. Si bien es

cierto que al comprar un nuevo Smartphone, el manual es obligatorio de ser leído

para poder sacar todo el provecho necesario de él, y con eso aprenderás a usar el

teclado, pero si se hacen necesarias combinaciones engorrosas o poco claras

para acceder a las diferentes funciones del móvil, lo más probable es que con el

tiempo no las uses, y nadie quiere un Smartphone costoso, de última tecnología,

lleno de grandes prestaciones, pero que sólo se usa para hablar con alguien al

otro lado de la línea ya que se es incapaz de recordar la secuencia necesaria de

teclas para ver una simple fotografía, compaginar una nueva cita en la agenda o

editar el nuevo video que has capturado.

Los botones además deben ser cómodos, fáciles de presionar, si es posible contar

con teclas específicas para navegación o para ejecutar ciertas funciones

relativamente frecuentes. Las teclas protuberantes suelen ser más fáciles de usar

que aquellas que están hundidas o al nivel del teclado.

Entorno Multimedia

Por entorno multimedia entenderemos el conjunto de piezas y aplicaciones

que se vinculan con el manejo de imágenes, videos, música y juegos.

Hoy es posible encontrar dentro de la oferta cada vez más amplia de Smartphone

una gama amplia de posibilidades para tomar fotografías, grabar videos, escuchar

música y por supuesto jugar aquellos juegos que te gustan.

Las cámaras hoy tienen muy buena resolución para tomar fotografías, desde los 2

MP obtienes una definición lo suficientemente buena. Para filmar videos debes

considerar los formatos de video que soporta el equipo, al igual que los fps o

cuadros por segundo con lo que graba. Es una cuestión de fluidez en la

secuencia capturada. Recuerda que muchos equipos te permiten grabar videos o

tomar fotografías hasta el máximo posible de memoria del teléfono, o de las tarjeta

de memoria que incorpora. Así que otra consideración a tomar en cuenta será la

Page 12: Programación de dispositivos móviles UNIDAD 5

10

posibilidad de usar tarjetas de memoria con el máximo posible de almacenaje. No

siempre los Smartphone soportan las tarjetas de memoria con capacidades de 16

GB o más.

Música y juegos son finalmente dos elementos que bien puedes tomar en cuenta a

momento de adquirir tu nuevo Smartphone, los hay con soporte total para juegos

ya que algunos incluso incorporan control de juego deslizable como ciertos

modelos Xperia. Otros Smartphone gracias a contar con sensores son capaces de

interactuar con el usuario por lo cual es posible que los movimientos de tus brazos

o tu cuerpo sirvan para controlar el juego.

Sensores en un Smartphone

Gracias al avance tecnológico, hoy se consiguen en el mercado teléfonos

inteligentes que incorporan diversos sensores. Gracias a ellos se e nriquece

enormemente la experiencia móvil.

Sensores de posicionamiento Global GPS o AGPS, sensores de proximidad,

acelerómetros, brújulas digitales son algunos de los más importantes ya que

interactúan con el usuario directamente o como soporte para varias aplicaciones

ya que permiten al teléfono saber dónde se está, la posición del aparato, su

orientación y el movimiento que el usuario le transmite. No poca cosa.

Características de un Tablet

Algunas de las características mas importantes que nos sirven de referencia

a la hora de seleccionar un Tablet son las siguientes:

Peso, dimensiones, diseño y calidad de sus materiales.

Tamaño de la pantalla y su capacidad de respuesta al toque, así como su

resolución y luminosidad.

Capacidad de almacenamiento y memoria RAM, tipos de conectores y puertos,

sensores específicos, la conectividad Wifi - 3G/4G a Internet o entre dispositivos

con Bluetooth, duración de la batería, etc

Page 13: Programación de dispositivos móviles UNIDAD 5

11

Los elementos que componen las funciones de sonido, tanto entrada (micrófono)

como salida (altavoces) o las de imagen con su cámara para la grabación de vídeo

y fotografía.

El procesador. Este es su motor y cerebro, se debe prestar especial atención

porque es quien determina su velocidad, rendimiento y consumo.

El Sistema Operativo. Este puede ser independiente al fabricante del dispositvo

como es el caso de Android y Windows, o por el contrario provenir del mismo

fabricante del aparato como sucede en los dispositivos Tablets de Apple y de RIM,

mas conocido como BlackBerry. Debemos saber que el tipo de Sistema Operativo

condiciona la facilidad de uso así como el número y la calidad de las aplicaciones

que tendremos disponibles para utilizarlas en nuestro dispositivo.

Características de Consolas Portátiles

Entre las principales características de las consolas portátiles se puede

destacar unas que no todas pero si la mayoría de las consolas cuentan con

algunas de las listas de estos dispositivos.

- Pantalla táctil de alta resolución con tecnología OLED

- Capacidad de conexión Wi-Fi

- Conectividad 3G

- Control sensible al movimiento con tecnología SIXAXIS (como los primero que

salieron con la PlayStation 3)

- Brújula electrónica de tres ejes

- GPS integrado

- Cámaras frontal y trasera

- Los botones, stick análogo, para tener uno de cada lado

- Servicio LiveArea y aplicación Near

Page 14: Programación de dispositivos móviles UNIDAD 5

12

- Micrófono integrado

- Bocinas estéreo

- Pantalla capacitiva multi-touch

- Su CPU es un ARM Cortex-A9 core (quad core) aproximadamente.

- Cuentan con un procesador de gráficos (GPU) SGX543MP4+

Formato de los juegos

Pequeña memoria flash diseñada especialmente para ella que contiene los juegos.

Presumiblemente en estas memorias también se podrán guardar contenidos

extras (que suponemos podrán ser descargados desde Internet), además de que

nos permitirá guardar las partidas y avances de los jugadores.

Batería

Lógicamente su duración dependerá de las exigencias del juego y de las

características de la consola que estén en marcha. Obviamente durará menos si

usamos la red 3G o el Wi-Fi. Se podría hablar de hasta 10 horas de batería,

aunque en promedio serían unas 4 o 5 horas.

LiveArea y la aplicación Near

La aplicación Near sirve para poder detectar otras consolas NGP que estén cerca

del jugador y muestra qué es lo que están jugando esos usuarios. Además, la

portátil brinda la posibilidad de chatear con ellos y compartir los puntajes en los

distintos juegos (si te preocupa la privacidad, siempre podrás desactivar esta

característica).

Características de Reproductor de Música

Son pequeños dispositivos con diversas formas, con una serie de controles

Page 15: Programación de dispositivos móviles UNIDAD 5

13

y en la mayoría de los casos una pequeña pantalla LCD para visualizar las

funciones.

Anteriormente utilizaban una batería tamaño AAA, pero actualmente se ha

integrado la batería recargable en el dispositivo.

Los formatos de música comprimida que reproducen son MP3 ("Moving Picture

Expert Group - Layer 3") y WMA ("Windows Media Audio").

Opcionalmente pueden tener una pantalla LCD a color, bocina integrada, juegos y

lectura de archivos de texto en formato TXT ("text").

Adicionalmente puede integrar una ranura para expandir la memoria, lo más

común es para una memoria digital tipo SD ("Secure Digital").

Se pueden utilizar como una memoria USB para guardar todo tipo de información,

independientemente que sea audio o no.

Características de Computadoras Portátiles

Posee un microprocesador, es el cerebro encargado de realizar todas las

operaciones aritméticas y lógicas requeridas para el proceso de los datos.

La Memoria RAM, es una memoria rápida que se encarga de almacenar de

manera temporal la información necesaria para que la computadora trabaje. Si hay

poca memoria RAM, la computadora utilizará el disco duro para simularla pero

será más lento el equipo. Actualmente se les puede instalar hasta 8 Gigabytes

(Gb) de memoria RAM.

El soporte PCMCIA, integra una ranura estándar para uso exclusivo en las

computadoras portátiles, que permite conectar una gran cantidad de dispositivos,

entre ellos lectoras de tarjetas digitales.

Page 16: Programación de dispositivos móviles UNIDAD 5

14

Asimismo, disco duro, es un dispositivo de almacenamiento magnético, en el cuál

se almacena la mayor cantidad de información de la computadora, ya que incluye

el sistema operativo.

En cuanto a la conectividad por lo menos debe tener dos puertos USB y un

FireWire, además de los que se usan para el mouse y la impresora.

La tarjeta de video, se trata de circuitería y chips especiales encargados de

acelerar los gráficos en pantalla por medio de un procesador de gráficos

denominado GPU y de memoria RAM.

El tamaño y tipo de pantalla, es la medida diagonal de la pantalla plana que

integran en pulgadas, mientras que los tipos pueden ser pantalla LCD ó pantalla

TFT integradas.

El teclado, sirve para introducir datos y para mover el puntero respectivamente.

Dependiendo del modelo del laptop puede tener integrado sistema de

reconocimiento de huella digital, cámara Web, entre otros.

Lo más recomendable es orientarnos por el uso que le daremos a la laptop y en

base a ello elegir el tipo de dispositivo.

Page 17: Programación de dispositivos móviles UNIDAD 5

15

1.2 Uso intencionado de cada tipo de dispositivo móvil

Smartphone

Es un tipo teléfono móvil construido sobre una plataforma informática móvil,

con una mayor capacidad de almacenar datos y realizar actividades, semejante a

la de una minicomputadora, y con una mayor conectividad que un teléfono móvil

convencional. El término “inteligente”, que se utiliza con fines comerciales, hace

referencia a la capacidad de usarse como un computador de bolsillo, y llega

incluso a reemplazar a una computadora personal en algunos casos.

Generalmente, los teléfonos con pantallas táctiles son los llamados “teléfonos

inteligentes”, pero el soporte completo al correo electrónico parece ser una

característica indispensable encontrada en todos los modelos existentes y

anunciados desde 2007. Casi todos los teléfonos inteligentes también permiten al

usuario instalar programas adicionales, habitualmente incluso desde terceros,

hecho que dota a estos teléfonos de muchísimas aplicaciones en diferentes

terrenos; sin embargo, algunos teléfonos son calificados como inteligentes aún

cuando no tienen esa característica.

Entre otros rasgos comunes está la función multitarea, el acceso a Internet vía Wi-

Fi o red 3G, función multimedia (cámara y reproductor de videos/mp3), a los

programas de agenda, administración de contactos, acelerómetros, GPS y

algunos programas de navegación, así como ocasionalmente la habilidad de leer

documentos de negocios en variedad de formatos como PDF y Microsoft Office.

Page 18: Programación de dispositivos móviles UNIDAD 5

16

Tablet

La Tablet para la navegación y correo electrónico cómodos

Aunque algunas Tablet tengan la opción de conectividad por redes móviles,

lo cierto es que sólo representan el 12% del total. Esto quiere decir que las

utilizamos en el ámbito doméstico o en el trabajo cerca de una conexión WiFi para

acceder a información en internet.

Las operaciones de revisar el correo, navegar por internet y comprobar nuestro

estado en redes sociales pueden realizarse con el móvil o con un portátil y

sobremesa, sin embargo, con una Tablet estas acciones son mucho más cómodas

y desenfadadas.

Por otro lado, son mucho más ligeras y nos lo podemos llevar donde queramos al

sofá, la cama, la cocina o, en algunos casos, hasta la bañera. Cuando las

aplicaciones para navegación, correo y redes sociales están bien diseñadas, el

control táctil es más intuitivo y desenfadado que en la versión web del navegador

de escritorio. Llegamos a la información que queremos con menos pasos.

La Tablet como consola (portátil)

Aunque inicialmente había mucha distancia entre los juegos para dispositivos

móviles y para consolas o PC, lo cierto es que ese abismo se está cerrando. Cada

vez encontramos juegos más completos y complejos en dispositivos móviles. Las

grandes desarrolladoras de videojuegos se están dando cuenta y están

incrementando la oferta de títulos. Otra de las ventajas es que el precio de estos

suele ser muy inferior al de las otras dos plataformas. Por último, muchos

desarrolladores independientes han volcado sus esfuerzos hacia este nuevo

panorama al ser muy abierto y contar con un gran potencial de distribución gracias

a las tiendas de aplicaciones.

Page 19: Programación de dispositivos móviles UNIDAD 5

17

La tablet como Media Center

Los tres ecosistemas móviles principales, Android, iOS y Windows, cuentan con

una oferta de contenidos digitales espectacular. Películas, libros, videojuegos y

música a raudales con facilidades de compra, promociones recurrentes y bajos

precios por el formato digital.

Esta riqueza puede trascender la pantalla de tu tablet y adquirir un componente

más social si exportamos esos contenidos al salón de casa. En este momento

transformamos nuestra Tablet en un Media Center. Para realizar ese

streaming, necesitamos buena conectividad de nuestro aparato y que nuestra

plataforma sea lo más amigable posible con los conectores universales. Sin duda,

en esta variable primero viene Android, luego Windows y finalmente iOS.

La Tablet como teléfono barato o intercomunicador

Aunque en muchas casas tengamos tarifa plana de llamadas a teléfonos fijos, no

siempre es lo mismo con móviles. En este sentido hay muchas aplicaciones que

podemos usar que nos dan llamadas gratis si tenemos conexión a internet

mediante WiFi y en algunos casos también por redes móviles.

Luego están los servicios VoIP con llamadas gratuitas entre usuarios y precios

muy inferiores a las de las operadoras en llamadas a fijo y móviles nacionales e

internacionales. Google Hangouts, Skype y Viber, especialmente, cuentan con

esta funcionalidad.

Por último, las video llamadas pueden hacerse sin necesidad de encender el

ordenador y con la ventaja de poder movernos y de utilizar dos cámaras en

algunas aplicaciones para mostrar a nuestros contactos qué estamos viendo.

La Tablet como herramienta educativa

Las Tablet pueden ser una herramienta fundamental para educar a las nuevas

generaciones. En las tiendas de aplicaciones de los distintos sistemas operativos

Page 20: Programación de dispositivos móviles UNIDAD 5

18

hay una cantidad ingente de contenidos con los que aprender. Respecto a otros

formatos tradicionales tienen la ventaja de ser interactivos y que su control es

táctil, apelando directamente a la intuición de los más pequeños.

Muchos fabricantes e instituciones educativas han unido esfuerzos en diferentes

proyectos para sacar el máximo partido a esta simbiosis.

Consolas Portátiles

Son dispositivos diseñados especialmente para jugar, como segundas

opciones se puede escuchar música y almacenar información como fotos o

archivos e incluso navegar en la Internet, se diferencian de las consolas normales

puesto que son más simples, ligeras y transportables.

Se enfoca en un publico Geek y fanáticos de los videojuegos ya que se puede

jugar a juegos y ver películas. Además, la nueva pantalla ofrece imágenes

estereoscópicas sin necesidad de gafas especiales para disfrutar del efecto 3D,

navegación web mediante la conexión WIFI. La consola también se utiliza para la

captura de imágenes en 3D gracias a dos cámaras exteriores. Incluye también una

consola virtual, la cual permite disfrutar los clásicos de los videojuegos. Aparte de

su capacidad para mostrar imágenes en 3D, también incluye juegos de realidad

aumentada y se puede disfrutar de películas en 3D. El canal deportivo de

televisión europeo Eurosport y Aardman ofrece videos y series. Puede ser un

centro multimedia ya no solo una consola las limitaciones dejaron de existir ya

puede ser mas que eso.

Reproductor de música

Es un dispositivo móvil que permite al usuario escuchar sonidos

previamente grabados.

Almacenar ficheros de música previamente codificados y que pueden ser

descodificados y reproducidos.

Page 21: Programación de dispositivos móviles UNIDAD 5

19

Actualmente, el desarrollo de estas tecnologías se encuentra en un punto de

expansión constante, principalmente centrada en los reproductores de formatos

comprimidos, y ofreciendo paralelamente otros servicios como por ejemplo vídeo,

imágenes, y otras aplicaciones integradas sobre el mismo reproductor. Incluyendo

la posibilidad de transferir información de sensores que actualmente integran para

información sobre su salud como son los pasos que da al día, distancia recorrida

etc.

Computadora portátil

Se utilizan cuándo el usuario requiere de una computadora con las mismas

capacidades de proceso que una computadora de escritorio (esto es una alta

velocidad de proceso, buena velocidad de respuesta, conectividad a las redes y

alta capacidad de almacenamiento incluyendo sus aplicaciones específicas),

también cuándo el usuario no cuenta con suficiente espacio para colocar una

computadora de escritorio en su oficina u hogar.

En viajes, recorridas de trabajo, clases, necesitamos contar con un equipo para

descargar imágenes, llevar una presentación, conectar un proyector, poner

nuestra contraseña de correo en un equipo seguro o simplemente tomar notas.

El uso de aplicaciones de escritorio comunes, como el paquete de Microsoft Office

(Word, Excel, PowerPoint), lector de PDF, navegador de Internet, Antivirus,

grabado de DVD.

Page 22: Programación de dispositivos móviles UNIDAD 5

20

1.3 Porcentaje de presencia en el mercado de cada tipo

Smartphone

En el marco de Mobile Commerce México & Central America Summit, dijo

que este año 23.3 por ciento del total de dispositivos móviles en el país será del

segmento considerado “inteligente”, en tanto que para 2013 la cifra llegaría a 34.7

por ciento, en 2014 sería de 50.3 por ciento y en 2015 se fijaría en 68 por ciento.

Destacó que el crecimiento en la penetración de este tipo de dispositivos será

impulsado por el interés cada vez mayor por parte de los usuarios en las

características técnicas de este tipo de aparatos y las alternativas de servicios que

ofrecen.

Mencionó que el perfil del usuario de smartphones se ubica en niveles

socioeconómicos altos, con un gasto entre dos mil y tres mil pesos al mes, lo que

implica alto nivel de conectividad al contar con planes de banda ancha móvil

ilimitados.

Entre las formas de recarga más usadas por los usuarios de este tipo de

dispositivos destacó la electrónica, utilizada por seis de cada 10 personas, en

tanto que por las tarjetas de prepago opta uno de cada cuatro usuarios.

Ernesto Piedras comentó que del total de smartphones existentes en el país, 40

por ciento cuenta con el sistema operativo de Blackberry, 23 por ciento Symbian,

12 por ciento iPhone, 15 por ciento Android y 10 por ciento Windows Mobile.

Los servicios de valor agregado que se pueden adquirir a través de un smartphone

son el de voz, mensajes cortos de texto, multimedia, Internet, entre otros como

video y música.

Page 23: Programación de dispositivos móviles UNIDAD 5

21

Tablet

La adopción de tablets ha ostentado un crecimiento acelerado en

comparación con otros dispositivos tecnológicos a partir de su masificación

alrededor de tres años atrás. En México, la penetración de tablets entre la

población alcanzó en la primera mitad de 2013, una densidad de cuatro

poseedores por cada 100 personas, equivalente a una base de 4.9 millones de

usuarios.

En cifras de crecimiento, la adopción de tablets sobrepasa los 53 puntos

porcentuales respecto al segundo trimestre de 2012, mostrando el elevado

dinamismo del mercado. No obstante, la penetración de tablets es aún limitada,

fundamentalmente por el precio final, el cual suele ser superior a otros dispositivos

portátiles como laptops, notebooks, etc., situación que limita el poder de compra

de usuarios en niveles socioeconómicos bajos.

Otros factores están ligados a la preferencia por computadoras personales, ya que

si bien las tablets han mostrado ser de mucha ayuda, no se han posicionado como

un sustituto de las computadoras personales, sino más bien un complemento para

la productividad.

Perfil de Usuario de Tablets

El mercado mexicano de tablets se distingue por una mayor intensidad de

adopción en usuarios con mayor poder adquisitivo y miembros de la población en

edad productiva intermedia, es decir, aquellos pertenecientes a niveles

socioeconómicos A/B, C+ y en edades entre 30 – 40 años. Este tipo de usuarios

generalmente son más intensivos en la conectividad y buscan estar a la

vanguardia tecnológica, aprovechando las ventajas de movilidad que ofrecen las

tablets.

El gasto promedio que dedican a la compra de estos dispositivos es mayor a

$5,800 pesos, aunque poco más de la mitad de los usuarios destina menos de

$6,000 pesos al momento de la compra. Por otro lado, el perfil de gasto en Tablet

Page 24: Programación de dispositivos móviles UNIDAD 5

22

revela que 1 de cada 4 usuarios gasta entre $7,001 – $10,000 pesos en el equipo,

de conformidad con el precio de mercado en Tablet de conocidos fabricantes.

Consola Portátil

Como se observa en una encuesta que realizó The Competitive Intelligence

Unit en 2013, únicamente 25% de los usuarios de videojuegos usan consolas fi jas

como medio de acceso a los contenidos. Por su parte, los teléfonos móviles son el

punto de acceso que presenta mayor preferencia, siendo usados por 31% de

losgamers. Las tablets si bien todavía no muestran ser un dispositivo popular en

términos de acceso, se espera que tengan un elevado crecimiento, ya que

muestran un uso similar a las consolas portátiles, dispositivos creados

principalmente para ese propósito.

Dispositivos de Juego

Fuente: Elaborado por The Competitive Intelligence Unit (2013)

Reproductor de Música

El proceso musical ha pasado del uso del fonógrafo al vinil, hasta llegar al

disco compacto, los MP3 y a la transmisión digital vía Internet. El año pasado

Spotify llegó a México, una aplicación que sirve para reproducir música vía

streaming. Asimismo, a finales de este año se planea el lanzamiento de la

aplicación musical de YouTube. La llegada a México de este tipo de sitios se

Page 25: Programación de dispositivos móviles UNIDAD 5

23

acompañó de malos augurios para la música grabada. Sin embargo, parece que

esto aún no afecta al escenario en nuestro país.

Primero, asomémonos y veamos cuántos mexicanos escuchamos música en

México. Aquí se muestra que siete de cada diez (69%) de los personas escuchan

música en CD’s, casetes o archivos MP3. Tres personas de cada diez no lo hacen.

La mayoría de los consumidores de música utilizan reproductores de disco

compacto (35%). Una tercera parte escucha música en un estéreo (29%) y

aproximadamente una quinta parte en reproductor MP3 o en iPod (18%). Como

puede verse en la gráfica, los reproductores de casete van de salida. Sólo 2% de

los encuestados sigue utilizándolo, y posiblemente son aquéllos nostálgicos

treintones o cuarentones que todavía escuchas sus mixtapes grabados en la

secundaria.

Page 26: Programación de dispositivos móviles UNIDAD 5

24

Computadora Portátil

De acuerdo con el estudio Monthly PC Tracker realizado por IDC México, el

mercado de las computadoras personales tuvo un crecimiento inusual del 78 por

ciento de noviembre a diciembre de 2013, así lo informa la principal firma de

inteligencia de mercado, servicios de consultoría y conferencias para los mercados

de Tecnologías de la Información y Telecomunicaciones.

IDC también asegura que el segmento de consumo tuvo buenos resultados debido

a la estacionalidad del mercado y las ventas de fin de año, las cuales favorecieron

a los equipos de escritorio con un crecimiento mensual de 31 por ciento y de 15

por ciento para las laptops.

“El principal componente de este crecimiento se deriva de la fuerte actividad

comercial en el mercado, en específico en el segmento educativo que durante este

mes se entregaron cerca de 240 mil equipos portátiles para estudiantes de 5to y

6to año de primaria en tres entidades federativas” comentó Abraham Llández,

Consultor de Dispositivos Comerciales y de Consumo para IDC México.

Con base en estos resultados, México quedó con una mezcla de producto de 35

por ciento para los equipos de escritorio y 65 por ciento para computadoras

portátiles.

Page 27: Programación de dispositivos móviles UNIDAD 5

25

2. Entornos de desarrollo de aplicaciones móviles

Symbian

Symbian OS que fue producto de la alianza de varias empresas de telefonía móvil,

entre las que se encuentran Nokia como la mas importante, Sony Ericsson,

Samsung, Siemens, Benq, Fujitsu, Lenovo, LG, Motorola esta alianza le permitió

en un momento dado ser unos de los pioneros y más usados, pero actualmente

está perdiendo vertiginosamente cuota de usuarios aceleradamente; esta por la

versión 3.

Lenguaje de Progamacion

Al igual que iOS y Android, Symbian, soporta todo tipo de aplicaciones y te permite

navegar por internet en una interfaz totalmente personalizable, sin embargo, la

falta de desarrolladores y de aplicaciones hicieron que este sistema operativo

quedara por detrás de los ya mencionados.

Un dato interesante es que para poder programar aplicaciones en Symbian no se

necesita ningún conocimiento específico de un código único para el sistema

operativo ya que se puede programar en él a partir de lenguajes como Java, C++

Visual Basic, Python, Perl, Flash Lite, y más.

IDE

Origo IDE es un entorno de desarrollo que facilita la programación de móviles

Symbian S60 3ª y 5ª edición. Consiste en una solución completa que incluye editor

de código, compilador y emulador, basándose en un sencillo lenguaje de script

que proporciona resultados similares al uso del C++ nativo de Symbian.

El lenguaje de Origo tiene muchas similitudes con Java, y toma elementos de

Page 28: Programación de dispositivos móviles UNIDAD 5

26

Python como la indentación del código. Las APIs más llamativas permiten, por

ejemplo, manipulación de cadenas o bitmaps, acceso al sistema de archivos y

comunicación HTTP. No he mirado todas las APIs a fondo, pero parece que por

ahora no hay acceso al GPS o a la cámara, por lo que puede no servirnos si

nuestro programa necesita estos elementos.

Origo IDE es otra opción más que viene a desmitificar la complejidad de la

programación en Symbian. Se puede probar antes de adquirirlo y la licencia es de

pago único, por 2.750 euros es posible crear y distribuir todas las aplicaciones que

queramos. Si no eres desarrollador, te pueden interesar las demos creadas con

Origo para el Nokia 5800 XpressMusic, algunas, en tan sólo unas pocas horas.

Windows Phone

Windows Phone, anteriormente llamado Windows Mobile es un S.O. móvil

compacto desarrollado por Microsoft, se basa en el núcleo del sistema operativo

Windows CE y cuenta con un conjunto de aplicaciones básicas, actualmente va

por la versión 7. Está diseñado para ser similar a las versiones de escritorio de

Windows estéticamente y existe una gran oferta de software de terceros disponible

para Windows Mobile, la cual se puede adquirir a través de la tienda en línea

Windows Marketplace for Mobile

El Lenguaje de Programación

La plataforma Windows Phone soporta los lenguajes de programación C# y Visual

Basic .NET. Esto se debe a que ambos son entendidos por el Framework .NET.

Por la parte de diseño se utiliza el lenguaje Silverlight también conocido como

XAML. En el caso de las aplicaciones de tipo video juegos, utilizan XNA para

generar gráficas de tipo 2D y 3D e igualmente pueden hacer uso de Silverlight al

Page 29: Programación de dispositivos móviles UNIDAD 5

27

mismo tiempo.

IDE

Para programar nuestro código, se necesita del ambiente de desarrollo Visual

Studio 2010 Service Pack 1 en cualquiera de sus versiones, de igual forma puede

descargar la versión Visual Studio Express la cual es totalmente gratuita. Antes de

continuar instalando más herramientas, asegúrese que todo esté actualizado

debidamente. Si posee un Visual Studio que no es la versión Express, debe de

instalar el Windows Phone SDK 7.1 (se recomienda descargar el archivo formato

.ISO para que tenga un respaldo del programa) para tener APIs y otras

herramientas. Seguidamente revise que todas las herramientas estén actualizadas

antes de instalar el Windows Phone SDK 7.1.1. Finalmente, para expandir las

herramientas del SDK, instale el Silverlight Toolkit. A continuación la lista de

vínculos donde podrá encontrar todas las herramientas mencionadas

anteriormente.

Blackberry OS

Blackberry OS desarrollado por la empresa canadiense RIM (Research In Motion)

para sus dispositivos. El sistema permite multitarea y tiene soporte para diferentes

métodos exclusivos de RIM particularmente me refiero a sus trackwheel, trackball,

touchpad y pantallas táctiles.

Lenguaje de Programación

El lenguaje uti lizado para móviles es Java, mientras que para Tablet OS, el

lenguaje es C/C++.Aunque el entorno de desarrollo en comparación con otros

Page 30: Programación de dispositivos móviles UNIDAD 5

28

como el Eclipse resulta muy pobre, la publicación de aplicaciones es gratuita y la

documentación es muy útil. Al igual que para iOS, hacen un análisis de calidad

antes de su publicación en el App World. Los simuladores pueden instalarse

únicamente en Windows.

Respecto a los simuladores, se dispone de varios por dispositivo, ya que del

mismo modelo existen varios según el operador.

IDE

BlackBerry Java Development Environment es un entorno completamente

integrado de desarrollo y simulación para crear BlackBerry® Java Application para

dispositivos BlackBerry. Gracias a BlackBerry JDE, los desarrolladores pueden

crear aplicaciones con el lenguaje de programación Java® ME y las API

extendidas de Java para BlackBerry.

BlackBerry Java Development Environment incluye las siguientes herramientas de

desarrollo:

• BlackBerry Integrated Development Environment

• BlackBerry Smartphone Simulator

• Java ME y API de BlackBerry

• Aplicaciones de ejemplo

BlackBerry IDE incluye una serie completa de herramientas de edición y

depuración que se han optimizado para el desarrollo de BlackBerry Java

Application. BlackBerry Smartphone Simulator ofrece un entorno tipo Windows®

completo y está diseñado para simular interfaces de usuario y la interacción del

usuario, conexiones de red, servicios de correo electrónico y sincronización

inalámbrica de datos.

Page 31: Programación de dispositivos móviles UNIDAD 5

29

iOS

iOS de los iPhones, anteriormente denominado iPhone OS creado por Apple

originalmente para el iPhone, siendo después usado en el iPod Touch e iPad. Es

un derivado de Mac OS X, se lanzo en el año 2007, aumento el interés con el iPod

Touch e iPad que son dispositivos con las capacidades multimedia del iPhone

pero sin la capacidad de hacer llamadas telefónicas, en si su principal revolución

es una combinación casi perfecta entre hardware y software, el manejo de la

pantalla multitactil que no podía ser superada por la competencia hasta el

lanzamiento del celular Galaxy S I y II por parte de Samsung, personalmente

puedo decir que el manejo multitactil del sistema operativo es de lo mejor.

Lenguaje de Programación

Swift

Es un nuevo lenguaje de programación innovadora para Cocoa y Cocoa

Touch. Escribir código es interactivo y divertido, la sintaxis es concisa pero

expresiva, y aplicaciones de gestión la velocidad del rayo. Swift está listo para su

próxima iOS y OS X proyecto - o para la adición en su aplicación actual - ya que el

código Swift de lado a lado trabaja con Objective-C.

Swift es el resultado de las últimas investigaciones sobre los lenguajes de

programación, junto con décadas de experiencia en la construcción de plataformas

de Apple. Los parámetros con nombre que hubiera pendientes de Objective-C se

expresan en una sintaxis limpia que hace API en Swift aún más fácil de leer y

mantener.

Page 32: Programación de dispositivos móviles UNIDAD 5

30

IDE

Xcode

Introduce una forma radicalmente nueva de diseñar y construir software. Swift es

un nuevo lenguaje de programación innovadora para Cocoa y Cocoa Touch y,

cuando se combina con herramientas Xcode, hace que la programación de una

experiencia deliciosamente vivo. Esta misma experiencia en vivo permea en toda

Xcode. prestación Vivir dentro de Interface Builder muestra el código de la interfaz

de usuario escrito a mano en el lienzo de diseño, lo que refleja instantáneamente

los cambios que se escriben en el código. Y la nueva vista depurador explota

todas las capas de la interfaz de usuario en una visualización en 3D, por lo que es

fácil de entender cómo se compone su interfaz, e identificar puntos de vista

superpuestos o recorte.

Android

El sistema operativo Android es sin duda el lider del mercado movil en S.O, está

basado en Linux diseñado originalmente para dispositivos móviles como los

teléfonos inteligentes pero después tuvo modificación para ser usado en tablets

como es el caso del Galaxy Tab de Samsung , actualmente se encuentra en

desarrollo para usarse en netbooks y PCs, el desarrollador de este S.O. es

Google, fue anunciado en el 2007 y liberado en el 2008; además de la creación de

la Open Handset Alliance, compuesto por 78 compañías de hardware, software y

telecomunicaciones dedicadas al desarrollo de estándares abiertos para celulares,

esto le ha ayudado mucho a Google a masificar el S.O, hasta el punto de ser

usado por empresas como HTC, LG, Samsung, Motorola entre otros.

Page 33: Programación de dispositivos móviles UNIDAD 5

31

Lenguaje de Progamacion

El sistema operativo de Google. Utiliza Java para la programación de aplicaciones

y C para la programación de librerías. Actualmente cuesta 25$ (un único pago).

Puede instalarse el sdk y paquetes adicionales para los IDEs en los sistemas

operativos más utilizados.

Existe un único emulador (lo van actualizando), de manera que podrás probar si

funciona para la última versión, aunque es recomendable probar la aplicación en

un dispositivo real para comprobar su funcionamiento y evitar el uso innecesario

de recursos.

Se necesita cierta habilidad en algún lenguaje de programación moderno,

orientado a objetos idealmente Java aunque puede saberse C#, C++, Visual Basic

o algo que tenga de alguna manera el espíritu de un lenguaje actual.

IDE

Android Studio

Es un entorno de programación parecido al de Eclipse. Se necesita descargar el

SDK para poder correrlo. Esto es fácil de hacer porque la herramienta da las

facilidades para ello. Cabe decir, sin embargo, que Android Studio está en fase

Developer Preview, por lo cual podría haber partes sin terminar o bugs evidentes,

aunque en la práctica parece que se comporta bastante bien.

Page 34: Programación de dispositivos móviles UNIDAD 5

32

2.1 Características

Symbian

Symbian posee ciertas características que influyen de manera determinante en el

desarrollo de aplicaciones, ellas son:

Posee un eficiente uso de todos los recursos de la máquina (especialmente de la

batería, la memoria RAM y la ROM).

Está basado en un micro kernel, es decir, una mínima porción del sistema tiene

privilegios de kernel, el resto se ejecuta con privilegios de usuario, en modo de

servidores.

Cada aplicación corre en sus propios procesos y tiene acceso solo a su propio

espacio de memoria. Esto permite que las aplicaciones para Symbian sean

orientadas a "single threads" y no múltiples.

El sistema posee componentes que permiten el diseño de aplicaciones

multiplataforma, o sea, diferentes tamaños de pantalla, color, resolución, teclados,

etc. La mayoría de estos componentes han sido diseñados en C++.

Adaptabilidad al hardware específico y a las pilas de telefonía de los fabricantes.

Acceso inmediato a los datos.

Manejo fiable de los datos, incluso en caso de fallo en la comunicación o falta de

recursos, como memoria, disco o batería.

Consistencia en la comunicación entre los datos propios del dispositivo y otros.

Permite la conectividad con diferentes dispositivos a través de Bluetooth.

Windows Phone

Las principales características de Windows Phone son:

Sencillez a la hora de programar el dispositivo, gracias los frameworks de

desarrollo Silverlight y XNA.

Interacción nativa con la Suite Ofimática Microsoft Office.

Interacción con la plataforma de juegos Xbox Live de Microsoft.

Page 35: Programación de dispositivos móviles UNIDAD 5

33

Disponen de una versión diferente de Sistema Operativo adaptada a cada

necesidad, según el dispositivo móvil.

La versión SmartPhone para dispositivos sin pantalla táctil.

Pocket PC, para PDAs.

Windows Mobile 5 para teléfonos y PDAs.

Windows Mobile 6 para teléfonos y PDAs.

Windows Mobile 6.5 para teléfonos y PDAs.

Windows Phone 7 para teléfonos y PDAs.

Windows Phone 8 para teléfonos.

BlackBerry OS

El SO BlackBerry está claramente orientado a su uso profesional como gestor de

correo electrónico y agenda. Desde la cuarta versión se puede sincronizar el

dispositivo con el correo electrónico, el calendario, tareas, notas y contactos de

Microsoft Exchange Server además es compatible también con Lotus Notes y

Novell GroupWise.

BlackBerry Enterprise Server (BES) proporciona el acceso y organización del

email a grandes compañías identificando a cada usuario con un único BlackBerry

PIN. Los usuarios más pequeños cuentan con el software BlackBerry Internet

Service, programa más sencillo que proporciona acceso a Internet y a correo

POP3 / IMAP / Outlook Web Access sin tener que usar BES.

Al igual que en el SO Symbian desarrolladores independientes también pueden

crear programas para BlackBerry pero en el caso de querer tener acceso a ciertas

funcionalidades restringidas necesitan ser firmados digitalmente para poder ser

asociados a una cuenta de desarrollador de RIM.

IOS

Recoge las mejores características de C y Objective-C como tipos, control de flujo

u operadores e incluye algunas características enfocadas a la programación

Page 36: Programación de dispositivos móviles UNIDAD 5

34

orientada a objetos como las clases y los protocolos así como otras características

para hacer del código algo más expresivo:

Cierres unificadas con punteros de función.

Múltiples valores de retorno.

Iteración rápida y concisa sobre un rango o una colección.

Estructuras que soportan métodos, extensiones y protocolos.

Patrones de programación como mapas o filtros.

Etc...

Android

Código abierto.

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 WebKit 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 videollamadas.

Multitarea real de aplicaciones.

Page 37: Programación de dispositivos móviles UNIDAD 5

35

2.2 Ventajas de cada entorno

Symbian

Symbian ha sido siempre fiable e innovador. Con fuerte énfasis en las funciones

básicas de telefonía y multimedia de sus dispositivos, también cuenta con un

amplio mercado de aplicaciones externas y con una tremenda variedad de

dispositivos disponibles.

Se trata de una excelente opción para conseguir terminales de gama media y baja,

debido a su fiabilidad, una cantidad razonable de buenas aplicaciones,

posibilidades multimedia y al precio asequible de muchos de sus modelos.

Windows Phone

Un diseño moderno, práctico, atractivo y con características innovadoras han

sorprendido ya a más de uno. Windows Phone cuenta con una gran inversión y se

ha diseñado para competir con los más grandes: el resultado es un sistema

moderno y capaz.

BlackBerry OS

Perfecto para el uso de correo electrónico, Blackberry destaca también por los

aspectos de seguridad y por sus teclados QWERTY que, al estilo de un teclado de

PC, permiten una escritura muy rápida.

Rendimiento. Al no estar basado en Java y su maquina virtual, el acceso a los

recursos es directo.

Consumo de Recursos. De la misma manera, al no tener que utilizar una maquina

virtual, se pruebe aprovechar mejor los recursos bajando el consumo de estos.

Experiencia de Usuario. La interfaz ha sido desarrollada específicamente para ser

amigable, fácil de usar y agradable a la vista. Y vaya que RIM se ha tomado muy

en serio este apartado.

Page 38: Programación de dispositivos móviles UNIDAD 5

36

Compatibilidad. Blackberry OS ha sido preparado para tener compatibilidad con la

inmensa mayoría (si no todas) de las aplicaciones disponibles en la AppWorld.

IOS

Algunos aspectos positivos según el punto de vista:

Buen diseño,Funcionalidad, Facilidad de uso y Variedad de aplicaciones y juegos

Su perfecta integración con servicios en la nube y equipos de sobremesa,

especialmente Mac, es otro de sus puntos fuertes. Tu correo, tus redes sociales…

podrás estar siempre conectado.

Android

El código de Android es abierto (open source); gracias a esto cualquier persona

puede realizar una aplicación, lo que permite que gracias a su sistema nazcan

miles de aplicaciones disponibles para teléfonos, gran parte de ellas gratuitas.

Android da completa libertad al propietario de un terminal a instalar lo que le venga

en gana, sea desde Android Market como un ejecutable aparte (apk) no limitando

la libertad del usuario ni imponiendo software propietario para poder instalar

música, archivos, documentos directamente desde el cable USB.

Al ser abierto y libre, Android es completamente personalizable tanto por usuarios

instalando fondos de pantalla, animaciones, widgets, skins o temas como para

fabricantes con la posibilidad de crear sus propias capas como MotoBlu o HTC

Sense permitiendo a unos y a otros poder customizar o personalizar sus teléfonos

de la mejor manera posible y dando a elegir al usuario la interfaz más adecuada

para su gusto evitando imponer un determinado estilo o interfaz.

Android tiene sistema de multitarea inteligente, capaz de gestionar varias

aplicaciones abiertas a la vez dejando en suspensión aquellas que no se utilicen y

cerrarlas en caso de resultar ya inútiles para evitar un consumo de memoria.

Otra de las características es el acceso a las tiendas de apps.

Page 39: Programación de dispositivos móviles UNIDAD 5

37

2.3 Desventajas de cada entorno

Symbian

Symbian ha perdido protagonismo con la llegada de iPhone y Android, sobre todo

en los smartphones punteros. Hay muchas y muy buenas aplicaciones para

Symbian, pero no se puede comparar con la cantidad de oferta.

Windows Phone

La variedad de móviles con Windows Phone no es tan amplia como la que ofrecen

Android o Symbian, aunque está en crecimiento.

Por otra parte, al llegar algo más tarde a la primera división del firmamento móvil,

la cantidad de aplicaciones disponibles en estos momentos es baja, aunque están

facilitando el trabajo a los desarrolladores para llenar el hueco rápidamente.

BlackBerry OS

No se puede comparar su tienda de aplicaciones con las de Android o

iTunes. Tampoco existen tantas posibilidades de elección en cuanto a dispositivos

y el potencial multimedia no es su fuerte principal.

Faltan softwares más dedicados para profesiones y tareas específicas.

Se supone que además tendrá soporte para aplicaciones de Android, pero esa

opción todavía no ha sido implementada.

Los Bugs son muy grandes y un número muy limitado de aplicaciones también

pusieron freno a nuestra satisfacción.

La falta de un cliente de correo nativo es triste, y los problemas al sincronizar con

nuestro móvil BlackBerry fueron muy difíciles de funcionar.

El soporte técnico de RIM no sabe como ayudar cuando algun móvil simplemente

no sincroniza con Bridge, y en algunas opciones se bloqueaba hasta el punto que

para utilizar el tablet había que reiniciarlo.

Page 40: Programación de dispositivos móviles UNIDAD 5

38

iOS

El emulador de iOS falla al dar una representación exacta de un disposi tivo iOS.

El sistema de Apple es cerrado, por lo que hay menos posibilidades de cambiar la

forma de funcionar del teléfono y un control más rígido de las aplicaciones

publicadas. Además, si quieres disfrutar de un iPhone, sólo te queda desembolsar

un precio bastante alto puesto que sólo hay un fabricante y un modelo.

El desarrollo de aplicaciones no es del todo económico ya que hay que tener una

cuenta y pagar por ella para poder tener acceso ala tienda y publicar tu

aplicación.

Además las aplicaciones de iOS solo se desarrollan en plataformas Mac OSX es

por eso que si deseas desarrollas aplicaciones para este sistemas se tiene que

desembolsar bastante dinero.

Android

El emulador de Android es una máquina virtual efectiva corriendo con una CPU

virtualizada y memoria limitada, de forma que la simulación es mucho más realista

que lo que ofrece el simulador de iOS. A pesar de ello, es altamente

recomendable utilizar dispositivos físicos reales a la hora de desarrollar.

Un proyecto Android es muy rígido. Hay muchísima nomenclatura que respetar

tanto en ficheros como en carpetas, recursos… De esta forma, todo queda bien

estructurado, especialmente para un correcto soporte en tanta cantidad de

recursos diferentes que podemos encontrar (por ejemplo en resoluciones de

pantalla).

También tenemos que tener en cuenta parte de la recolección de basura, aunque

a priori no lo pueda parecer. Pero el uso de imágenes grandes, demasiadas

vistas… nos lanzará el fatídico mensaje OutOfMemoryError al que tanto miedo

tienen los desarrolladores de Android.

Page 41: Programación de dispositivos móviles UNIDAD 5

39

3. Desarrollo de aplicaciones para dispositivos móviles

Android por su presencia en el mercado, e iOS porque es donde realmente parece

estar el dinero. Ese sería un buen resumen de las tendencias en desarrollo de

aplicaciones móviles en los últimos meses y años, pero por detrás hay muchos

más datos de interés.

Ya que mediante este nuevo tipo de aplicaciones se ha generado un campo

bastante amplio de oportunidades para muchos programadores no solo empresas

sino independeintes dando oportunidad a mucha gente crear sus aplicaciones

desde 0 si saber nada de programación con las nuevas herramientas que se

pueden encontrar hoy en dia.

Es por eso que el desarrollo de aplicaciones para dispositivos móviles es algo que

esta teniendo mucho auge en este momento y seguirá siendo algo del que no

podemos dejar de hablar.

Page 42: Programación de dispositivos móviles UNIDAD 5

40

3.1 Protocolos relacionados (de red, de interfaces, etc.)

La nomenclatura de las generaciones inalámbricas celulares (G) en general se

refiere a un cambio en la naturaleza fundamental del servicio, tecnología de

transmisión compatible pero no en sentido reverso, y nuevas bandas de

frecuencia. Han aparecido nuevas generaciones aproximadamente cada diez años

desde el primer paso en 1981 de transmisión analógica (1G) a digital (2G) en

1992. Esto fue seguido, en 2001, por soporte 3G multimedia, transmisión en

espectro distribuido y throughputs máximos de 200 kbit/s; y en 2011 por la 4G, que

se refiere a redes conmutadas totalmente IP, acceso a ultra banda ancha móvil

(velocidad en gigabits) y transmisión multi-portadora.

1G

Primera generación se refiere a los primeros “teléfonos ladrillo” y “teléfonos bolsa”

analógicos introducidos para tecnología celular móvil. Los teléfonos celulares

comenzaron con 1G y representan los estándares de tecnología inalámbrica

analógica de primera generación que se originaron en la década de 1980. La 1G

fue reemplazada por estándares inalámbricos digitales de 2G.

2G

2G significa tecnología digital inalámbrica de segunda generación. Las redes de

2G totalmente digitales reemplazaron a la 1G analógica, que se originó en la

década de 1980. Las redes de 2G comenzaron a existir a nivel comercial en el

estándar Global System for Mobile Communications (Sistema Global para

Comunicaciones Móviles), o GSM. La 2G en estándares GSM fue utilizada por

primera vez en la práctica comercial en 1991 por Radiolinja, un operador GSM

finlandés fundado el 19 de septiembre de 1988. En la actualidad, Radiolinja es

parte de Elisa, conocida en la década de 1990 como la Helsinki Telephone

Company.

Page 43: Programación de dispositivos móviles UNIDAD 5

41

Además del protocolo GSM, la 2G también utiliza diversos protocolos digitales

adicionales, entre ellos CDMA, TDMA, iDEN y PDC. GSM está basada en TDMA.

2.5G

La tecnología inalámbrica de 2.5G es un peldaño en el camino que unió la

tecnología inalámbrica de 2G con la de 3G, y a veces se la utiliza para describir a

las tecnologías evolucionadas que en un principio fueron consideradas de 2G.

Mientras que 2G y 3G fueron definidas oficialmente como estándares inalámbricos

por la Unión Internacional de las Telecomunicaciones (UIT), 2.5G no fue definida y

se creó únicamente con un objetivo comercial.

Como paso intermedio desde la 2G, la 2.5G ha visto algunos de los avances

inherentes a las redes de 3G (incluidos los sistemas conmutados por paquetes).

La evolución de 2G a 3G dio paso a transmisión de datos más veloz y de mayor

capacidad. Algunas de las tecnologías que se consideraron como el paso

evolutivo a la 3G son EDGE (parte la familia de GSM) y CDMA 2000 1X, que en

ocasiones se denominan “3G”, ya que ambas cumplen algunos de los requisitos

de la UIT para los estándares de 3G.

3G

3G es la tercera generación de estándares y tecnología de teléfonos móviles de

tercera generación. La 3G sustituye a la tecnología de 2G y precede a la de 4G.

Los sistemas de 3G actuales fueron establecidos mediante el proyecto de la UIT

sobre Telecomunicaciones Móviles Internacionales 2000 (IMT-2000).

Las tecnologías de 3G habilitaron mayores velocidades de transmisión de datos,

mayor capacidad de las redes y más servicios de red avanzados. En ma yo de

2001, NTTDoCoMo (de Japón), lanzó la primera red de 3G pre-comercial – bajo la

Page 44: Programación de dispositivos móviles UNIDAD 5

42

marca FOMA. Luego del primer lanzamiento pre-comercial, NTT DoCoMo

nuevamente hizo historia el 1° de octubre de 2001 con el primer lanzamiento

comercial de 3G en Japón.

UMTS-HSPA es la tecnología de 3G líder del mundo. Para 2015, se espera que

las tecnologías de 3G UMTS-HSPA y LTE representen 3,9 mil millones de

suscripciones globales, comparadas con 569 millones de suscripciones CDMA EV-

DO y 59 millones de suscripciones WiMAX.

3.5G

De manera similar a lo que ocurre con la sigla 2.5G, la 3.5G no es un estándar

reconocido oficialmente por la UIT. Se trata de un paso interino o evolutivo a la

próxima generación de tecnología celular que será conocido como IMT-Advanced

según las definiciones de la UIT. IMT-Advanced será la cuarta generación de

tecnología celular. La sigla 3.5G es también conocida como “posterior a 3G” (en

inglés, “beyond 3G”). 4G Americas no emplea los términos 3.5G (o 2.5G) respecto

de las definiciones oficiales provistas por la UIT. Las tecnologías que están dentro

de la familia de tecnologías GSM y se consideran posteriores a la 3G incluyen a

HSPA+ y LTE. Estas tecnologías de 3.5G a menudo también se denominan “pre-

4G”.

4G

4G es el término empleado para referirse a la cuarta generación de servicios

inalámbricos móviles que definió la UIT y su Sector de Radiocomunicaciones (ITU-

R) y estableció como definición acordada y aceptada globalmente en IMT-

Advanced.

La UIT desarrolló requisitos para una tecnología a considerarse IMT-Advanced,

que es la tecnología inalámbrica de próxima generación. Un sistema celular IMT-

Page 45: Programación de dispositivos móviles UNIDAD 5

43

Advanced debe cumplir los siguientes requisitos:

Estar basado en una red totalmente IP conmutada por paquetes

Proveer tasas de datos máximas de hasta aproximadamente 100 Mbit/s para alta

movilidad, como en el acceso móvil, y hasta aproximadamente 1 Gbps para baja

movilidad, como en el acceso nómade / local inalámbrico, según los requisitos de

la UIT.

Compartir dinámicamente y utilizar los recursos de red para dar soporte a más

usuarios simultáneos por celda

Ancho de banda de canal escalable 5–20 MHz, opcionalmente hasta 40 MHz

Eficiencia espectral máxima de 15 bit/s/Hz en el enlace descendente y de 6.75

bit/s/Hz en el enlace ascendente (lo que significa que debe ser posible lograr 1

Gbps en el enlace descendente en menos de 67 MHz de ancho de banda)

Eficiencia espectral del sistema de hasta 3 bit/s/Hz/celda en el enlace

descendente y 2.25 bit/s/Hz/celda para uso en interiores

Traspasos suaves entre redes heterogéneas

Capacidad de ofrecer alta calidad de servicio para soporte multimedia de próxima

generación

En la versión Release 10, el Proyecto de Asociación para la Tercera Generación

(3GPP) abordó los requisitos de IMT-Advanced en una versión de LTE

denominada LTE-Advanced, para la cual en 2011 comenzó a haber

especificaciones disponibles. WiMAX abordaba los requisitos de IMT-Advanced en

una versión llamada Mobile WiMAX 2.0, especificada en IEEE 802.16m. Tal familia

de 4G, en cumplimiento con los requisitos definidos para aceptación en este

proceso de la UIT, se reconoce globalmente como una familia que puede crecer

para incluir todos los aspectos de un mercado con arribo posterior al año 2010,

complementando y desarrollando un ecosistema de 3G en proceso de ampliación

y madurez.

En septiembre de 2009, se presentaron propuestas tecnológicas a la Unión

Internacional de las Telecomunicaciones (UIT) como candidatas a 4G.

Básicamente, las propuestas se basaban en dos tecnologías:

Page 46: Programación de dispositivos móviles UNIDAD 5

44

• LTE-Advanced estandarizada por el 3GPP

• 802.16m estandarizada por el IEEE (es decir, WiMAX móvil)

Las implementaciones actuales de LTE y WiMAX a menudo se denominan en el

mercado como “4G”, aunque no cumplen totalmente con los requisitos planificados

de 1 Gbps para recepción estacionaria y 100 Mbps para recepción móvil. El

argumento que se invoca comúnmente para decir que los sistemas LTE y WiMAX

son “4G” es que utilizan distintas bandas de frecuencia que las tecnologías de 3G;

que están basados en un nuevo paradigma de interfaz de radio; y que los

estándares no son compatibles en sentido reverso con 3G, mientras que algunos

de los estándares se prevé que serán compatibles hacia adelante con tecnologías

4G “reales”.

Page 47: Programación de dispositivos móviles UNIDAD 5

45

3.2 Hardware y Software mínimo

Hardware

Pantalla.

Te gusten o no los teléfonos grandes, la tendencia esta en dispositivos con

pantallas cada vez más amplias, esto significa que tener un smartphone con una

pantalla inferior a 4 pulgadas pueda parecer a ojos de mercado estar obsoleto.

Además cada vez existen más aplicaciones en formato HD que obviamente lucen

mejor en una pantalla grande.

Multitactil / Multitouch

Prácticamente todos los dispositivos que hay actualmente en el mercado son

multitouch esto significa que son capaces de evaluar cuantos dedos están tocando

simultáneamente la pantalla. Esto es necesario para poder desplazar objetos en

pantalla o para activar el zoom. Hay teléfonos que son capaces de controlar hasta

10 puntos simultáneos, pero para ser sincero con el tipo de software que se está

desarrollando actualmente opino con tres puntos es suficiente.

Amoled / TFT / LCD / S-LCD / Bravia

Aquí dependerá muy y mucho en que condiciones de luz vamos a utilizar nuestro

smartphone. Con esto quiero decir que para utilizar el teléfono mayormente en

casa o en la oficina con una pantallita LCD estándar tendremos suficiente. Por el

contrario si tu trabajo es en condiciones de luz extrema, como por ejemplo ser

socorrista en una playa, necesitarás tener una pantalla más evolucionada como

por ejemplo las Super Amoled.

Page 48: Programación de dispositivos móviles UNIDAD 5

46

Procesador

Bueno esto es como todo, contra más mejor. Pero sinceramente, en muchas

ocasiones un procesador con doble núcleo está desaprovechado. De hecho con

cualquier procesador que tenga una velocidad de 650 MHz podremos abrir y

utilizar cualquier aplicación de un modo relativamente rápido. Otra cuestión es el

consumo eléctrico y es que aunque pueda parecer que un procesador de 1 GHz

haya de consumir más que uno de 850 MHz, la verdad es que no es así. En

general cuanto más nuevo es el procesador menor consumo eléctrico tiene y por

ende la batería durará más.

Ram

Este tema es un tanto peliagudo. Mucha gente asegura que los terminales han de

tener como mínimo 1 Gb de RAM. Pero a los hechos me remito, hay muchos

teléfonos de gama alta como por ejemplo el Sony Xperia ARC que tan sólo tienen

512 Mb y van, muy pero que muy bien. Por mi experiencia con terminales Android

os diré que recomiendo un mínimo de 512 Mb aunque he de reconocer que con 1

Gb mejora muchísimo el rendimiento. De todos modos los pequeños lags que

podamos tener con 512 Mb, se pueden solucionar cerrando correctamente

aplicaciones con un Task killer.

Menos de 512 Mb no, porque si tenemos en cuenta que el sistema operativo ya

ocupa un mínimo de 60 Mb (depende de la versión) y luego siempre tenemos

abiertas aplicaciones como Whatsapp, Dropbox, Google Talk, etc, etc, cuando nos

damos cuenta nos quedan muy pocas megabites para abrir y gestionar otras

aplicaciones.

Memoria interna

En el mercado encontrarás muchos terminales que tienen una ROM de 512 Mb y

que luego te venden la moto diciendo que puedes ampliar memoria con una

Page 49: Programación de dispositivos móviles UNIDAD 5

47

microSD que puede llegar hasta 32 Gb. Aquí tienes que tener siempre en cuenta

que el sistema operativo ocupa unas 200 Mb (depende de la versión), lo cual si

sólo tienes 512 Mb ya sin instalar nada más te has quedado casi sin la mitad de

memoria. Si además instalas cuatro o cinco programas y haces unas cuantas fotos

no tardaras mucho en ver el mensajito de “espacio insuficiente”.

Si que es verdad que tienes la opción de guardar las fotos, los videos, los mp3, etc

en la SD y que puedes instalar las aplicaciones en la SD. Perohas de tener en

cuenta que no todas las aplicaciones se pueden pasar a la SD, (sobre todo si

utilizas algunas versiones de android Froyo o anteriores). Además hay

aplicaciones que aunque están en la SD guardan ficheros de configuración y

cachéen la ROM. Concluyendo… Si vas a estrenar teléfono, que por lo menos

tenga 4Gb y si además puedes ponerle adicionalmente una microSD, pues mejor

que mejor.

Cámara de fotos

Otro tema un tanto controvertido, en mi opinión si la óptica de la cámara es buena,

con una cámara de 3 Mpx es suficiente, pero claro como no suele ser común

encontrar buenas ópticas en los móviles y aquí no estamos concretando sobre

ningún modelo de terminal, me voy a inclinar a decir que deberíamos de tener una

resolución mínima de 5 Mpx.

Mas cosas, no es estrictamente necesario, pero se agradece y mucho que el

teléfono tenga un flashled que acompañe a la cámara.

Sobre la cámara frontal: con sinceridad, opino que cualquier camarita aunque

tenga una resolución VGA es suficiente para hacer videoconferencia. Además

tenéis que tener en cuenta que a mayor resolución es necesario un mejor

procesador.

Page 50: Programación de dispositivos móviles UNIDAD 5

48

Batería

Sobre este tema tenéis que tener en cuenta que por muy buena que sea la

batería, nunca es suficiente. Os puedo asegurar que no hay ni un solo smartphone

en el mercado que llegue al aprobado en este tema.

Por lo general os puedo decir que una batería de 1500 mAh a mi no me suele

durar (sin hacer un uso muy extenso del dispositivo) más allá de 10 horas. Es por

ello que suelo llevar encima otras dos baterías adicionales.

Parece absurdo pero si tienes un teléfono con una pantalla super Amoled, no

puedes disfrutar de ella “a todo color” (me refiero con su mejor brillo) puesto que la

pantalla consume la batería exageradamente.

Versión de Android

No es lo más importante, puesto que la mayoría de teléfonos se pueden actualizar

bien vía actualización ofrecida por e l fabricante o mediante una ROM no oficial. De

todos modos hay que tener en cuenta que hay muchos programas que para su

funcionamiento requieren una versión de Android 2.2 o superior. Sírvase esta

información para determinar la versión mínima aconsejada.

Conectividad

Muy bueno lo del USB 3.0 pero sinceramente, esto no es un iPhone o un Nokia

con Symbian, nosotros no necesitamos estar conectados físicamente para

sincronizar nuestro equipo.

Bluetooth, bueno, lo cierto es que casi todos tienen el mismo estándar, pero

personalmente he de reconocer que este tipo de comunicación no lo uso en

absoluto.

3G o 2G, en mi opinión es estrictamente necesario que el teléfono tenga 3G

puesto que cada vez los datos que se cargan y descargan de Internet son

mayores y requieren más velocidad.

Page 51: Programación de dispositivos móviles UNIDAD 5

49

Bueno, hay muchos otros aspectos importantes a la hora de elegir un dispositivo

Android, pero estos, a mi parecer, son los más importantes. Espero que esta

redacción os pueda ser de ayuda a la hora de hacer vuestra próxima adquisición.

Software

Jelly Bean es la versión de Android más usada, destronando a la versión que ha

sido durante casi dos años la versión más usada.

Ahora el 37,9% de dispositivos Android llevan en su interior alguna de las

versiones de Jelly Bean. En concreto el 32,3% llevan Android 4.1 (Jelly Bean) y el

5,6% la versión 4.2 (Jelly Bean). A pesar de llevar distinta numeración se

consideran la misma versión porque los cambios son muy pequeños y no

presentan realmente una fragmentación. Android 4.1 es la versión que más está

creciendo actualmente.

more

¿Que tiene que ver la versión de sistema de un Smartphone con el hardware?

Demasiado ya que siendo Jelly Bean el SO mas utilizado en Smatphone quiere

decir que la mayor parte de las aplicaciones son desarrolladas pensadas en este

Page 52: Programación de dispositivos móviles UNIDAD 5

50

sistema y su soporte esta dirigido a este sistema es por eso que el escoger un

celular con este sistema te da un plus ya que puede darte muchas mas

aplicaciones que otros sistemas ya sea mas nuevos o mas viejos.

Page 53: Programación de dispositivos móviles UNIDAD 5

51

3.3 Manejo de Audio y Animaciones

Manejo de Audio

Estos son la música y los efectos de sonido en un juego, que aunque parezca

mentira, para que uno se concentre, preste una real atención a un juego y

ademas no aburra, son un factor fundamental. Quien no recuerda la musica y

efecto de sonidos de juegos como PacMan, Mario Bros. y demás juegos

legendarios? Por este motivo, ahora vamos a ver un poco como manejar y

agregarlos a nuestro juego con las herramientas que nos brinda AndEngine.

Algunas cosas que vamos a tener, que tener en cuenta

Bueno una de las principales cosas que debemos tener en cuenta, es que tipo de

archivos de sonido soporta Android, los agregaría aquí, pero para que la lista no

esté desactualizada, les dejo el enlace oficial de los formatos multimedia que

soporta Android, por si alguno más, es soportado en próximas actualizaciones.

- http://developer.android.com/guide/appendix/media-formats.html

También hay que mirar, el peso de estos archivos, no tenemos que olvidarnos que

esta programando sobre teléfonos móviles, y aunque ya existen versiones muy

potentes. No queremos consumir toda la memoria, ni demasiados ciclos de

procesamiento sólo en el sonido. Asi que ahi que poner bien en la balanza, cuál

es la calidad de sonido, en comparación del costo en reproducirlo y la memoria

que deberemos utilizar.

Vamos a lo bueno, como manejamos esto en AndEngine.

En AndEngine podemos diferenciar las interfaces music, para la música que

vamos a manejar y sounds, para los efectos de sonido que vamos a utilizar.

Muchos podemos elegir utilizar por una cuestión de sencillez, un tema musical por

Page 54: Programación de dispositivos móviles UNIDAD 5

52

activity, pero eso no lo vamos a poder hacer con los sonidos del juegos, ya que los

efectos van a ser varios , así que para ello vamos a tener que utilizar SoundPool

para poder gestionar esos clips de sonido. Esta es la docu oficial:

-http://developer.android.com/reference/android/media/SoundPool.html

Algunas Clases que nos ayudaran:

Music: Esta representa un stream de música.

Sound: Lo mismo pero con los efectos de sonido.

MusicFactory y SoundFactory: Estas clases nos ayudaran a manejar los sonidos

con un patrón de tipo Singleton.

La clase Music:

Normalmente no la vamos a utilizar instanciando directamente, para esto nosotros

vamos a utilizar la clase MusicFactory para crear nuestros objetos de tipo Music,

una vez que lo hayamos creado, estos objetos nos proveerán algunos metodos

para poder manejarlos:

void play() , void stop() , void pause() , void resume() , void release() , void

setLooping(final boolean pLooping) , void setVolume(final float pLeftVolume, final

float pRightVolume) , void seekTo(final int pMilliseconds) , boolean isPlaying().

Page 55: Programación de dispositivos móviles UNIDAD 5

53

Y por ultimo, con este método vamos a poder registrar un Listener para que nos

avise cuando termino el tema:

void setOnCompletionListener(final OnCompletionListener

pOnCompletionListener)

La clase Sound:

Esta clase, de la misma manera que hablamos de Music, normalmente no la

instanciamos, sino que utilizaremos SoundFactory para ello. Algunas pequeñas

diferencias es que no tenemos los metodos: seekTo(), isPlaying(),

ni setOnCompletionListener().

Pero adicionalmente tenemos algunos otros metodos:

void setLoopCount(final int pLoopCount) : Este método trabaja junto a

setLooping(). Si este esta seteado en true, el efecto se repetirá hasta que

llamemos al método stop(). En cambio si este esta seteado en false y

setLoopCount() no esta en cero, el efecto se repetirá el número de veces que

nosotros hayamos seteado con este método. (cuidado con que esta basado en

cero,así que si los ponernos en 4, el sonido se repetirá 5 veces).

Otro método es void setRate(final float pRate), con el podremos cambiar la

velocidad de reproducción del sonido, el rango va de 0.5f o 2.0f.

La clase MusicFactory:

Como otras clases factory, en AndEngine, esta provee varios metodos

createfrom.... para poder cargarlos de diferentes lugares a nuestros recursos:

Music createMusicFromFile(final MusicManager pMusicManager, final Context

pContext, final File pFile)

Music createMusicFromAsset(final MusicManager pMusicManager, final Context

pContext, final String pAssetPath)

Page 56: Programación de dispositivos móviles UNIDAD 5

54

Music createMusicFromResource(final MusicManager pMusicManager, final

Context pContext, final int pMusicResID)

La clase SoundFactory:

De las misma manera que MusicFactory, podemos cargar los recursos de

diferentes lugares con estos metodos:

Sound createSoundFromPath(final SoundManager pSoundManager, final Context

pContext, final String pPath)

Sound createSoundFromAsset(final SoundManager pSoundManager, final Context

pContext, final String pAssetPath)

Sound createSoundFromResource(final SoundManager pSoundManager, final

Context pContext, final int pSoundResID)

Sound createSoundFromFileDescriptor(final SoundManager pSoundManager, final

FileDescriptor pFileDescriptor, final long pOffset, final long pLength)

En ambos casos, SoundFactory y MusicFactory, tenemos el método

setAssetBasePath().

Manejo de Animaciones

Vamos a conocer otras alternativas disponibles para darle ese look & feel que

estás buscando a tus aplicaciones.

En Android podemos utilizar tres tipos de animaciones:

Animaciones Frame-by-frame

Una serie de frames que se “ejecutan” uno tras otros a intervalos de tiempos

específicos.

Animaciones de layouts

Animaciones sobre las vistas de un contenedor tales como listas y tablas.

Page 57: Programación de dispositivos móviles UNIDAD 5

55

Animaciones de vistas

Animaciones sobre los contenedores (como el ViewFlipper visto anteriormente).

Los dos últimos tipos nos ayudan a insertar las animaciones adecuadas en base a

la idea de su estado inicial y final que depende de las acciones que realice el

usuario dentro de la aplicación, pudiendo así modificar el tamaño, color, posición,

entre otros atributos de los widgets de la pantalla.

Page 58: Programación de dispositivos móviles UNIDAD 5

56

3.4 Costos e implicaciones asociadas (hardware y software)

La Gama baja a si son conocido los celulares de los cuales se puede conseguir un

servicio pero a bajo costo obviamente teniendo limitaciones en cuanto a

funcionamientos y aplicaciones pero la mayoría con un sistema operativo el cual le

puede dar muchas funciones que cualquiero otro Smatphone del mercado.

Los que pueden encontrar en México y su costo aproximado:

Los smartphones de la tabla, son teléfonos con procesadores de nueva

generación a un precio asequible, algunos se diferenciarán por la velocidad del

procesador, la memoria RAM, el almacenamiento interno, la cámara, todos los

táctiles tienen pantallas capacitivas (las que responden con las yemas de los

dedos) para una mejor experiencia web.

Personalmente prefiero el Galaxy Young, por que su procesador es muy bueno de

832MHZ, buena batería, buena respuesta de pantalla y es demasiado pequeño

que pasa inadvertido, sin perder todo lo que ofrece Android. La cámara no la

utilizo para nada.

Recomiendo, ya que los he trasteado y conosco bien como es su fluidez, su

hardware y demás.

Tip Android: Entre mejor procesador y más RAM mejor experiencia.

Tip Symbian: Entre mejor procesador más fluidez

Page 59: Programación de dispositivos móviles UNIDAD 5

57

3.5 Comercialización

Modelo de pago. Subes la app a una tienda y le pones un precio. “No es muy

recomendable, porque eres uno más en el universo de apps mundiales y no todas

ganan dinero”.

Freemium

Los usuarios se la descargan gratuitamente, “y hay funcionalidades extras que son

de pago”.

In app

Es gratuita y se enriquece con contenidos de pago.

In house

Son desarrollos a medida para entornos empresariales. Por ejemplo, un CRM. “No

van a tener muchos usuarios, pero será usada por los clientes de esa compañía”.

De suscripción

Es gratuita y se paga una suscripción temporal por servicios. “Son ingresos

recurrentes. Por ejemplo, Orbyt”.

Por publicidad

Se gana por la publicidad integrada en las propias apps.

Se recomienda combinar varios modelos. “Lo ideal es que sean gratuitas y

después pensar qué servicios de pago desarrollar a su alrededor. O bien tener una

app gratuita para conseguir imagen de marca. No la monetizas, pero es un

intagible importante”.

¿Tienda o tiendas?

Además, debes valorar en qué plataforma o plataformas la subirás. Los principales

desarrollos se hacen para iOS (Apple Store de Apple) y Android (Android Market

Page 60: Programación de dispositivos móviles UNIDAD 5

58

de Google), pero hay para Ovi Store (de Nokia), Mobile Store (de Windows),

BlackBerry Store (de RIM) y Palm Pre Store (de Palm). “Apple Store

(http://store.apple.com/es) tiene una política muy restrictiva, porque dice quién

puede publicar y quién no en función del contenido y de la app. No obstante, el

modelo de Apple Store, aunque se lleve una comisión del 30%, es válido porque el

pago lo tienen centralizado y el acceso para los usuarios es muy fácil”, asegura

Hormigos.

Cuando publicas en iOS o en Android (http://market.android.com), decides en qué

países las das de alta. “Si tu mercado va a ser global y tu app estará disponible en

todo el mundo, la comunicación debe ser global”, añade Hormigos.

Page 61: Programación de dispositivos móviles UNIDAD 5

59

3.6 Ejemplo de desarrollo básico

Código fuente de “Hola mundo” en Android

01 package com.android.paquete;

02

03 import android.app.Activity;

04 import android.os.Bundle;

05 import android.widget.TextView;

06 public class ProyectoAndroid1Activity extends Activity {

07 /** Called when the activity is first created. */

08 @Override

09 public void onCreate(Bundle savedInstanceState) {

10 super.onCreate(savedInstanceState);

11

12 String var = "Hola mundo, esta es una aplicacion para Android";

13 TextView vista;

14 vista = new TextView(this);

15 this.setTitle("Aplicacion de Jorge");

16 vista.setText(var);

17 setContentView(vista);

18 }

19 }

Básicamente tenemos que tener presente que cuando vamos a hacer un

programa para android, manejaremos un sistema de archivos que crea el Eclipse,

nosotros usualmente utilizaremos la carpeta “src” para escribir allí nuestro código

fuente, podemos incluso posteriormente crear clases y librerías propias para

utilizarlas, pues el lenguaje de programación Java mantiene todas sus

propiedades incluso cuando programamos para android.

Page 62: Programación de dispositivos móviles UNIDAD 5

60

4. Conclusiones y Recomendaciones

En la actualidad los dispositivos móviles son un artefacto que se

considerado una necesidad, por ellos se puede contar con información personal al

instante y no sólo eso, sino que ofrecen funciones importantes en la vida

cotidiana. Todos estos dispositivos añaden funcionalidades que años atrás

difícilmente se podían llevar en los bolsillos; es por eso que los dispositivos

móviles juegan un papel muy importante en la vida del ser humano.

Dejando de lado la importancia de los dispositivos móviles, enfatizaré lo

siguiente especialmente en los Smartphone que evidentemente tienen mucho

auge en este momento. Gracias a é l estamos conectados en cualquier lugar a

cualquier momento. Por tal motivo, como futuro ingeniero en sistemas

computacionales deja ver que depara una oportunidad muy grande

económicamente y de conocimiento porque se pueden programar aplicaciones o

videojuegos sin necesidad de tener un estudio completo de desarrolladores o

equipo de computo costoso y así se pueden difundir o comercializar desde el

hogar.

Es importante mencionar que el conocer la diversidad de sistemas que se

encuentran en la actualidad es de utilidad porque se puede ver las características

de cada uno y evaluar por nosotros mismo la diversidad de opciones eligiendo el

más agradable y que mejor se ajuste a las necesidades al desarrollar aplicaciones.

Evidentemente la mayoría de los Geeks podemos saber que Android es el

mercado mas grande para este dispositivo, pero no por eso podemos dejar a un

lado otras opciones, por tanto, como estudiante se puede iniciar por crear

aplicaciones para este sistema gracias a que no es costoso y hay mucha

documentación disponible en la red de las mismas compañías del sistema.

El mercado grande y el dinero se observa que se encuentra en plataformas

en la cual se necesita inversión pero eso no es motivo para no elegir las que son

gratuitas ya que siempre habrá quien utilice esos dispositivos.

Page 63: Programación de dispositivos móviles UNIDAD 5

61

5.- Referencias

http://revista.seguridad.unam.mx/numero-07/dispositivos-móviles

http://smash-media.blogspot.mx/2012/04/que-tipos-de-dispositivos-moviles-

hay.html

http://andreiita-cariassiiossi.blogspot.mx

https://sites.google.com/site/dispositivosmovilesyulianah/concepto-general-

dispositvo-movil/categoria-de-dispositivos-moviles

http://cellphoneshop.cc/caracteristicas-en-un-smartphone/

http://www.tabletarea.com/caracteristicas.html

http://www.taringa.net/posts/info/9172647/PsP-2-Ps-Vita---

Caracteristicas.html

http://www.informaticamoderna.com/ReprodMP3.htm

http://www.pac.com.ve/index.php?option=com_content&view=article&id=70

96:caracteristicas-de-un-laptop-computador-

portatil&catid=56:computacion&Itemid=79

http://es.wikipedia.org/wiki/Teléfono_inteligente

http://tabletzona.es/2014/02/15/que-tipo-de-uso-le-puedes-dar-una-tablet/

http://es.wikipedia.org/wiki/Videoconsola_portátil

http://es.wikipedia.org/wiki/Reproductor_de_audio_portátil

http://www.informaticamoderna.com/Laptop.htm#uso

http://intoleranciadiario.com/detalle_noticia.php?n=88697

http://mundocontact.com/mercado-de-tablets-en-mexico/

http://conectamx.jimdo.com/opinión/the-competitive-intlligence-unit/

http://codigoespagueti.com/noticias/mexico-habitos-musicales/

http://www.mediatelecom.com.mx/index.php/agencia-

informativa/noticias/item/59879-crece-78-el-mercado-de-computadoras-

personales-en-mexico

http://iphoneandord.com/los-5-mejores-sistemas-operativos-para-celulares/

http://tech.batanga.com/2007/03/12/symbian-el-sistema-operativo-movil

Page 64: Programación de dispositivos móviles UNIDAD 5

62

http://www.xatakamovil.com/desarrollo/origo-ide-programacion-facil-en-

symbian

http://blogs.msdn.com/b/ricardoj/archive/2012/07/12/desarrollo -de-

aplicaciones-para-windows-phone-herramientas.aspx

https://www.geektopia.es/es/technology/2012/03/12/articulos/-para-que-

plataforma-movil-debo-programar-.html

http://docs.blackberry.com/en/developers/deliverables/8887/BlackBerry_JD

E_446979_11.jsp

https://developer.apple.com/swift/

https://developer.apple.com/xcode/

http://www.unocero.com/2013/05/26/con-que-quiere-programar-en-android/

http://www.ecured.cu/index.php/Symbian_OS#Caracter.C3.ADsticas

http://www.v2msoft.com/empresa-desarrollo-aplicaciones-windows-

phone.php

http://es.wikipedia.org/wiki/BlackBerry_OS#Caracter.C3.ADsticas

http://appleweblog.com/2014/06/swift

http://androidos.readthedocs.org/en/latest/data/caracteristicas/

http://sistemasoperativosuaeh.wordpress.com/2011/05/20/sistemas-

operativos-moviles/

http://blog.staffcreativa.pe/android-ventajas-desventajas/

http://blackberryostablet.blogspot.mx/p/ventajas-y-desventajas-del-black-

berry.html

http://adictoalandroide.com/lo-bueno-y-lo-malo-entre-desarrollar-

aplicaciones-para-ios-o-android/

http://www.xatakamovil.com/mercado/desarrollo-de-aplicaciones-moviles-i-

asi-esta-el-mercado

http://androidbasico.com/2011/12/requisitos-minimos-de-un-telefono.html

http://www.xatakandroid.com/mercado/jelly-bean-ya-es-la-version-de-

android-mas-usada-con-el-37-9-gingerbread-con-el-34-1

Page 65: Programación de dispositivos móviles UNIDAD 5

63

http://www.aprendiendodeandroidymas.com/2012/08/musica-y-efectos-de-

sonido-en-andengine.html

http://androideity.com/2011/12/20/animaciones-en-android-i/

http://www.poderpda.com/uso-smartphones/mi-siguiente-smartphone-

bueno-bonito-y-barato/

http://www.emprendedores.es/gestion/crear-app/crear-app-2

http://codigoprogramacion.com/cursos/android/132-tutorial-android-1-

nuestro-primer-programa-hola-mundo.html