aplicaciones moviles

75
Consideraciones para el Desarrollo de Aplicaciones Móviles

Transcript of aplicaciones moviles

Page 1: aplicaciones moviles

Consideraciones para el Desarrollo de Aplicaciones Móviles

Page 2: aplicaciones moviles

A que se refiere la movilidad?

Page 3: aplicaciones moviles

La movilidad refiere a tener los datos,

las aplicacionesy los dispositivos en cualquier lugar.

Page 4: aplicaciones moviles

Que es un

dispositivo móvil?

Page 5: aplicaciones moviles

Tipos deDispositivos

Móviles

Page 6: aplicaciones moviles

Tipos de Dispositivos Móviles

Fuente: Architecture Journal #14

Page 7: aplicaciones moviles

Tipos de Dispositivos MóvilesNotebooks

Capacidad de prestación: ALTA

Difusión: BAJA

Practicidad (uso, autonomía y conectividad): BAJA

PDAs / SmartPhonesCapacidad de prestación: MEDIA

Difusión: BAJA

Practicidad (uso, autonomía y conectividad): MEDIA-BAJA

Cell Phones / SmartPhonesCapacidad de prestación: BAJA

Difusión: ALTA

Practicidad (uso, autonomía y conectividad): MEDIA-ALTA

Page 8: aplicaciones moviles

Tipos de Dispositivos MóvilesTelefonos Celulares

Llamadas y funcionalidad adicional

Restricciones: procesador, memoria, I/O, teclado numérico

PDA’sPersonal Digital Assistant

Agenda, contactos, block de notas

Reconocimiento de escritura

Rugged DevicesCaptura de datos

Poder de procesamiento y batería

Teclado alfanumérico

I/O Adicionales

UMPCAplicaciónes especiales

Poder de procesamiento

Todas las características de un PC

Page 9: aplicaciones moviles

Tendencias del Mercado de Dispositivos Móviles

Page 10: aplicaciones moviles

Escenarios para el uso de Dispositivos Móviles

Público Masivo Público Puntual Nichos

BluethoothM-BankingM-Payment

Inventario Logística Transporte Oficina móvil

SMS / MMS Juegos Contenido Entretenimiento

Page 11: aplicaciones moviles

El desarrollo de aplicaciones móviles conlleva una variedad

de consideracionesde acuerdo al

propósito y escenariopara el que van a ser utilizadas.

Page 12: aplicaciones moviles

Está presentación esta enfocada al desarrollo de

aplicaciones sobre

teléfonos y pda´s

Page 13: aplicaciones moviles

Se tiene la creencia equivocada de que

desarrollar aplicaciones móviles es igual que desarrollar una aplicación tradicional pero en

“pequeño”

Page 14: aplicaciones moviles

Cuales considera que deberían ser esas

consideraciones?

Page 15: aplicaciones moviles

Proveedores de Teléfonos Móviles

Nokia es actualmente el mayor fabricante en el mundo de teléfonos móviles, con una cuota de mercado global de

aproximadamente 39,1% en el segundo trimestre de 2008. Continúan la lista con un 14,4% Samsung, 10,2% Motorola,

8% LG Mobile y 7,5% Sony Ericsson. Entre otros fabricantes se encuentran Apple Inc., Audiovox (hoy UT Starcom), Benefon,

BenQ-Siemens, Hewlett Packard, High Tech Computer ,Fujitsu, Huawei, Kyocera, Mitsubishi, NEC Corporation, Neonode, Panasonic (Matsushita Electric), Pantech Curitel, Philips, Research In Motion, SAGEM, Gtran, Sanyo, Sharp, Sierra Wireless, SK Teletech, Skyzen, TCL Corporation, Toshiba,

Alcatel y Verizon.

Fuente: Wikipedia

Page 16: aplicaciones moviles

Mercado por Proveedor

Fuente: Gartner Agosto 2008

Page 17: aplicaciones moviles

… antes de desarrollar sobre un dispositivo

especifico consulte los

centros de desarrollo de cada proveedor para

seguir las indicaciones propuestas…

Page 18: aplicaciones moviles

Centros de Desarrollo

• Sony Ericsson

• http://developer.sonyericsson.com

• Nokia

• http://forum.nokia.com

• Samsung

• http://developers.samsungmobile.com

• Motorola

• http://developer.motorola.com

• Blackberry

• http://www.blackberry.com/developers

• Palm

• http://pdnet.palm.com/

• IPhone

• http://developer.apple.com/iphone/

• LG Mobile

• http://developer.lgmobile.com

Page 19: aplicaciones moviles

Si el objetivo es abarcar una

gama de dispositivos o bien la

