Está en la página 1de 51

Instituto Norbert Wiener

Curso: Taller de Programacin Web IV - Mviles

Prof. Juan Alvites HUamani

Definicin de dispositivos mviles

Los dispositivos mviles son aparatos pequeos, con capacidades de procesamiento (cada vez mas asemejando a una PC), mviles y porttiles, con conexin permanente o intermitente a una red (Internet), con memoria limitada, diseados para llevar a cabo funciones generales (correo electrnico, hablar por telfono, mensajes, manejo de imgenes msica y video).

Categoras de dispositivos mviles


Dispositivo Mvil de Datos Limitados (Limited Data Mobile Device): dispositivos que tienen una pantalla pequea, principalmente basada en pantalla de tipo texto con con servicios de datos generalmente limitados a SMS y acceso WAP. Un tpico ejemplo de este tipo de dispositivos son los telfonos mviles. Dispositivo Mvil de Datos Bsicos (Basic Data Mobile Device): dispositivos que tienen una pantalla de mediano tamao, (entre 240 a 600 pixels), men o navegacin basada en conos por medio de una "rueda" o cursor, y que ofrecen acceso a e-mails, lista de direcciones, SMS, y un navegador web bsico. Un tpico ejemplo de este tipo de dispositivos son las BlackBerry y los Telfonos Inteligentes. Dispositivo Mvil de Datos Mejorados SmartPhone (Enhanced Data Mobile Device): dispositivos que tienen pantallas de medianas a grandes (por encima de los 1240 x 800 pixels), navegacin tctil, y que ofrecen las mismas caractersticas que el "Dispositivo Mvil de Datos Bsicos" (Basic Data Mobile Devices) ms aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word, Excel, PowerPoint) y aplicaciones corporativas usuales, en versin mvil, como Sap, portales intranet, etc.

Importancia de los dispositivos mviles

La importancia actual de los dispositivos mviles radica en que nos permiten comunicar en cualquier distancia, lugar y en movimiento, sea en el transporte, estar en otra ciudad o caminando en cualquier parte. Estas caractersticas bien se pueden aprovechar para la difusin del conocimiento y para dar mayor productividad a la educacin en Per.

Situacin de uso de la Tecnologa Mvil.

Los proveedores de dispositivos mviles (CLARO, NEXTEL, MOVISTAR, etc.) monopolizan el software y el hardware haciendo esta tecnologa cada vez mas privativa para la sociedad.

Herramientas de Software libre para desarrollo de aplicaciones Mviles


Java SE JDK: software que provee herramientas de desarrollo para la creacin de programas en java. Puede instalarse en una computadora local o en una unidad de red. Apache Tomcat: Servidor web virtual open source software implementacion de tecnologas Java Servlet and JavaServer Pages. para la

Java2ME: Programacin de aplicaciones en Java relacionadas con telefona mvil y las aportaciones java de los propios usuarios, midlets, JSPs, servlets Linux: Sistema Operativo y combinacin del ncleo o kernel libre similar a Unix denominado Linux, que es usado con herramientas de sistema GNU. Android : Sistema Operativo Libre basado en el nucleo de Linux Mobile PHP Editor: Es un programa en Java orientado a la edicin o creacin de cdigo con lenguaje PHP. MySQL: Es un sistema de gestin de bases de datos relacional, multihilo y multiusuario, software libre y esquema de licenciamiento dual.

PostgreeSQL: Es un sistema de gestin de base de datos relacional orientada a objetos y libre, publicado bajo la licencia BSD.

Mapa de configuracin de la tecnologa para desarrollo de aplicaciones mviles en entornos Java


La configuracin propuesta para desarrollar las aplicaciones mviles con Open Source consiste en el siguiente algoritmo. 1.- El usuario accesa a su dispositivo mvil (por ejemplo para consultar un precio de un producto) 2.- En la pantalla del dispositivo mvil se mostrar una pantalla desarrollada en tecnologa MIDLet de Java 3.- Cuando el usuario enva su consulta, el MIDlet accesar la nube de Internet a travs de una URL que ejecuta una aplicacin de java JSP (Java Server Page) la cual conecta a un servidor LINUX remoto y la Base de Datos MySQL (por ejemplo la tabla de ventas donde se guardan los datos del precio y la existencia del producto). 4.- El JSP lee los datos del precio y la existencia del producto de la Base de Datos de MySQL y los devuelve para ser mostrados en un frame de salida mostrando los datos. 5.- La aplicacin mvil deber estar soportada por una pagina web en Internet desarrollada en J2ME (para mantenimiento a la Base de Datos).

