Professional Documents
Culture Documents
Software de desarrollo
para aplicaciones mviles
MONOGRAFA
Presenta:
Grecia Gonzalez Melgarejo
Asesor:
M.T.E. Mayra Minerva Mndez Anota
Software de desarrollo
para aplicaciones mviles
MONOGRAFA
Presenta:
Grecia Gonzalez Melgarejo
Asesor:
M.T.E. Mayra Minerva Mndez Anota
Primordialmente, debo mencionar que le dedico este trabajo a DIOS por darme la
oportunidad de terminar esta etapa de mi vida con xito, por colmarme de
serenidad y paciencia ante las peores circunstancias y por ultimo pero no menos
importante, por rodearme de personas maravillosas.
Les dedico con mucho amor y gratitud a todas esas personas importantes de mi
vida que me apoyaron en el camino recorrido para logar que mi meta se
cumpliera.
AGRADECIMIENTOS
Con cario y afecto les estoy enormemente agradecida a todas aquellas personas
que estuvieron a mi lado, que nunca dejaron de creer en m, que no me cerraron
sus puertas y me tendieron no solo una mano sino ambas. Gracias a ustedes y
sus bendiciones.
Agradezco:
A ti, que me ayudaste a ver nuevos horizontes, que me enseaste que en esta
vida lo que vale la pena no es fcil y que los sacrificios rinden frutos hoy solo me
queda decirte que ocupas un espacio en mi corazn nunca te olvidare,
nuevamente Gracias!
NDICE
RESUMEN .............................................................................................................. 1
INTRODUCCIN .................................................................................................... 2
CAPTULO I: DISPOSITIVOS MVILES ................................................................ 6
1.1 Definicin........................................................................................................... 7
1.2 Historia de los dispositivos mviles ................................................................... 7
1.2.1 Primera Generacin 1-G ............................................................................. 9
1.2.2 Segunda Generacin 2-G ......................................................................... 10
1.2.3 Generacin Dos Punto Cinco 2.5-G .......................................................... 11
1.2.4. Tercera Generacin 3-G .......................................................................... 11
1.3 Tipos de dispositivos mviles. ......................................................................... 12
1.3.1 PDA (Personal Digital Assistant) ............................................................... 14
1.3.2 Cmaras Digitales ..................................................................................... 16
1.3.3 IPod........................................................................................................... 17
1.3.4 Consola Porttil ......................................................................................... 18
1.3.5 Smartphone............................................................................................... 18
1.3.5.1 Arquitectura de un Smartphone .......................................................... 20
1.3.6 Conectividad ............................................................................................. 21
1.3.7 Aplicaciones Mviles ................................................................................. 21
1.3.7.1 Tipos de aplicaciones mviles ............................................................ 22
1.3.8 Principales plataformas de desarrollo. ...................................................... 23
Captulo II: Generalidades de Sistemas Operativos para Aplicaciones Mviles.... 23
2.1 Sistemas Operativos para Mviles .................................................................. 25
2.2 Android ............................................................................................................ 25
2.1.1 Historia ...................................................................................................... 26
2.1.2 Arquitectura ............................................................................................... 26
2.1.3 Seguridad en Android ............................................................................... 28
2.1.4 Componentes de una aplicacin ............................................................... 30
2.1.5 Kit de desarrollo ........................................................................................ 31
2.2 Symbian .......................................................................................................... 33
IV
2.2.1 Historia ...................................................................................................... 34
2.2.2 Caractersticas principales ........................................................................ 35
2.2.3 Lenguaje que soporta ............................................................................... 36
2.2.4 Arquitectura ............................................................................................... 36
2.2.5 Kit de desarrollo ........................................................................................ 37
2.3 IOS (IPhone) ................................................................................................... 38
2.3.1 Historia ...................................................................................................... 39
2.3.2 Arquitectura ............................................................................................... 39
2.3.3 Caractersticas Principales ........................................................................ 40
2.3.4 Kit de desarrollo ..................................................................................... 42
2.4 BlackBerry OS ................................................................................................. 44
2.4.1 Historia ...................................................................................................... 45
2.4.2 Arquitectura ............................................................................................... 45
2.4.3 Caractersticas principales ........................................................................ 52
2.4.4 Kit de desarrollo ........................................................................................ 52
2.5 Windows Phone .............................................................................................. 53
2.5.1 Historia ...................................................................................................... 54
2.5.2 Arquitectura ............................................................................................... 55
2.5.3 Caractersticas principales ........................................................................ 56
2.5.4 Kit de desarrollo ........................................................................................ 57
Captulo III: Bases de Datos para Aplicaciones Mviles ....................................... 58
3.1 Sistemas Gestores de Bases de Datos Mviles .............................................. 60
3.1.1 Aplicaciones mviles y tipos de datos ....................................................... 61
3.2 Oracle Database Lite 10g ................................................................................ 62
3.2.1 Arquitectura de las aplicaciones de Oracle Database Lite 10g ................. 62
3.2.2 Caractersticas principales ........................................................................ 64
3.2.3 Principales beneficios ............................................................................... 66
3.3 SQL Anywhere ................................................................................................ 67
3.3.1 Arquitectura de SQL Anywhere ................................................................. 67
3.3.3 Casos de Uso en Aplicaciones Mviles .................................................... 67
3.3.4 Principales beneficios ............................................................................... 70
V
3.4 SQLite ............................................................................................................. 71
3.4.1 Arquitectura SQLite ................................................................................... 72
3.4.2 Principales Caractersticas ........................................................................ 73
3.4.3 Casos en los que es adecuado el uso de SQLite...................................... 74
3.4.4 Limitaciones .............................................................................................. 75
3.5 Almacenamiento Aislado ................................................................................. 75
CONCLUSIONES.................................................................................................. 77
FUENTES DE INFORMACIN ............................................................................. 82
GLOSARIO............................................................................................................ 84
NDICE DE FIGURAS ........................................................................................... 88
VI
RESUMEN
1
INTRODUCCIN
El mundo de la tecnologa es cambiante. El pasado es hace un ao, y el futuro es
dentro de un minuto. Esto se acenta en la tecnologa mvil, donde los cambios
son constantes. Una empresa dedicada al desarrollo de software para mvil, no
puede permitirse el desconocer las plataformas ms importantes que envuelven el
mercado.
Cabe mencionar que los dispositivos mviles tienen utilidades varias, la principal
es la comunicacin; sin embargo el crecimiento tecnolgico y las necesidades
banales de las personas han incrementado el uso de estos aparatos no solo para
realizar llamadas o mensajes sino tambin para su diversin, entretenimiento y
organizacin con juegos interactivos, msica, calendarios, agendas, relojes,
calculadoras todos ellos llamados como widgets que no son ms que mini
3
aplicaciones o programas que son diseados para proveer informacin y mejorar
la apariencia de los dispositivos.
Se hace hincapi en que existen varios sistemas operativos pero los fabricantes
solo utilizan algunos y sobre todo cuando son marcas propias como lo es IOS
propio de IPhone entre otros. Los SO mviles ms utilizados hoy en da son
Symbian, Android, Blackberry OS, IOS y Windows Phone, cada uno de ellos con
sus caractersticas propias, arquitectura, lenguaje y diseo propio cada uno
ciertamente competitivo.
En el captulo final hacemos mencin de bases de datos para mviles otra parte
muy importante para la creacin de aplicaciones ya que estos nos permiten la
portabilidad de la informacin siempre y cuando tengamos conexin a internet,
4
tambin nos proporciona la independencia de datos en los programas y procesos
ya que permiten acceder a los datos sin cambiar de aplicacin.
5
CAPTULO I: DISPOSITIVOS MVILES
1.1 Definicin
Los dispositivos mviles son aparatos de tamao pequeo que cuentan con
caractersticas tales como capacidades especiales de procesamiento, conexin
permanente o intermitente a una red, memoria limitada, diseos especficos para
una funcin especial y versatilidad para el desarrollo de otras funciones, tanto su
posesin como su operacin se asocia al uso individual de una persona, lo cual
puede configurarlos a su gusto (UNAM, 2010).
La telefona mvil usa ondas de radio para poder ejecutar todas y cada una de las
operaciones, realizar una llamar, mandar un mensaje de texto, entre otras, y esto
es producto de lo que sucedi hace algunas dcadas (Fernndez & Fernndez,
2004).
7
La comunicacin inalmbrica tiene sus races en la invencin del radio por Nikola
Tesla en los aos 1880, aunque formalmente presentado en 1894 por un joven
italiano llamado Guglielmo Marconi.
Fue slo cuestin de tiempo para que las dos tecnologas de Tesla y Marconise
unieran y dieran a la luz la comunicacin mediante radio-telfonos: Martin Cooper,
pionero y considerado como el padre de la telefona celular, al introducir el primer
radio telfono, en 1973, en Estados Unidos, mientras trabajaba para Motorola.
En conclusin, este fue el inicio de una de las tecnologas que tuvo gran
aceptacin, en sentido a la necesidad de desarrollar e implementar otras formas
de acceso mltiple al canal, y transformar los sistemas analgicos y digitales, con
el objeto de darles capacidad a ms usuarios.
8
1.2.1 Primera Generacin 1-G
Hizo su aparicin 1979 y se caracteriz por ser anloga y estrictamente para voz,
es decir que la transmisin y recepcin de datos se apoyaba sobre un conjunto de
ondas de radio que cambiaban de modo continuo. La calidad de los enlaces era
muy baja, tenan poca velocidad (2400 bauds) y en cuanto a la transferencia era
muy imprecisa.
9
1.2.2 Segunda Generacin 2-G
Estndares ms utilizados.
10
GPRS (General Packet Radio Service/Servicio General de Radio por
Paquetes).
Las conexiones GPRS estn siempre abiertas, lo que permite a los usuarios de
terminales mviles el mismo tipo de disponibilidad de red que la que puede
obtenerse en las redes empresariales. No hay tiempos de establecimiento ni de
liberacin asociados con las llamadas de datos efectuadas va GPRS. Por tanto,
los terminales pueden formar parte efectiva de la Internet.
11
Todo este conjunto de nuevos servicios integrados en el terminal junto con un
nuevo estndar dieron lugar a la denominada hoy en da tercera generacin de
mviles o mviles 3G, siendo esta la tecnologa actual.
Estndar ms utilizado:
Dicho la anterior, los dispositivos mviles pueden ser clasificados en los siguientes
grupos (Ort Pascual, 2011):
12
Dispositivo de comunicacin
Dispositivo de computacin
Reproductor multimedia
13
encontramos reproductores de MP3, los DVD porttiles, los eBooks, y en los
ltimos aos los reproductores multimedia de la popular familia iPod de Apple, que
ofrecen tanto audio y como vdeo. Estos dispositivos son con frecuencia los de
ms reducido tamao y, junto a los telfonos mviles y smartphones, los ms
extendidos.
Grabador multimedia
Consola porttil
14
A los PDAs tambin se les llama palmtops, handheld computers (computadoras de
mano) y pocket computers (computadoras de bolsillo). Un PDA tpico puede
funcionar como telfono mvil, fax, explorador de internet, organizador personal,
GPS, etc.
15
1.3.2 Cmaras Digitales
En las cmaras digitales, las imgenes, quedan registradas en una placa que
posee millones de sensores, la cual traspasa la informacin, a la memoria.
Elemento electrnico, donde se archivan o almacenan las imgenes obtenidas.
16
1.3.3 IPod
17
1.3.4 Consola Porttil
1.3.5 Smartphone
18
Entre dichas caractersticas, se puede encontrar una mejora en la capacidad de
proceso y almacenamiento de datos, conexin a Internet mediante Wi-Fi, pantalla
tctil, acelermetro, posicionador geogrfico, teclado QWERTY y diversas
aplicaciones de usuario como navegador web, cliente de correo, aplicaciones
ofimticas, reproductores de vdeo y audio, etc. incluyendo la posibilidad de
descargar e instalar otras nuevas.
Estas limitaciones obligan a tener muy presente la capacidad real del dispositivo a
la hora de desarrollar su software, ya sean aplicaciones de usuario o el propio
sistema operativo.
19
1.3.5.1 Arquitectura de un Smartphone
20
1.3.6 Conectividad
Otros
Cable Serial/USB
Bluetooth
Infrarrojo
21
1.3.7.1 Tipos de aplicaciones mviles
1. Aplicaciones de sistema.
Estas aplicaciones estarn relacionadas al funcionamiento de nuestro
terminal, como podran ser compresores de archivos, seguridad del terminal,
registro de llamadas, gestin de mensajes, etc.
2. Aplicaciones ofimticas.
Las aplicaciones ofimticas son aquellas que nos permiten trabajar con
documentos de texto, hojas de clculo, archivos PDF, etc.
3. Organizacin.
Este tipo de aplicaciones irn destinadas a la organizacin de nuestros datos,
contactos, notas, entre otros, como podran ser el calendario, gestor de
contactos, etc.
4. Aplicaciones web.
Para poder utilizar este tipo de aplicaciones har falta una conexin de
Internet en nuestro mvil. Un ejemplo de este tipo de aplicaciones seran el
GPS, correo electrnico, Google Maps, navegadores web, etc.
5. Aplicaciones Sociales.
Dedicadas a las redes sociales como son Facebook, Twitter, Hi5, etc.
22
6. Aplicaciones de accesibilidad.
Este tipo de aplicaciones facilitar el uso del terminal para personas con algn
tipo de discapacidad. Ejemplos de estas aplicaciones son el reconocimiento de
voz, reconocimiento de caracteres, lectura de texto, etc.
7. Aplicaciones de Multimedia.
Permiten a los usuarios moverse por la informacin de modo intuitivo. Algunas
de las ms utilizadas son las aplicaciones que, ya sea mediante 3G o
conexin wifi, permiten al usuario mantenerse en contacto con otros sin
necesidad de enviar mensajes SMS ni hacer llamadas cortas de telfono.
23
Captulo II: Generalidades de Sistemas Operativos
para Aplicaciones Mviles
2.1 Sistemas Operativos para Mviles
Los dispositivos mviles tambin tienen sus propios sistemas operativos, aunque
son menos famosos que los de PC. Por norma general, antes de la compra de un
dispositivo son pocos los usuarios que atienden al sistema operativo que se instala
en dicho dispositivo ya sea PDA, Pocket PC, PSP entre otros y mucho menos lo
hacen en un telfono inteligente.
2.2 Android
25
2.1.1 Historia
Aunque los inicios fueran un poco lentos, debido a que se lanz antes el sistema
operativo que el primer mvil, rpidamente se ha colocado como el sistema
operativo de mviles ms vendido del mundo, situacin que se alcanz en el
ltimo trimestre de 2010.
2.1.2 Arquitectura
26
Cuenta con su propia mquina virtual, Dalvik, que interpreta y ejecuta
cdigo escrito en Java.
Permite la representacin de grficos 2D y 3D.
Posibilita el uso de bases de datos.
Soporta un elevado nmero de formatos multimedia.
Servicio de localizacin GSM.
Controla los diferentes elementos hardware: Bluetooth, Wi-Fi, cmara
fotogrfica o de vdeo, GPS, acelermetro, infrarrojos, etc., siempre y
cuando el dispositivo mvil lo contemple.
Cuenta con un entorno de desarrollo muy cuidado mediante un SDK
disponible de forma gratuita.
Ofrece un plug-in para uno de los entornos de desarrollo ms populares,
Eclipse, y un emulador integrado para ejecutar las aplicaciones.
27
memoria, gestin de procesos, mdulos de seguridad, comunicacin en red y
otras muchas responsabilidades propias de un sistemas operativo.
La siguiente capa se corresponde con las libreras utilizadas por Android. stas
han sido escritas utilizando C/C++ y proporcionan a Android la mayor parte de sus
capacidades ms caractersticas. Junto al ncleo basado en Linux, estas libreras
constituyen el corazn de Android.
Al mismo nivel que las libreras de Android se sita el entorno de ejecucin. ste
lo constituyen las CoreLibraries, que son libreras con multitud de clases de Java,
y la mquina virtual Dalvik.
El ltimo nivel del diseo arquitectnico de Android son las aplicaciones. ste nivel
incluye tanto las incluidas por defecto de Android como aquellas que el usuario
vaya aadiendo posteriormente, ya sean de terceras empresas o de su propio
desarrollo. Todas estas aplicaciones utilizan los servicios, las API y libreras de
los niveles anteriores. Figura 2.1.
28
Figura 2.1 Arquitectura Android
Fuente: http://www.xatakandroid.com/sistema-operativo/que-es-android
29
(contactos, telfonos, etc.), leer o escribir archivos de otras aplicaciones, acceso
de red, habilitacin de algn recurso hardware del dispositivo, etc., no estn
permitidas. La nica forma de poder saltar estas restricciones impuestas por
Android, es mediante la declaracin explcita de un permiso que autorice a llevar a
cabo una determinada accin habitualmente prohibida.
Activity
Sin duda es el componente ms habitual de las aplicaciones para Android. Un
componente Activity refleja una determinada actividad llevada a cabo por una
aplicacin, y que lleva asociada tpicamente una ventana o interfaz de usuario; es
importante sealar que no contempla nicamente el aspecto grfico, sino que ste
forma parte del componente Activity a travs de vistas representadas por clases
como View y sus derivadas. Este componente se implementa mediante la clase de
mismo nombre Activity.
30
BroadcastIntent Receiver
Un componente BroadcastIntent Receiver se utiliza para lanzar alguna ejecucin
dentro de la aplicacin actual cuando un determinado evento se produzca
(generalmente, abrir un componente Activity). Por ejemplo, una llamada entrante
o un SMS recibido. No tiene interfaz de usuario asociada, pero puede utilizar el
API Notification Manager, mencionada anteriormente, para avisar al usuario del
evento producido a travs de la barra de estado del dispositivo mvil. Este
componente se implementa a travs de una clase de nombre BroadcastReceiver.
Service
Un componente Service representa una aplicacin ejecutada sin interfaz de
usuario, y que generalmente tiene lugar en segundo plano mientras otras
aplicaciones (stas con interfaz) son las que estn activas en la pantalla del
dispositivo.
Content Provider
Con el componente Content Provider, cualquier aplicacin en Android puede
almacenar datos en un fichero, en una base de datos SQLite o en cualquier otro
formato que considere. Adems, estos datos pueden ser compartidos entre
distintas aplicaciones. Una clase que implemente el componente Content Provider
contendr una serie de mtodos que permite almacenar, recuperar, actualizar y
compartir los datos de una aplicacin.
31
Resumen de los pasos que debe seguir para configurar el SDK de Android:
Lnea de comandos
En todos los entornos de desarrollo, siga estos pasos para acceder a la
herramienta SDK de Android y AVD Manager desde la lnea de comandos:
1. Vaya a la < sdk > / tools / directorio.
2. Ejecutar el androide comando de la herramienta, sin opciones.
32
Los siguientes son los pasos para instalar los nuevos componentes de SDK en su
entorno:
2.2 Symbian
33
El objetivo de Symbian fue crear un sistema operativo para terminales mviles que
pudiera competir con el de Palm o el Windows Mobile de Microsoft y ahora
Android de Google Inc., IOS de Apple Inc. y Blackberry 6 RIM.
2.2.1 Historia
34
Figura 2.2 Mercado de Symbian
Fuente: http://www.darkclockers.com/foros/thread-4886.html
35
2.2.3 Lenguaje que soporta
2.2.4 Arquitectura
36
2.2.5 Kit de desarrollo
Los SDK oficiales contienen documentacin, los headers, las libreras necesarias
para compilar un software Symbian, emuladores basados en Windows y un
compilador. Hasta la versin 8 se incluye como compilador GCC, la versin 9 usa
una nueva ABI (application binary interface) y requiere un compilador distinto.
Acaba de salir la versin 1.2, lleva modificaciones para solucionar algunos fallos,
nuevos ejemplos y nuevas utilidades, como un emulador de recepcin/envo de
SMS. Adems no incorpora los programas de "3rd parties", as que es necesario
instalar por nuestra cuenta JRE 1.3.1 y Active Perl 518 o superiores.
Compilador de C++
Puedes usar Visual Studio C++ 6.0, o la versin de Borland preparada para
dispositivos mviles. El kit de Borland puede ser descargado de la pgina Web de
37
Nokia, este viene con el paquete completo para realizar aplicaciones en C++
Borland C++ Builder 6.0 con licencia gratis para usarlo en programas para
telfonos mviles y Nokia Add-on. Este kit viene con la versin 0.9 del SDK de
Nokia con una versin de Perl que es ms nueva que la que viene por defecto en
el SDK 0.9 cuando se instala aparte. Tambin es posible usar .NET.
Sistema Operativo
Windows 2000 SP2
Windows XP SP1
Windows NT SP6
Instalacin
Primero instala el SDK, es aconsejable que se mantengan las opciones por
defecto, si por alguna razn prefieres cambiarlas, asegrate que:
El IOS es el sistema operativo que utiliza el iPhone y el iPod touch e Ipad. Est
basado en una variante de mach kernel que se encuentra en Mac OS X. Este
sistema operativo no tena un nombre oficial hasta que sali la primera versin
beta de iPhone SDK, el 6 de marzo de 2008. Antes de esto, Apple declar, que el
iPhone controla un sistema operativo X, una referencia al padre de los sistemas
operativos de los iPhone, el Mac OS X.
38
2.3.1 Historia
Los primeros das muchas unidades del iPhone 3G fallaron por sobrecarga en los
servidores Apple de iTunes. Apple vendi un milln de iPhone 3G en sus 3
primeros das de venta.
Hasta hace poco era llamado iPhone OS, pero desde que funciona en tres
dispositivos distintos, fue nombrado IOS el 7 de junio de 2010.
2.3.2 Arquitectura
IOS tiene 4 capas de abstraccin: la capa del ncleo del sistema operativo, la
capa de Servicios Principales, la capa de Medios de Comunicacin y la capa de
Cocoa Touch. Vase figura 2.4
CORE OS
1. El kernel de OSX 6. Gestin de energa
2. Sistema de bibliotecas 7. Keychain
3. La pila TCP/IP 8. Certificados
4. Sockets 9. Sistemas de archivos
5. Seguridad 10. Bonjour
39
CORE SERVICES
1. Colecciones 6. Core location
2. Agenda de direcciones 7. Net services
3. Redes 8. Treading
4. Acceso a archivos 9. Preferencias
5. SQL Lite 10. Utilidades de URL
MEDIA
1. Core Audio 6. manejo de jpg, png, tiff, pdf
2. openAL 7. quartz (2d)
3. mezclador de sonido 8. Core animation
4. grabacin de audio 9. OpenGL ES
5. reproduccin de video
COCOA TOUCH
1. Eventos y controles multi touch 6. Vista web
2. Soporte del acelermetro 7. Selector de contactos
3. Vista jerrquica 8. Selector de imgenes
4. Localizacin de aplicaciones 9. Soporte de la cmara
5. Alertas
Notificaciones:
1. Desde la parte superior de la pantalla, deslice el dedo hacia abajo para
ver el centro de notificaciones.
2. Las notificaciones nuevas aparecen brevemente en la parte superior de
la pantalla.
3. Puede ver las notificaciones desde la pantalla bloqueada.
40
Figura 2.4 Arquitectura IOS (iPhone)
Fuente:http://www.maestrosdelweb.com/editorial/guia-desarrollo-iphone-ipad/
Quiosco:
Las suscripciones a peridicos y revistas se ordenan automticamente en la
pantalla de inicio.
41
Mejoras de accesibilidad:
1. En el iPhone, cree secuencias de vibracin personalizadas para las
llamadas entrantes.
2. Nueva interfaz para usar IOS junto con dispositivos pensados para
ayudar a personas con movilidad reducida.
Para que el SDK del iPhone compile cdigo ARM que es la arquitectura del
sistema real es necesario firmar la aplicacin, lo que requiere la certificacin de
Apple. Una nueva firma es necesaria para distribuir la aplicacin y por supuesto, si
queremos que esta est disponible en el app Store deberemos solicitar la
aprobacin de Apple.
42
1. Inscribirse en el iPhone Dev Center, aceptar todas las condiciones legales,
y descargar el SDK. Haciendo esto podemos empezar a escribir nuestras
aplicaciones, compilarlas y probarlas en el simulador. Pero todava NO
podremos instalarlas en nuestro iPhone.
43
Xcode; proceso sobre el que Apple facilita muchas pginas de informacin
con toda clase de capturas en las que se detalla el modo de reconfigurar el
proyecto de Xcode para que utilice este certificado de distribucin
6. Enviar la aplicacin a Apple a travs de un nuevo formulario web con
informacin sobre esta (nombre, descripcin, versin y mucho mas), su
icono y algunas capturas de pantalla
7. Esperar Una vez enviada, la aplicacin pasa a la cola de revisin, sin que
sepamos en ningn momento lo que se est haciendo, el estado de la
solicitud, o cuanto queda para que termine el proceso. Si la aplicacin no es
aceptada por el motivo que sea, no habr ayuda al respecto, solo se puede
hacer los arreglos necesarios y volverla a enviar a travs de un enlace con
el que enviamos nuevas versiones de una misma aplicacin. Si los
problemas continan, habr que esperar una semana para saberlo y ver si
la solucin que has dado resuelve satisfactoriamente el problema
2.4 BlackBerry OS
44
2.4.1 Historia
La versin 3.6 fue lanzado para el Blackberry 5810 smartphone en marzo de 2002.
En abril de 2010, RIM anunci la nueva versin de Blackberry OS 6.0, que fue
lanzado en el Q3 de 2010.
Los rumores de un 6.1 OS comenzaron en el barrio 1a/2a 2011 junto con las
imgenes del nuevo software.
2.4.2 Arquitectura
45
Figura 2.5 Arquitectura Blackberry OS
Fuente:http://www.slideshare.net/foward/curso-blackberry-academic-program
46
Figura 2.6 Movil Data System (MDS)
Fuente: http://www.slideshare.net/foward/curso-blackberry-academic-program
47
Figura 2.7 WAP
Fuente: http://www.slideshare.net/foward/curso-blackberry-academic-program
48
Figura 2.8 Blackberry Internet Service (BIS)
Fuente: http://www.slideshare.net/foward/curso-blackberry-academic-program
49
Figura 2.9 TCP
Fuente: http://www.slideshare.net/foward/curso-blackberry-academic-program
El transporte TCP mvil crea una conexin a Internet a travs del gateway de
Internet de un proveedor de servicios inalmbricos. Este mtodo crea el tipo ms
directo de conexin que a travs de la radio mvil. Ver figura 2.9.
50
Figura 2.10 TCP Wi-Fi
Fuente: http://www.slideshare.net/foward/curso-blackberry-academic-program
El transporte Wi-Fi crea una conexin a Internet o a redes privadas como una
domstica o la de una empresa. Cuando la radio Wi-Fi se enciende, un usuario de
dispositivo BlackBerry o una aplicacin pueden configurar el dispositivo para que
se conecte a Internet mediante este transporte. Vase figura 2.10.
51
2.4.3 Caractersticas principales
52
Incluye la integracin clave de solicitudes de especificacin Java (JSR), las
cuales permiten usar los ltimos desarrollos de Java ME para crear
aplicaciones superiores para dispositivos mviles.
Le permite aprovechar los puntos fuertes exclusivos del desarrollo para la
plataforma BlackBerry, entre otros:
53
inteligentes (Smartphones) y otros dispositivos mviles. Windows Phone hace
parte de los sistemas operativos con interfaz natural de usuario.
2.5.1 Historia
54
2011 Junio: Versin 7.1.7661.0 Mango desarrollo Beta (ciertos servicios pblicos
no est disponibles en esta versin, como por ejemplo Twitter).
2011 Ago: WP7 dispositivos por popularidad. (HTC 7 Pro 1%, Dell Venue Pro
0.2%, HTC Arrive 2%, HTC Mazaa 0.2%)
2.5.2 Arquitectura
55
Como todo sistema operativo, tenemos 2 reas fundamentales, el kernel y
nonkernel (traduccin a gusto de lector); El kernel posee obviamente el ncleo, 2
sistemas de archivos (IMGFS y TexFAT), render grfico y actualizacin de
sistema, mientras la parte nonkernel contiene las aplicaciones, la shell y espacio
de usuario.
56
Sincronizacin posibilidad de interaccin con los archivos office.
Sistema de seguridad desde nuestro PC, podremos llamar a nuestro
telfono en caso de haberlo perdido, bloquearlo, localizarlo e incluso borrar
parte de su contenido de forma remota.
Cada Hub (Marketplace, Office, gente, retratos, Xbox Live y Zune) tiene una
estrecha integracin con las aplicaciones nativas y de terceros.
Microsoft provee en forma gratuita el Software Development Kits SDK que incluye
todo lo necesario para el desarrollo de aplicaciones en la plataforma Windows
Phone, pero para instalarlo necesitaremos, como se indica en la seccin de
requisitos de la pgina de descargas, el Microsoft Visual Studio 2005 Standard
Edition o superior (No est soportado el Visual Estudio Express Editions), esto
implica que para desarrollar en WP sea necesario adquirir una licencia de Visual
Studio 2005 o superior.
Una vez descargado e instalado el SDK tendremos todo lo necesario para realizar
aplicaciones para WP incluyendo emuladores (imgenes ROM) para los distintos
tamaos de pantalla de los dispositivos en mercado.
Se pueden desarrollar dos tipos de aplicaciones para Windows Mobile: con cdigo
nativo o con cdigo administrado (managedcode). Llamamos cdigo nativo al
cdigo C++ que utiliza directamente la API de Windows Phone, y cdigo
administrado al que utiliza las clases del .NET Compact Framework con C# o
VB.Net. (Windows Mobile es la nica plataforma mvil importante que no soporta
J2ME).
57
Gua de instalacin de las herramientas de WP.
58
Captulo III: Bases de Datos para Aplicaciones
Mviles
3.1 Sistemas Gestores de Bases de Datos Mviles
60
3.1.1 Aplicaciones mviles y tipos de datos
En las aplicaciones verticales, los usuarios acceden a los datos en una celda
especfica; fuera de la celda los datos no estn disponibles. Un ejemplo de
aplicacin vertical es la obtencin de informacin sobre las plazas libres de un
determinado parking. En las aplicaciones horizontales, los datos estn distribuidos
por todo el sistema, y los usuarios pueden acceder a ellos desde cualquier celda.
La aplicacin horizontal ms comn es el acceso al correo electrnico.
2. Datos pblicos: pueden ser consultados por cualquier usuario, pero slo
pueden ser modificados por una nica fuente. Por ejemplo, los datos de las
cotizaciones de la bolsa.
61
3.2 Oracle Database Lite 10g
62
Mobile Server: servidor intermedio entre los dispositivos mviles y el
servidor empresarial. Permite la instalacin y actualizacin de aplicaciones
en los dispositivos mviles y se comunica con el mdulo Mobile Sync para
sincronizar los datos entre el dispositivo mvil y el servidor empresarial.
63
3.2.2 Caractersticas principales
Sistema de Sincronizacin
Las redes nunca son 100 % seguras. Oracle Database Lite incluye sistemas
avanzados de recuperacin ante cualquier fallo de la red. Adems mantiene
actualizado un marcador de recuperacin (point-in-time). Si un usuario
experimenta un fallo de la red durante la sincronizacin Oracle Lite resumir las
funciones (upload/download), desde la ltima marca. Esto mejora en conjunto el
rendimiento de la aplicacin y reduce el costo de comunicacin.
Administracin de sistema
64
Una administracin de interfaz basada 100% en web, administracin de todas las
aplicaciones mviles, dispositivos, usuarios y servicios mviles.
Soport de Desarrollo
Los entornos de desarrollo de Oracle Lite 10g incluyen soporte para herramientas
Java y .NET tales como Oracle JDeveloper 10g y Microsoft Visual Studio .NET.
Tambin soporta la interface Microsoft ADO.NET, brindando a los desarrolladores
integracin, productividad y desempeo entre los entornos Java y .NET. Las
aplicaciones pueden crearse utilizando lenguajes de programacin como Java,
C/C++ y Visual Studio para plataformas, con inclusin de Linux, Windows
CE/NT/2000/XP/2003, Palm OS, y Pocket PC.
65
Seguridad
66
3.3 SQL Anywhere
67
Figura 3.2 Arquitectura SQL Anywhere
Fuente: http://www.sybase.com.mx/products/databasemanagement/sqlanywhere
68
Gestionar datos mviles
Sincronizar bases de datos mviles con una Oracle, Microsoft SQL Server,
MySQL, Sybase ASE o SQL Anywhere y otros sistemas empresariales
como SAP y sistemas de informacin geoespacial.
69
Facilitar el desarrollo de aplicaciones
70
Soporta una gran variedad de sistemas operativos, desde servidores UNIX de 64
bits, hasta XP embebido y plataformas populares handheld, para proveer la ms
alta flexibilidad en el despliegue de una base de datos SQL.
3.4 SQLite
71
Combina el motor y el interfaz de la base de datos en una nica biblioteca, y
almacena los datos en un nico archivo de texto plano. Esto hace que cada
usuario pueda crear tantas bases de datos como desee sin la necesidad de la
intervencin de un administrador de bases de datos que gestione los espacios de
trabajo, usuarios y permisos de acceso. El hecho de almacenar toda la base de
datos en un nico archivo, facilita la portabilidad de los datos, y solamente tiene la
restriccin del espacio de disco asignado al usuario en el servidor.
Cada motor de base de datos compila cada sentencia SQL en algn tipo de
estructura de datos interna que luego se utilizar para llevar a cabo la labor de la
declaracin. En SQLite, compilar la forma de las declaraciones es un breve
programa en un lenguaje de mquina como representacin. Los usuarios
podemos ver la mquina virtual antes poniendo EXPLAIN como palabra clave para
una consulta. El uso de la VM dentro de SQLite ha sido un gran beneficio para el
72
desarrollo de la biblioteca, ya que proporciona un cruce entre la interfaz de usuario
que analiza las sentencias SQL y la par-te en la cual la mquina virtual ejecuta el
cdigo para calcular el resultado, as tambin utilizar la capacidad de rastreo de la
ejecucin de la VMen cada sentencia e imprimir las mismas.
Embebido
La mayora de motores de bases de datos, como MySQL, Oracle o SQL Server,
estn implementados como un servicio (o demonio en Unix). Los programas que
quieren acceder a la base de datos se comunican con el servidor usando algn
tipo de protocolo para enviar peticiones y recibir resultados. Esto es lo que se
conoce como una aplicacin cliente-servidor.
SQLite no funciona de esta manera. Con SQLite, el proceso que quiere acceder a
la base de datos, lee y escribe directamente en disco. No hay servicio
intermediario. De esta manera se puede hacer una aplicacin totalmente
autnoma y portable.
Por otro lado, el uso de un servidor para la base de datos provee mayor proteccin
frente a bugs en el lado de cliente. Un fallo de segmentacin en el cliente no
puede afectar a la memoria que se encuentra en el servidor. Adems, como el
servidor es un nico proceso, puede controlar mejor la concurrencia.
73
No obstante, una caracterstica de SQLite es que es la nica base de datos sin
servidor (que el autor sepa) que permite el acceso de mltiples aplicaciones a la
misma base de datos.
No necesita configuracin
Debido a que SQLite es un SGBD embebido en la aplicacin, no necesita instalar
ni configurar nada ms aparte de la aplicacin en cuestin.
Transaccional
Una base de datos transaccional es aquella cuyos cambios y consultas son
atmicos, consistentes, aislados y durables (ACID), y por tanto es capaz de
realizar transacciones seguras. Las transacciones en SQLite tienen estas
caractersticas, incluso cuando se interrumpen por el fallo del programa, del
sistema operativo o de la alimentacin del ordenador. Todos los cambios de una
transaccin en SQLite se hacen completamente o nose hacen.
74
3.4.4 Limitaciones
75
Por otra parte el almacenamiento aislado tambin tiene algunas ventajas
potentes. Mientras que proporciona un diccionario de configuracin similar a la
configuracin de pgina y aplicacin que se ha descrito anteriormente, tambin le
permite organizar los datos en carpetas y archivos. De hecho, cualquier tipo de
archivo: XML, binario o texto, se puede crear y acceder en el almacenamiento
aislado. No hay ninguna cuota para el tamao de almacenamiento aislado en el
telfono, por lo que efectivamente est limitado por la cantidad de memoria y
almacenamiento de informacin disponible en el telfono. El nico inconveniente
es que el proceso de escribir para almacenamiento y recuperacin de
almacenamiento de informacin es un poco ms lento que los otros mtodos que
almacenan las listas en la memoria activa.
Controles descargados.
Los controles de cdigo administrado descargados de Internet no tienen permiso
para escribir en el disco duro mediante clases de E/S normales, pero puede usar
el almacenamiento aislado para almacenar la configuracin del usuario y los
estados de la aplicacin.
Almacenamiento en servidor.
Las aplicaciones de servidor pueden usar el almacenamiento aislado para
proporcionar almacenes individuales a un gran nmero de usuarios que hacen
solicitudes a la aplicacin. Puesto que el almacenamiento aislado siempre se asla
por usuario, el servidor debe suplantar al usuario que hace la solicitud. En este
caso, los datos se aslan basndose en la identidad de seguridad, que es la
identidad que usa la aplicacin para diferenciar a los usuarios.
76
Movilidad.
Las aplicaciones pueden usar tambin el almacenamiento aislado con perfiles de
usuario mvil. De esta manera los almacenes aislados de un usuario se pueden
trasladar con el perfil.
Muchas de las aplicaciones actuales usan bases de datos para almacenar y aislar
los datos y, en ese caso, una o varias filas de la base de datos pueden representar
el almacenamiento de un usuario concreto. Se puede elegir usar el
almacenamiento aislado en lugar de una base de datos si el nmero de usuarios
es reducido, si la sobrecarga resultante de usar una base de datos es alta o si no
existe una utilidad de bases de datos. Adems, si la aplicacin requiere un tipo de
almacenamiento ms flexible y complejo que el que ofrece una fila de una base de
datos, el almacenamiento aislado puede ser una alternativa viable.
77
CONCLUSIONES
En la actualidad, el desarrollo de aplicaciones mviles se ha convertido en un gran
negocio. Debido a la utilizacin masiva de telfonos mviles y telfonos
inteligentes, muchas empresas han percibido el valor de este negocio en el
proceso de desarrollo de aplicaciones mviles. Estas aplicaciones pueden ser
preinstaladas en los dispositivos mviles o se pueden descargar por el usuario
final de plataformas de distribucin mviles diferentes.
79
Es importante contar con un ambiente de mejora que ofrezca a los desarrolladores
facilidad de aprendizaje y la posibilidad de generar cdigo administrado debido a
las exigencias de los mercados de lograr desarrollos rpidos, confiables y que
puedan ser liberados en el menor tiempo posible. Con lo anterior darn nuevos
servicios y tambin una mejor calidad de vida a los seres humanos, acercndonos
al ideal de Sociedad de la Informacin y el Conocimiento.
Basndonos en todo esto sin duda alguna podremos decir que nuestra tecnologa
enfocada en dispositivos mviles ha evolucionando satisfactoriamente durante un
periodo corto de tiempo, no podemos dejar de mencionar que as como evoluciono
dicha tecnologa en un par de aos podremos disfrutar aun mas una amplia
modernizacin de dispositivos sofisticados y con una arquitectura ms compleja.
Como lo vimos en el presente trabajo Android, Blackberry as como IPhone son sin
duda alguna los dispositivos que abarcan un mercado de aplicaciones basadas
en tecnologa mvil; la gran demanda de cada uno los respalda como lderes en
ventas con tan innovadores y sofisticados telfonos inteligentes que se asemejan
80
a una laptop pero a su vez mas portables y prcticas en el uso y los costos de
estos mismos.
Todos estos dispositivos muy bien equipados a la vista del pblico totalmente
distintos en arquitectura, diseo y lenguaje de programacin como ya lo notamos
pero completamente semejantes uno del otro, sobretodo en su funcionamiento.
Mucho hemos hablado sobre toda este tipo tecnologa sin embargo es solo un
grano de arena dentro de un desierto de informacin, se dio la informacin ms
actual sobre este tipo de dispositivos y sus funciones bsicas que los hacen tan
especiales.
Un juego, un programa, una base de datos son una de las mayores posibilidades
de desenvolvimiento como desarrollador de pequeas aplicaciones hasta lograr
algo ms complejo sea un nuevo lenguaje de programacin sobre cualquier
plataforma.
81
FUENTES DE INFORMACIN
82
Malla, P. (2008). Oracle Lite 10g. Consultado en diciembre 28, 2011 en
http://www.slideshare.net/pemalla64/oracle-lite-10-i-presentation
Rosell, A. & Vergara, M. & Blanco, M. (2009). Bases de datos federadas y bases
de datos mviles. Consultado en diciembre 27, 2011 en http://alarcos.inf-
cr.uclm.es/doc/bbddavanzadas/08-09/Presentaci%C3%B3n-Distribucion2.pdf
83
(2010). Belatrix software Factory. Consultado en diciembre 5, 2011 en
http://www.belatrixsf.com/index.php/spdesarrollosmoviles#3.1.1
84
GLOSARIO
API: Conjunto de rutinas, procedimientos, protocolos, funciones y herramientas
que una determinada biblioteca pone a disposicin para que sean utilizados por
otro software como una capa de abstraccin.
App Store: es como una tienda virtual de Apple (al estilo de iTunes) que los
desarrolladores crearon para la red y desde la que se pueden descargar todo tipo
de herramientas mviles para el iPhone y el iPod Touch.
Kernel: (Ncleo) Parte esencial de un sistema operativo que provee los servicios
ms bsicos del sistema. Se encarga de gestionar los recursos como el acceso
seguro al hardware de la computadora. Se encarga tambin del multiplexado,
determinando qu programa acceder a un determinado hardware si dos o ms
quieren usarlo al mismo tiempo.
86
plug-in: es un mdulo de hardware o software que aade una caracterstica o un
servicio especfico a un sistema ms grande.
Wi-Fi: (o Wi-fi, WiFi o Wifi, que de todas estas formas est bien escrito) significa
Wireless Fidelity, y es un conjunto de especificaciones de comunicacin
inalmbrica basados en el estndar 802.11. A veces se le define simplemente
como Wireless, que significa sin cable, en contraposicin a Wired, que se
traducira como cableado o cableada, en referencia a una red.
87
NDICE DE FIGURAS
88