mayor cantidad de dispositivos posible,

debemos tener en cuenta mas consideraciones…

Page 20: aplicaciones moviles

...estas son algunas consideraciones a tener en

cuenta en cualquiera de los escenarios...

o Tipos de Aplicaciones

o Sistemas Operativos y Plataformas de Desarrollo

o Capacidades de cada tipo de dispositivo

o Lenguajes de los navegadores

o Limitaciones en la conectividad

o Otras

Page 21: aplicaciones moviles

Tipos de Aplicaciones

BASADAS EN MENSAJERIASMS/MMS

BASADAS EN INTERNETWap: WML – WAP 1.0

Web: XHTML – WAP 2.0Web Enriquecido (Internet + Ajax/Plug-ins)

STAND-ALONELenguaje Nativo (Stand-Alone)

Lenguaje Intermedio (Stand-Alone)APLICACIONES MIXTAS

Smart Clients (Stand-Alone + Internet)

Page 22: aplicaciones moviles

...estas son algunas consideraciones a tener en

cuenta en cualquiera de los escenarios...

Tipos de Aplicaciones

o Sistemas Operativos y Plataformas de Desarrollo

o Caracteristicas de cada tipo de dispositivo

o Lenguajes de los navegadores

o Limitaciones en la conectividad

o Otras

Page 23: aplicaciones moviles

Herramientas para Desarrollo sobre Dispositivos Móviles

Page 24: aplicaciones moviles

Sistemas Operativos

• Symbian OS

• Windows Mobile (Windows CE)

• iPhone OS

• Palm OS

• Android

• BlackBerry OS

Page 25: aplicaciones moviles

Symbian OS

• S.O. de Symbian (1998)

• Disponible v9.5

• Smartphones (Nokia)

• Interfaz Apuntador y teclado

• SDK Gratuito

• Apps. Nativas y JME

• Firma obligatoria

• Nokia, Sony Ericsson, Samsung, Siemens …

Page 26: aplicaciones moviles

Windows Mobile

• S.O. de Microsoft (2000)

• Disponible v6.1

• Versión de Windows CE

• Smartphones y PDA’s

• Interfaz Apuntador y teclado

• SDK Gratuito/IDE Pagado

• Apps. Nativas y Compact Framework

• Firma opcional

• HP, HTC, Samsung, Dell …

Page 27: aplicaciones moviles

IPhone OS

• S.O. de Apple (2008)

• Disponible v2.0

• Version de Mac OS X

• Interfaz Touch

• iPhone Developer Program

• Apps. Nativas y JME

• Firma obligatoria

• Iphone, Iphone 3G

Page 28: aplicaciones moviles

Palm OS

• S.O. de PalmSource (1996)

• Disponible v5.4

• PDA’s

• Interfaz Apuntador y teclado

• SDK Gratuito

• Apps. Nativas y JME

• Firma opcional

• Familia Palm

Page 29: aplicaciones moviles

Blackberry OS

• S.O. de RIM (1999)

• Disponible v4.2

• Smartphones

• Interfaz teclado

• SDK Gratuito

• JME

• Firma opcional

• Familia Blackberry

Page 30: aplicaciones moviles

Android

• S.O. de Google (2008)

• Disponible v1.0

• Smartphones

• Interfaz Touch y

• apuntador

• SDK Gratuito

• Apps. Nativas y JME

• Firma opcional

• HTC, LG, Samsung…

Page 31: aplicaciones moviles

Mercado de los S.O.

Fuente: Gartner Febrero 2008

Page 32: aplicaciones moviles

Plataformas de Desarrollo(Nativas)

Page 33: aplicaciones moviles

Plataformas de Desarrollo(Intermedias)

Page 34: aplicaciones moviles

...estas son algunas consideraciones a tener en

cuenta en cualquiera de los escenarios...

Tipos de Aplicaciones

Sistemas Operativos y Plataformas de Desarrollo

o Caracteristicas de cada tipo de dispositivo

o Limitaciones en la conectividad

o Lenguajes de los navegadores

o Otras

Page 35: aplicaciones moviles

Capacidades del Dispositivo

(Pantalla)◦ 25% PC: 3.4 pulg.

◦ 16 bit (65536 colors colors)

◦ Transflective TFT ( thin film transistor)

◦ Fuente de 8pt

◦ 10-12 líneas de datos

◦ Botones de acción

◦ División de flujo de UI

Page 36: aplicaciones moviles

Características de los Dispositivos(Memoria)

◦ RAM (Programas), Volátil

◦ SDRAM (synchronous dynamic random access memory).

◦ Hasta 128 Mb

◦ ROM (Almacenamiento), No volátil