Qu es un sistema operativo para mvil y para qu sirve

Un sistema operativo mvil o SO mvil es un sistema operativo que controla un dispositivo mvil al igual que los ordenadores utilizan Windows o Linux entre otros. Sin embargo, los sistemas operativos mviles son bastantes ms simples y estn ms orientados a la conectividad inalmbrica, los formatos multimedia para mviles y las diferentes maneras de introducir informacin en ellos. Puede que la mayora de los compradores de telfonos mviles no decidan su compra basndose en el sistema operativo que utilice el aparato pero para las compaas se ha convertido en una guerra feroz en la que luchan por imponer su sistema o por introducirse en ese mundo, desde gigantes tecnolgicos como Microsoft, Apple o Nokia hasta compaas en teora menos poderosas como RIM (BlackBerry), Palm o el gigante Google con Android.

Tipos de sistemas operativos y sus diferencias

Symbian
Windows Mobile Linux

Symbian er el sistema operativo para mviles ms extendido. La empresa es propiedad de Ericsson, Panasonic, Siemens AG, Nokia y Sony-Ericsson. Este sistema desciende de EPOC, empleado en los antiguos ordenadores de bolsillo Psion. Windows Mobile, antes conocido como Windows CE o Pocket PC, tiene una larga historia como segundo en el campo de los PDA u ordenadores de bolsillo pero esta desarrollando para crecer. En los crculos del software libre se acaricia la idea de implantar Linux en el telfono mvil desde hace aos, pero ha tardado en llegar. An as, en los ltimos tiempos se ha avanzado mucho y ya hay varios modelos de mvil en el mercado que utilizan una versin de Linux como su sistema operativo Con las siglas J2ME se conoce a Java Micro Edition, la versin del lenguaje de programacin Java para dispositivos mviles. Aunque es un lenguaje, y no un sistema operativo, la mayora de los nuevos mviles pueden ejecutar aplicaciones escritas en Java, y muchos videojuegos se crean de este modo.

Java

Android

Android en un Sistema Operativo adems de una plataforma de Software basada en el ncleo de Linux. Diseada en un principio para dispositivos mviles, Android permite controlar dispositivos por medio de bibliotecas desarrolladlas o adaptados por Google mediante el lenguaje de programacin Java se apunta en el primer lugar junto al IOS de Apple
iOS es un sistema operativo mvil de la empresa Apple Inc. Originalmente desarrollado para el iPhone (iPhone OS), siendo despus usado en dispositivos como el iPod Touch, iPad y el Apple TV. Apple Inc. no permite la instalacin de iOS en hardware de terceros. En mayo de 2010 en los Estados Unidos, tena el 59% de consumo de datos mviles (incluyendo el iPod Touch y el iPad)

iOS Apple

Wireless Markup Language - WML


El Wireless Markup Language es un lenguaje cuyo origen es el XML (eXtensible Markup Language). Este lenguaje se utiliza para construir las pginas que aparecen en las pantallas de los telfonos mviles y los asistentes personales digitales (PDA) dotados de tecnologa WAP. Es una versin reducida del lenguaje HTML que facilita la conexin a Internet de dichos dispositivos y que adems permite la visualizacin de pginas web en dispositivos inalmbricos que incluyan la tecnologa WAP. La visualizacin de la pgina depender del dispositivo que se use y de la forma en que este interprete el cdigo, ya que varan entre s. WML es un metalenguaje, lo que implica que adems de usar etiquetas predefinidas se pueden crear componentes propios y tiene ciertas similitudes con otro lenguaje de etiquetas bastante conocido, el HTML (Hypertext Markup Language), utilizado para la creacin de pginas web convencionales. Un consorcio formado por Nokia, Phone.com, Motorola y Ericsson, el WAP Forum, define la sintaxis, variables y elementos utilizados en WML. Algunos fabricantes han desarrollado capacidades adicionales a este estndar. Al igual que el HTML se sirve de un lenguaje de script como javascript para dotar de cierto dinamismo a sus documentos, WML dispone del WMLS que es un lenguaje bastante similar al Javascript, pero con alguna diferencia fundamental.

Por qu usar JAVA en la telefona mvil?