◦ Flash EEPROM (Electrically-erasable programmable Read-Only Memory).

◦ Hasta 32 Mb

◦ Capacidad de Extender Memoria

Page 37: aplicaciones moviles

Características de los Dispositivos(Microprocesador)

◦ Intel, Qualcomm, Samsung

◦ RISC - 32bit

◦ ARM (advanced risk machine)

Bajo consumo

Dominante en dispositivos (75%)

◦ Hasta 600Mhz

Page 38: aplicaciones moviles

Características de los Dispositivos(Audio)

◦ Microphone: mono

◦ Loadspeaker: mono

◦ Audio channel: mono/stereo

Page 39: aplicaciones moviles

Características de los Dispositivos(Control)

◦ Posicionamiento

◦ Touch screen

◦ Multi-touch screen

◦ Teclado primario

◦ Numeric type

◦ QWERTY type

◦ Directional pad

◦ Four way (action button)

◦ Scroll wheel

Page 40: aplicaciones moviles

Características de los Dispositivos(Cámara)Resoluciones

1.3 MP (1280 x 1024)

2 MP (1632 x1224)

3 MP (2048 x1536)

5 MP

◦ Front-Camera

◦ Optical Zoom, 1x

◦ Auto-focus

◦ Macro mode

◦ Built-in flash

Mobilelight(LED)

◦ Formatos

JPG,

BMP,

3GPP,

MPEG4,

MJPG,

3GPP2

Page 41: aplicaciones moviles

Características de los Dispositivos(Expansión de Memoria)◦ Tipos de Memoria

◦ SD

32 Gb. 3.2 cmx 2.5 cm

◦ Mini SD

8 Gb. 2.1 cmx 2 cm

◦ Micro SD

8Gb. 1.5 cmx 1.1 cm

◦ SDHC (High capacity > 4Gb)

◦ Memory Stick/PRO*4 Gb.

◦ Memory Stick Duo/PRO16 Gb.

◦ Memory Stick Micro8 Gb. 1.5 cmx 1.2 cm

◦ HG (High speed = 60Mb/s)

Page 42: aplicaciones moviles

Características de los Dispositivos(Batería)

◦ Nickel (Con memoryeffect)

◦ Lithium-ion

mejor relación energia/peso

Sin “memoryeffect”

Lenta perdida de carga

◦ Removable/built-in/AAA

◦ Capacidad

1000 –2600 mAh

xHora: 90 –170 mA

10 –20 horas

3.7 V

Page 43: aplicaciones moviles

Características de los Dispositivos(Ingress Protection)

Códigos de protección IP del IEC contra personas,sólidos, líquidos e impactos

Primer dígito Segundo dígito Tercer dígito (opcional)

Protección contra contacto de personas

Protección contra sólidos

Protección contra líquidos (cuerpos extraños)

Protección contra impactos mecánicos

0 Sin protección Sin protección Sin protección Sin protección

1

Protección contra contacto con áreas importantes del cuerpo (mano)

Protección contra objetos sólidos grandes de más de 50 mm de diámetro

Protección contra gotas de agua cayendo verticalmente

Protección contra impactos de 0,225 julios (0,15 Kg @ 15 cm)

2Protección contra contacto con el dedo

Protección contra objetos sólidos medianos de más de 12 mm de diámetro

Protección contra rocíos directos de agua cayendo hasta a 15º de la vertical

Protección contra impactos de 0,375 julios (0,25 Kg @ 15 cm)

3

Protección contra cables y herramientas de más de 2,5 mm de diámetro

Protección contra objetos sólidos pequeños de más de 2,5 mm de diámetro

Protección contra rocíos directos de agua cayendo hasta a 60º de la vertical

Protección contra impactos de 0,5 julios (0,25 Kg @ 20 cm)

4Protección contra cables y herramientas de más de 1 mm de diámetro

Protección contra objetos sólidos redondos de más de 1 mm de diámetro

Protección contra rocíos directos de agua desde todas direcciones

Protección contra impactos de 1 julio (0,5 Kg @ 20 cm)

5 Protección completaProtección contra depósitos de polvo

Protección contra chorros de agua a baja presión desde todas direcciones

Protección contra impactos de 2 julios (0,5 Kg @ 40 cm)

6 Protección completaProtección completa contra entrada de polvo

Protección contra fuertes chorros de agua de todas direcciones (olas)

Protección contra impactos de 4 julios (1 Kg @ 40 cm)

7Protección contra cortos plazos de inmersión - de 15 cm a 1 m

Protección contra impactos de 6 julios (1,5 Kg @ 40 cm)

8Protección contra largos períodos de inmersión bajo presión

Protección contra impactos de 10 julios (5 Kg @ 20 cm)

9Protección contra impactos de 20 julios (5 Kg @ 40 cm)

Fuente: IEC 60529 – Clasification of Degrees of Protection Provided by Enclosures. International Electrotechnical Commission, Suiza. www.iec.ch

Page 44: aplicaciones moviles

Características de los Dispositivos(Navegación)◦ GPS Interno/externo

◦ A-GPS

Rapidez (min. > seg.)

Precisión

Page 45: aplicaciones moviles

Características de los Dispositivos(Captura)◦ Código de barras

1D Laser

2D Imager

DirectPartMarking(DPM)

◦ RFID

Tags

Cards

Page 46: aplicaciones moviles

Características de los Dispositivos(Impresión)◦ Térmicas portátiles

Page 47: aplicaciones moviles

Características de los Dispositivos(Sensores)◦ Acelerómetro

Transductor 3D

Wii, iPhone, Sony-Ericsson, SuddenMotion

◦ Proximidad

Sensor electromagnético/estático

Control consumo energia

◦ Luz ambiente

Photodetectors

Control intensidad pantalla

Page 48: aplicaciones moviles

...estas son algunas consideraciones a tener en

cuenta en cualquiera de los escenarios...

Tipos de Aplicaciones

Sistemas Operativos y Plataformas de Desarrollo

o Caracteristicas de cada tipo de dispositivo

o Limitaciones en la conectividado Alta Latencia

o Conexión Intermitente

o Lenguajes de los navegadores

Page 49: aplicaciones moviles

Comunicación

• Desconectadas

• Conectadas

– En línea

– En lote

– En línea + lote

Page 50: aplicaciones moviles

Opciones de Conexión

• TCP/IP Con cable– Cable al PC

– Modem

• TCP/IP Sin cables– Wi-fi

– Wman

– Red Celular

• Otros– Cable serial/USB

– Bluetooth

– Infrarrojo

• Protocolos TCP y HTTP

• Comunicación bajo IP

• API’s en Teléfonos, Smartphones y PDA’s

• TCP en Sockets

• HTTP para aplicaciones– Java ME

– Compact .NET Framework

– Nativo

• No depende de la tecnología de acceso

Page 51: aplicaciones moviles

Características de los Dispositivos(Interfaces)USB

USB 1.1, 12 Mbit/s

USB 2.0, 480 Mbit/s

Conectores propietarios

Mini USB

Ej. 12 mp3/s

◦ Bluetooth

Bt1.2, 721 kbit/s

Bt2.0 + EnhancedData Rate, 2.1 Mbit/s

Ej. 1 mp3/20 s

◦ WI-FI

802.11 g, 54 Mbit/s

Ej. 1 mp3/s

◦ Infrarojo

IrDA1.2, 112 Kbit/s

Ej. 1 mp3/5 min

◦ Serial

RS-232 , 112 Kbit/s

Page 52: aplicaciones moviles

TCP-IP Con Cables (Cable al PC)

• Conectividad sin costo $0

•“Dock”, “Craddle” o “Base”

• Aplicaciones en Batch

• Lugar: Trabajo/Casa

• Alta velocidad (USB)

• Cliente en el PC

• LAN

Page 53: aplicaciones moviles

TCP-IP Con Cables(Modem)•Costo plan + costo llamada

•Modem SDIO o Compact Flash

•Aplicaciones en Batch

•Lugar: Red telefónica

•Velocidad 56 kbit kbit/s

•Internet

Page 54: aplicaciones moviles

TCP-IP Sin Cables (Wi-fi)

•Costo acceso Wi-fi

•Integrado dispositivo o tarjeta externa

•Aplicaciones en Línea Lugar: Trabajo/Hotel/Café

•Velocidad 54 Mbit/s

•LAN

Page 55: aplicaciones moviles

TCP-IP Sin Cables (Wman)

•Costo plan WIMAX

•Integrado con dispositivo

•Aplicaciones en Línea

•Lugar: Ciudad

• Velocidad 2Mbit/s

•Internet

Page 56: aplicaciones moviles

TCP-IP Sin Cables (Red Celular)◦ Redes

GSM 850, 900, 1800, 1900UMTS 850, 900, 2100

◦ DatosCSD (2G) 9.6 kbit/sGPRS (3G) 56 kbit/sEDGE (3G) 56 kbit/sUMTS (3G) 384 kbit/sHSDPA (3.5G) 7.2 Mbit/

◦ AntenaInternaExterna

◦ Colombia– 850 Mhz Mhz: Comcel– 1900 Mhz Mhz: Tigo, Movistar