Ms facilidad para aadir nuevas funciones Soporta TCP/IP - Ms facilidad para programar aplicaciones que se comuniquen directamente con el mvil Capacidad de JAVA para trabajar con diferentes plataformas Podemos bajar programas directamente de la red, melodas, ...

Qu edicin de JAVA utilizar?


Antes Telfonos mviles no tenan suficiente capacidad para ejecutar JAVA Actualidad S, casi no hay limitaciones J2ME (Java 2 Micro Edition)

JAVA 2 Micro Edition


Edicin de JAVA limitada Menos sofisticiacin en elementos de menor relevancia en la telefona mvil - Acceso a bases de datos limitado - Capacidades grficas Sustitucin de la JVM (Java Virtual Machine) por la KVM (K Virtual Machine). - KVM es una JVM con las funcionalidades reducidas

JAVA 2 Micro Edition

Ediciones de Java 2 y sus mercados:

J2ME: Configuraciones y perfiles


J2ME soporta configuraciones mnimas de la JVM y de las Java APIs, que engloben las necesidades bsicas de un determinado tipo de dispositivo. Configuracin: Define las caractersticas mnimas que debe tener el lenguaje Java, la JVM y las libreras de clases, para un determinado tipo de dispositivo. Perfil: Complemento a una configuracin. Proporciona un conjunto de herramientas para el desarrollo de aplicaciones especficas para un determinado tipo de dispositivo.

CLDC: Connected, limited device configuration


CLDC: Especifica un estndar de plataforma Java para dispositivos pequeos y de recursos limitados. CLDC: Especificacin de la configuracin mnima necesaria para que un determinado tipo de dispositivo pueda soportar J2ME. CLDC: Define las siguientes caractersticas: Caractersticas del lenguaje Java y de la JVM. Libreras Java bsicas (java.lang.* y java.util.*). Entrada / Salida. Red. Seguridad.

MIDP: Mobile information device profile


MIDP: Es un complemento a la configuracin CLDC. MIDP: Perfil que proporciona un conjunto de herramientas para el desarrollo de aplicaciones Java orientadas a telefona mvil. MIDP: Tambin engloba las caractersticas del telfono mvil en el que est instalado el perfil, como por ejemplo el tamao de la pantalla o la potencia de la batera. MIDP: Las aplicaciones se programaran sobre la base de herramientas proporcionadas por el perfil, y se podrn ejecutar en cualquier dispositivo en el que est instalado dicho perfil.

KVM: Kilo(byte) Virtual Machine


KVM: Es una implementacin concreta de Java Virtual Machine que cumple la especificacin CLDC. KVM: Esta diseada para correr en dispositivos pequeos y de recursos limitados. KVM: Caractersticas: Implementada en lenguaje C. Orientada a procesadores de 16 y 32 bits. Ocupa entre 40 y 80 Kbytes de memoria. Altamente portable entre diferentes dispositivos pequeos y de recursos limitados.

KVM: Software vs. Hardware


La tecnologa Java puede ser implementada en software o en hardware. Software: Se instala la Virtual Machine sobre el sistema operativo del dispositivo. La Virtual Machine se encargar de traducir las instrucciones Java a las instrucciones nativas que puede ejecutar la CPU. Inconveniente de la solucin software: Al tratarse de dispositivos pequeos y limitados, la baja velocidad de la CPU puede afectar la velocidad de ejecucin de las aplicaciones Java.

KVM: Software vs. Hardware


Hardware: Para implementar la tecnologa Java mediante hardware, existen dos posibilidades: Ampliando el juego de instrucciones de la CPU para que ejecute el bytecode Java directamente. Incorporando en el dispositivo un chip especializado para que ejecute el bytecode Java. Coste de la solucin hardware: El diseo de un chip especializado es ms barato que la ampliacin del juego de instrucciones de la CPU principal. La incorporacin de un nuevo chip en el dispositivo encarece su proceso de fabricacin. Esta es la principal duda que se plantean los fabricantes.

Android - Conceptos

Android
Android es un un sistema operativo orientado a dispositivos mviles y que usa una versin modificada del ncleo Linux. Es desarrollado por la Open Handset Alliance, que aglutina a fabricantes de software y hardware, entre los que destacan Google, T-Mobile, HTC, Qualcomm y Motorola entre otros. Android hace parte de los sistemas operativos con interfaz natural de usuario.

Android
Android es un un sistema operativo orientado a dispositivos mviles y que usa una versin modificada del ncleo Linux. Es desarrollado por la Open Handset Alliance, que aglutina a fabricantes de software y hardware, entre los que destacan Google, T-Mobile, HTC, Qualcomm y Motorola entre otros. Android hace parte de los sistemas operativos con interfaz natural de usuario.

Android
El desarrollo de aplicaciones para esta plataforma se realiza mediante SDK, y el lenguaje de programacin Java. Una alternativa es el uso del NDK (Native Development Kit) de Google para emplear el lenguaje de programacin C. Su cdigo fuente est disponible bajo diversas licencias de software libre y cdigo abierto destacando la versin 2 de la licencia Apache.

Primer Android
El HTC Dream (comercializado tambin como T-Mobile G1 y denominado popularmente Google Phone o GPhone) es un dispositivo de telefona mvil construido por HTC.

Fue lanzado al mercado el 22 de octubre de 2008, a un costo estimado de 179 Dolares U.S.A.

Versiones de Android

Versiones de Android

Sistema Operativo Android

Sistema Operativo Android


La estructura del sistema operativo Android se compone de aplicaciones que se ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el ncleo de las bibliotecas de Java en una mquina virtual Dalvik con compilacin en tiempo de ejecucin.

Sistema Operativo Android


Las bibliotecas escritas en lenguaje C incluyen un administrador de interfaz grfica (surface manager), un framework OpenCore, una base de datos relacional SQLite, una Interfaz de programacin de API grfica OpenGL ES 2.0 3D, un motor de renderizado WebKit, un motor grfico SGL, SSL y una biblioteca estndar de C Bionic. El sistema operativo est compuesto por 12 millones de lneas de cdigo, incluyendo 3 millones de lneas de XML, 2.8 millones de lneas de lenguaje C, 2.1 millones de lneas de Java y 1.75 millones de lneas de C++.

Mquina Virtual

Dalvik
Dalvik es la mquina virtual que utiliza la plataforma para dispositivos mviles Android. Dalvik est optimizada para requerir poca memoria y est diseada para permitir ejecutar varias instancias de la mquina virtual simultneamente, delegando en el sistema operativo subyacente el soporte de aislamiento de procesos, gestin de memoria e hilos.

Dalvik
A menudo Dalvik es nombrada como una mquina virtual Java, pero esto no es estrictamente correcto, ya que el bytecode con el que opera no es Java bytecode. Sin embargo, la herramienta dx incluida en el SDK de Android permite transformar los archivos Class de Java compilados por un compilador Java al formato de archivos Dex.1

Dalvik
Dalvik ha sido diseada por Dan Bornstein con contribuciones de otros ingenieros de Google. El nombre de Dalvik fue elegido por Bornstein en honor a Dalvk, un pueblo de Eyjafjrur, Islandia, donde vivieron antepasados suyos.

Tienda de Aplicaciones

Google Play (antes llamado Android Market) es una tienda de software en lnea desarrollada por Google para los dispositivos Android. Google anunci Android Market el 28 de agosto de 2008 y lo puso a disposicin de los usuarios el 22 de octubre de 2008. Se introdujo soporte para las aplicaciones de pago del 13 de febrero de 2009 para los desarrolladores de EE.UU. y el Reino Unido, con el apoyo adicional de 29 pases el 30 de septiembre de 2010.

El 6 de marzo de 2012, Android Market fue rebautizado como Google Play. En enero de 2012, Google Play dispona de ms de 400.000 aplicaciones y mas de 10,000 millones de descargas.

Modelo de Negocios

Modelo de Negocios
Para registrarse como desarrollador y poder subir aplicaciones para venderlas hay que pagar una cuota de registro (US$ 25.00). Los intervalos de precios permitidos son entre 0.99 y 200 dlares estadounidenses. El precio de la aplicacin se puede cambiar en cualquier momento siempre y cuando no la hayas publicado anteriormente como gratuita.

Modelo de Negocios
Los desarrolladores de las aplicaciones de pago reciben un 70% del precio total de la aplicacin, mientras que el 30% restante es destinado a las empresas.

El beneficio obtenido de Google Play es pagado a los desarrolladores a travs sus cuentas en el sistema Google Checkout.

Tendencias en Dispositivos Mviles

Sistemas Operativos para Mviles

MUCHAS GRACIAS

También podría gustarte