Page 57: aplicaciones moviles

TCP-IP Sin Cables (Red Celular)

• Costo plan GPRS

• Integrado dispositivo o tarjeta externa

• Aplicaciones en Línea

• Lugar: Ciudad y afueras

• Velocidad 28 Kbit Kbit/s /–512 Kbit Kbit/s

• Internet

Page 59: aplicaciones moviles

...estas son algunas consideraciones a tener en

cuenta en cualquiera de los escenarios...

Tipos de Aplicaciones

Sistemas Operativos y Plataformas de Desarrollo

o Caracteristicas de cada tipo de dispositivo

o Limitaciones en la conectividad

o Lenguajes de los navegadores

Page 60: aplicaciones moviles

Aplicaciones Web Móvil(Lenguajes de Marcas)

Compact HTML (cHTML)

HTML

Wireless Markup Language (WML)

Handheld Devices Markup Languages (HDML)

VoiceXML

XHML

XHTML-MP

Page 61: aplicaciones moviles

Aplicaciones Web Móvil(MicroNavegadores)

• OperaMini

• Minimo (Mozilla)

• Pocket Internet Explorer

• Skyfire

• NetFront

• Safari

• Nokia N60 browser

Page 63: aplicaciones moviles

Estándares Web Móvil

• W3C (Mobile)

– http://www.w3.org/Mobile/

• .MOBI

– http://mtld.mobi/

Page 64: aplicaciones moviles

ASP.NET Mobile Controls

1. HTTP

request

2. Procesamiento

ASP.NET

3. Salida ASP.NET4. Respuesta

“adaptada”

Según el dispositivo,

envía:• HTML

• cHTML

• WML

• XHTML-MP

Generar pág. ASPX• Procesar página

• Cada control genera su

layout

Obtener caract. del

dispositivo• Tamaño pantalla

• Color

• Imágenes

• etc.

Page 65: aplicaciones moviles

Mobile Faces

Page 66: aplicaciones moviles

Mobile Faces

Page 67: aplicaciones moviles

VS

Page 68: aplicaciones moviles

Aplicaciones Stand-alone(Plataformas Intermedias)

• Compact Framework

• Desarrollo en Smartphones, PDA’s y otros dispositivos empresariales

• Lenguaje C#.NET o VB.NET

• V3.5 pocos cambios, muchas adiciones

• Soportada en Windows CE y Windows Mobile

• Compact Framework SDK’s (Según sistema operativo)

– Windows Mobile 5 SDK

– Windows Mobile 6 SDK

– Psion Teklogix SDK

– Symbol Mobility Developer Kit

Page 69: aplicaciones moviles

Aplicaciones Stand-alone(Plataformas Intermedias)

• 2 Lenguajes, Misma API

• Dos tipos de interfaz: PDA y Smartphone

• Una vez interpretado, continua nativo

• Portabilidad entre dispositivos

• Accede a funciones nativas

• Es actualizable

• Sql Compact Edition

• Preinstalado

Page 70: aplicaciones moviles

Smart Device Programmability

ASP.NET Mobile Controls

Mobile Web Browser

.NET Compact Framework

Local Code

Remote Web Pages

Device Operating System

ASP.NET Mobile Controls

Mobile Web Browser

Remote Web Pages

Device Operating System

Page 71: aplicaciones moviles

Plataformas de Desarrollo(Plataformas Intermedias)

• Mismo lenguaje, diferentes API’s

• Basada en Configuraciones y perfiles

• API’s telefono (Mobile 3D, Location, File/PIM, MMAPI,

• Web Services…)

• Siempre interpretado

• Portabilidad entre dispositivos

• No accede a funciones nativas

• No es actualizable

• Sin motor DB

• Preinstalado

Page 72: aplicaciones moviles

Plataformas de Desarrollo(Plataformas Intermedias)

• JME SDK’s – (Según teléfonos)– Sony Ericsson SDK for the

Java(TM) ME Platform

– S60 Platform SDKs for Symbian OS, for Java™

– Samsung Java SDK

– MOTODEV Studio for Java™ ME

– BlackBerry JDE

– Android SDK

– Sun Java Wireless Toolkit

Page 73: aplicaciones moviles

Plataformas de Desarrollo(Plataformas Intermedias)

• JME (Java Micro Edition)

• Desarrollo en Teléfonos y Smartphones

• Líder en el mercado

• Lenguaje Java

• 2 Versiones CLDC, CDC

• Soportada en todos los sistemas operativos

Page 74: aplicaciones moviles

Esta presentación seguirá en construcción…

Page 75: aplicaciones moviles

Nos vemos en la próxima!

Ciao