composiciÓn del sistema operativo mÓvil ios de …enmarca ios; el sistema operativo para...
TRANSCRIPT
COMPOSICIOacuteN DEL SISTEMA OPERATIVO MOacuteVIL IOS DE APPLE Y EL HARDWARE Y SOFTWARE QUE LO UTILIZAN
MELISSA CORREA RIOS
UNIVERSIDAD CATOacuteLICA DE PEREIRA
FACULTAD DE CIENCIAS BAacuteSICAS E INGENIERIacuteA PROGRAMA DE INGENIERIacuteA DE SISTEMAS Y TELECOMUNICACIONES
PROYECTO DE GRADO PEREIRA
2013
~ 2 ~
COMPOSICIOacuteN DEL SISTEMA OPERATIVO MOacuteVIL IOS DE APPLE Y EL HARDWARE Y SOFTWARE QUE LO UTILIZAN
MELISSA CORREA RIOS
PROYECTO DE GRADO
ASESOR
AacuteLVARO IGNACIO MORALES GONZAacuteLEZ
UNIVERSIDAD CATOacuteLICA DE PEREIRA FACULTAD DE CIENCIAS BAacuteSICAS E INGENIERIacuteA
PROGRAMA DE INGENIERIacuteA DE SISTEMAS Y TELECOMUNICACIONES PROYECTO DE GRADO
PEREIRA 2013
~ 3 ~
DECLARACION DE DERECHOS DE AUTOR
Este proyecto se realiza con buenas bases de investigacioacuten logrando hacer un aporte teoacuterico y praacutectico para el aacuterea en la cual fui preparada la ingenieriacutea y es mi deseo autorizar tanto a la universidad coacutemo a todas las personas interesadas en este proyecto que lo tomen coacutemo obra de consulta y utilizarlo siempre y cuando se preserve el nombre del autor
~ 4 ~
AGRADECIMIENTOS
En primer lugar agradezco Dios por haberme dado la fuerza y el coraje para terminar este proyecto y empezar un nuevo ciclo en mi vida en segundo lugar a mi madre Luz Nancy Riacuteos Navarro quien fue mi mayor apoyo en esos momentos de dificultades y en los de inmensa alegriacutea a lo largo de estos antildeos a mi tiacuteo Joseacute Evelio Riacuteos Navarro por su gran apoyo econoacutemico para convertirme en una mujer profesional y finalmente doy gracias a mi asesor del proyecto Aacutelvaro Ignacio Morales por su empentildeo colaboracioacuten y consejos en el proceso para la culminacioacuten de este proyecto
~ 5 ~
RESUMEN
SIacuteNTESIS
This project was born in order to
know deep mobile operating
systems within the Catholic
University of Pereira because of
the importance that these devices
are currently in the field of systems
engineering and
telecommunications
Because of this then took the
decision to study the operating
system Apples iOS since this
plays a very important role in terms
of mobile technology today leading
the reader through this project to
discover the structure hardware
and software that comprises this
operating system and showing an
example of this
Key words iOS Hardware
Software
ABSTRACT SIacuteNTESIS
Este proyecto nacioacute con el fin de
conocer de forma profunda los
sistemas operativos moacuteviles dentro
de la Universidad Catoacutelica de
Pereira debido a la importancia que
estos dispositivos tienen en la
actualidad en el campo de la
ingenieriacutea de sistemas y
Telecomunicaciones
Debido a esto se tomoacute entonces la
decisioacuten de estudiar el sistema
operativo iOS de Apple pues este
juega un papel muy importante en
cuanto a tecnologiacutea moacutevil en la
actualidad llevando al lector por
medio de este proyecto a descubrir
la estructura hardware y software
que compone este sistema
operativo y mostrando un ejemplo
de ello
Palabras clave iOS Hardware
Software
Descriptores
RESUMEN
~ 6 ~
TABLA DE CONTENIDO
INTRODUCCIOacuteN 13 1
FORMULACIOacuteN DEL PROYECTO 15 2
21 PLANTEAMIENTO DEL PROBLEMA 15
22 OBJETIVO GENERAL 16
23 OBJETIVOS ESPECIacuteFICOS 16
24 JUSTIFICACIOacuteN 16
25 VIABILIDAD 17
26 CONSECUENCIAS 17
MARCO CONTEXTUAL 18 3
31 descripcion del contexto 18
MARCO TEORICO 20 4
41 ANTECEDENTES 20
42 iquestQUE ES UN DIPOSITIVO MOVIL 23
43 iquestQUE ES UN CELULAR 25
44 iquestQUE ES UN SMARTPHONE 26
45 iquestQUE ES UN SISTEMA OPERATIVO 27
46 SISTEMAS OPERATIVOS MOVILES 30
47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES 30
471 Android 30
472 Symbian OS 34
473 BlackBerry 36
474 Windows Phone 39
475 iOS 43
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES 50
49 SOFTWARE EN DISPOSITIVOS MOVILES 51
MODELO TEORICO 53 5
51 METODOLOGIA 53
CONCREACION DEL MODELO 55 6
61 HARDWARE 55
611 IPod 55
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 2 ~
COMPOSICIOacuteN DEL SISTEMA OPERATIVO MOacuteVIL IOS DE APPLE Y EL HARDWARE Y SOFTWARE QUE LO UTILIZAN
MELISSA CORREA RIOS
PROYECTO DE GRADO
ASESOR
AacuteLVARO IGNACIO MORALES GONZAacuteLEZ
UNIVERSIDAD CATOacuteLICA DE PEREIRA FACULTAD DE CIENCIAS BAacuteSICAS E INGENIERIacuteA
PROGRAMA DE INGENIERIacuteA DE SISTEMAS Y TELECOMUNICACIONES PROYECTO DE GRADO
PEREIRA 2013
~ 3 ~
DECLARACION DE DERECHOS DE AUTOR
Este proyecto se realiza con buenas bases de investigacioacuten logrando hacer un aporte teoacuterico y praacutectico para el aacuterea en la cual fui preparada la ingenieriacutea y es mi deseo autorizar tanto a la universidad coacutemo a todas las personas interesadas en este proyecto que lo tomen coacutemo obra de consulta y utilizarlo siempre y cuando se preserve el nombre del autor
~ 4 ~
AGRADECIMIENTOS
En primer lugar agradezco Dios por haberme dado la fuerza y el coraje para terminar este proyecto y empezar un nuevo ciclo en mi vida en segundo lugar a mi madre Luz Nancy Riacuteos Navarro quien fue mi mayor apoyo en esos momentos de dificultades y en los de inmensa alegriacutea a lo largo de estos antildeos a mi tiacuteo Joseacute Evelio Riacuteos Navarro por su gran apoyo econoacutemico para convertirme en una mujer profesional y finalmente doy gracias a mi asesor del proyecto Aacutelvaro Ignacio Morales por su empentildeo colaboracioacuten y consejos en el proceso para la culminacioacuten de este proyecto
~ 5 ~
RESUMEN
SIacuteNTESIS
This project was born in order to
know deep mobile operating
systems within the Catholic
University of Pereira because of
the importance that these devices
are currently in the field of systems
engineering and
telecommunications
Because of this then took the
decision to study the operating
system Apples iOS since this
plays a very important role in terms
of mobile technology today leading
the reader through this project to
discover the structure hardware
and software that comprises this
operating system and showing an
example of this
Key words iOS Hardware
Software
ABSTRACT SIacuteNTESIS
Este proyecto nacioacute con el fin de
conocer de forma profunda los
sistemas operativos moacuteviles dentro
de la Universidad Catoacutelica de
Pereira debido a la importancia que
estos dispositivos tienen en la
actualidad en el campo de la
ingenieriacutea de sistemas y
Telecomunicaciones
Debido a esto se tomoacute entonces la
decisioacuten de estudiar el sistema
operativo iOS de Apple pues este
juega un papel muy importante en
cuanto a tecnologiacutea moacutevil en la
actualidad llevando al lector por
medio de este proyecto a descubrir
la estructura hardware y software
que compone este sistema
operativo y mostrando un ejemplo
de ello
Palabras clave iOS Hardware
Software
Descriptores
RESUMEN
~ 6 ~
TABLA DE CONTENIDO
INTRODUCCIOacuteN 13 1
FORMULACIOacuteN DEL PROYECTO 15 2
21 PLANTEAMIENTO DEL PROBLEMA 15
22 OBJETIVO GENERAL 16
23 OBJETIVOS ESPECIacuteFICOS 16
24 JUSTIFICACIOacuteN 16
25 VIABILIDAD 17
26 CONSECUENCIAS 17
MARCO CONTEXTUAL 18 3
31 descripcion del contexto 18
MARCO TEORICO 20 4
41 ANTECEDENTES 20
42 iquestQUE ES UN DIPOSITIVO MOVIL 23
43 iquestQUE ES UN CELULAR 25
44 iquestQUE ES UN SMARTPHONE 26
45 iquestQUE ES UN SISTEMA OPERATIVO 27
46 SISTEMAS OPERATIVOS MOVILES 30
47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES 30
471 Android 30
472 Symbian OS 34
473 BlackBerry 36
474 Windows Phone 39
475 iOS 43
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES 50
49 SOFTWARE EN DISPOSITIVOS MOVILES 51
MODELO TEORICO 53 5
51 METODOLOGIA 53
CONCREACION DEL MODELO 55 6
61 HARDWARE 55
611 IPod 55
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 3 ~
DECLARACION DE DERECHOS DE AUTOR
Este proyecto se realiza con buenas bases de investigacioacuten logrando hacer un aporte teoacuterico y praacutectico para el aacuterea en la cual fui preparada la ingenieriacutea y es mi deseo autorizar tanto a la universidad coacutemo a todas las personas interesadas en este proyecto que lo tomen coacutemo obra de consulta y utilizarlo siempre y cuando se preserve el nombre del autor
~ 4 ~
AGRADECIMIENTOS
En primer lugar agradezco Dios por haberme dado la fuerza y el coraje para terminar este proyecto y empezar un nuevo ciclo en mi vida en segundo lugar a mi madre Luz Nancy Riacuteos Navarro quien fue mi mayor apoyo en esos momentos de dificultades y en los de inmensa alegriacutea a lo largo de estos antildeos a mi tiacuteo Joseacute Evelio Riacuteos Navarro por su gran apoyo econoacutemico para convertirme en una mujer profesional y finalmente doy gracias a mi asesor del proyecto Aacutelvaro Ignacio Morales por su empentildeo colaboracioacuten y consejos en el proceso para la culminacioacuten de este proyecto
~ 5 ~
RESUMEN
SIacuteNTESIS
This project was born in order to
know deep mobile operating
systems within the Catholic
University of Pereira because of
the importance that these devices
are currently in the field of systems
engineering and
telecommunications
Because of this then took the
decision to study the operating
system Apples iOS since this
plays a very important role in terms
of mobile technology today leading
the reader through this project to
discover the structure hardware
and software that comprises this
operating system and showing an
example of this
Key words iOS Hardware
Software
ABSTRACT SIacuteNTESIS
Este proyecto nacioacute con el fin de
conocer de forma profunda los
sistemas operativos moacuteviles dentro
de la Universidad Catoacutelica de
Pereira debido a la importancia que
estos dispositivos tienen en la
actualidad en el campo de la
ingenieriacutea de sistemas y
Telecomunicaciones
Debido a esto se tomoacute entonces la
decisioacuten de estudiar el sistema
operativo iOS de Apple pues este
juega un papel muy importante en
cuanto a tecnologiacutea moacutevil en la
actualidad llevando al lector por
medio de este proyecto a descubrir
la estructura hardware y software
que compone este sistema
operativo y mostrando un ejemplo
de ello
Palabras clave iOS Hardware
Software
Descriptores
RESUMEN
~ 6 ~
TABLA DE CONTENIDO
INTRODUCCIOacuteN 13 1
FORMULACIOacuteN DEL PROYECTO 15 2
21 PLANTEAMIENTO DEL PROBLEMA 15
22 OBJETIVO GENERAL 16
23 OBJETIVOS ESPECIacuteFICOS 16
24 JUSTIFICACIOacuteN 16
25 VIABILIDAD 17
26 CONSECUENCIAS 17
MARCO CONTEXTUAL 18 3
31 descripcion del contexto 18
MARCO TEORICO 20 4
41 ANTECEDENTES 20
42 iquestQUE ES UN DIPOSITIVO MOVIL 23
43 iquestQUE ES UN CELULAR 25
44 iquestQUE ES UN SMARTPHONE 26
45 iquestQUE ES UN SISTEMA OPERATIVO 27
46 SISTEMAS OPERATIVOS MOVILES 30
47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES 30
471 Android 30
472 Symbian OS 34
473 BlackBerry 36
474 Windows Phone 39
475 iOS 43
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES 50
49 SOFTWARE EN DISPOSITIVOS MOVILES 51
MODELO TEORICO 53 5
51 METODOLOGIA 53
CONCREACION DEL MODELO 55 6
61 HARDWARE 55
611 IPod 55
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 4 ~
AGRADECIMIENTOS
En primer lugar agradezco Dios por haberme dado la fuerza y el coraje para terminar este proyecto y empezar un nuevo ciclo en mi vida en segundo lugar a mi madre Luz Nancy Riacuteos Navarro quien fue mi mayor apoyo en esos momentos de dificultades y en los de inmensa alegriacutea a lo largo de estos antildeos a mi tiacuteo Joseacute Evelio Riacuteos Navarro por su gran apoyo econoacutemico para convertirme en una mujer profesional y finalmente doy gracias a mi asesor del proyecto Aacutelvaro Ignacio Morales por su empentildeo colaboracioacuten y consejos en el proceso para la culminacioacuten de este proyecto
~ 5 ~
RESUMEN
SIacuteNTESIS
This project was born in order to
know deep mobile operating
systems within the Catholic
University of Pereira because of
the importance that these devices
are currently in the field of systems
engineering and
telecommunications
Because of this then took the
decision to study the operating
system Apples iOS since this
plays a very important role in terms
of mobile technology today leading
the reader through this project to
discover the structure hardware
and software that comprises this
operating system and showing an
example of this
Key words iOS Hardware
Software
ABSTRACT SIacuteNTESIS
Este proyecto nacioacute con el fin de
conocer de forma profunda los
sistemas operativos moacuteviles dentro
de la Universidad Catoacutelica de
Pereira debido a la importancia que
estos dispositivos tienen en la
actualidad en el campo de la
ingenieriacutea de sistemas y
Telecomunicaciones
Debido a esto se tomoacute entonces la
decisioacuten de estudiar el sistema
operativo iOS de Apple pues este
juega un papel muy importante en
cuanto a tecnologiacutea moacutevil en la
actualidad llevando al lector por
medio de este proyecto a descubrir
la estructura hardware y software
que compone este sistema
operativo y mostrando un ejemplo
de ello
Palabras clave iOS Hardware
Software
Descriptores
RESUMEN
~ 6 ~
TABLA DE CONTENIDO
INTRODUCCIOacuteN 13 1
FORMULACIOacuteN DEL PROYECTO 15 2
21 PLANTEAMIENTO DEL PROBLEMA 15
22 OBJETIVO GENERAL 16
23 OBJETIVOS ESPECIacuteFICOS 16
24 JUSTIFICACIOacuteN 16
25 VIABILIDAD 17
26 CONSECUENCIAS 17
MARCO CONTEXTUAL 18 3
31 descripcion del contexto 18
MARCO TEORICO 20 4
41 ANTECEDENTES 20
42 iquestQUE ES UN DIPOSITIVO MOVIL 23
43 iquestQUE ES UN CELULAR 25
44 iquestQUE ES UN SMARTPHONE 26
45 iquestQUE ES UN SISTEMA OPERATIVO 27
46 SISTEMAS OPERATIVOS MOVILES 30
47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES 30
471 Android 30
472 Symbian OS 34
473 BlackBerry 36
474 Windows Phone 39
475 iOS 43
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES 50
49 SOFTWARE EN DISPOSITIVOS MOVILES 51
MODELO TEORICO 53 5
51 METODOLOGIA 53
CONCREACION DEL MODELO 55 6
61 HARDWARE 55
611 IPod 55
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 5 ~
RESUMEN
SIacuteNTESIS
This project was born in order to
know deep mobile operating
systems within the Catholic
University of Pereira because of
the importance that these devices
are currently in the field of systems
engineering and
telecommunications
Because of this then took the
decision to study the operating
system Apples iOS since this
plays a very important role in terms
of mobile technology today leading
the reader through this project to
discover the structure hardware
and software that comprises this
operating system and showing an
example of this
Key words iOS Hardware
Software
ABSTRACT SIacuteNTESIS
Este proyecto nacioacute con el fin de
conocer de forma profunda los
sistemas operativos moacuteviles dentro
de la Universidad Catoacutelica de
Pereira debido a la importancia que
estos dispositivos tienen en la
actualidad en el campo de la
ingenieriacutea de sistemas y
Telecomunicaciones
Debido a esto se tomoacute entonces la
decisioacuten de estudiar el sistema
operativo iOS de Apple pues este
juega un papel muy importante en
cuanto a tecnologiacutea moacutevil en la
actualidad llevando al lector por
medio de este proyecto a descubrir
la estructura hardware y software
que compone este sistema
operativo y mostrando un ejemplo
de ello
Palabras clave iOS Hardware
Software
Descriptores
RESUMEN
~ 6 ~
TABLA DE CONTENIDO
INTRODUCCIOacuteN 13 1
FORMULACIOacuteN DEL PROYECTO 15 2
21 PLANTEAMIENTO DEL PROBLEMA 15
22 OBJETIVO GENERAL 16
23 OBJETIVOS ESPECIacuteFICOS 16
24 JUSTIFICACIOacuteN 16
25 VIABILIDAD 17
26 CONSECUENCIAS 17
MARCO CONTEXTUAL 18 3
31 descripcion del contexto 18
MARCO TEORICO 20 4
41 ANTECEDENTES 20
42 iquestQUE ES UN DIPOSITIVO MOVIL 23
43 iquestQUE ES UN CELULAR 25
44 iquestQUE ES UN SMARTPHONE 26
45 iquestQUE ES UN SISTEMA OPERATIVO 27
46 SISTEMAS OPERATIVOS MOVILES 30
47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES 30
471 Android 30
472 Symbian OS 34
473 BlackBerry 36
474 Windows Phone 39
475 iOS 43
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES 50
49 SOFTWARE EN DISPOSITIVOS MOVILES 51
MODELO TEORICO 53 5
51 METODOLOGIA 53
CONCREACION DEL MODELO 55 6
61 HARDWARE 55
611 IPod 55
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 6 ~
TABLA DE CONTENIDO
INTRODUCCIOacuteN 13 1
FORMULACIOacuteN DEL PROYECTO 15 2
21 PLANTEAMIENTO DEL PROBLEMA 15
22 OBJETIVO GENERAL 16
23 OBJETIVOS ESPECIacuteFICOS 16
24 JUSTIFICACIOacuteN 16
25 VIABILIDAD 17
26 CONSECUENCIAS 17
MARCO CONTEXTUAL 18 3
31 descripcion del contexto 18
MARCO TEORICO 20 4
41 ANTECEDENTES 20
42 iquestQUE ES UN DIPOSITIVO MOVIL 23
43 iquestQUE ES UN CELULAR 25
44 iquestQUE ES UN SMARTPHONE 26
45 iquestQUE ES UN SISTEMA OPERATIVO 27
46 SISTEMAS OPERATIVOS MOVILES 30
47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES 30
471 Android 30
472 Symbian OS 34
473 BlackBerry 36
474 Windows Phone 39
475 iOS 43
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES 50
49 SOFTWARE EN DISPOSITIVOS MOVILES 51
MODELO TEORICO 53 5
51 METODOLOGIA 53
CONCREACION DEL MODELO 55 6
61 HARDWARE 55
611 IPod 55
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 7 ~
612 IPhone 64
613 iPad 77
62 ARQUITECTURA DE IOS 89
621 Capa Cocoa touch 89
622 Capa media 94
623 Core Services 98
624 Core OS 102
63 DEBILIDADES Y FORTALEZAS DE iOS FRENTE A SUS
COMPETIDORES 104
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN iOS 120
641 Otros entornos de desarrollo para iOS 120
642 Herramientas de desarrollo iOS usadas por Apple 122
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo 128
66 CONTRUCCION DE LA aplicacioacuten PROTOTIPO (DICCIONARIO DE
ACRONIMOS) 139
CONCLUSIONES 180 7
RECOMENDACIONES 182 8
BIBLIOGRAFIacuteA 184 9
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-
~ 8 ~
TABLA DE ILUSTRACIONES
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X 26
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone) 27
Ilustracioacuten 3 Android 30
Ilustracioacuten 4 Arquitectura de Android 32
Ilustracioacuten 5 Symbian OS 34
Ilustracioacuten 6 Arquitectura Symbian OS 35
Ilustracioacuten 7 BlackBerry 36
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution 37
Ilustracioacuten 9 Windows Phone 39
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone 41
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone 45
Ilustracioacuten 12 Arquitectura de iOS 49
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en
2010 (en millares de unidades) 50
Ilustracioacuten 14 iPod touch 55
Ilustracioacuten 15 Componentes externos de un iPod Touch 56
Ilustracioacuten 16 Partes internas de un iPod Touch 4G 59
Ilustracioacuten 17 pantalla del iPod 4G 60
Ilustracioacuten 18 Escudo EMI iPod 4G 61
Ilustracioacuten 19 Bateriacutea iPod 4G 61
Ilustracioacuten 20 Auricular marca Foxconn 62
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G 62
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G 63
Ilustracioacuten 23 Antena para Wi-Fi 63
Ilustracioacuten 24 Placa madre del iPod 4G 64
Ilustracioacuten 25 iPhone 64
Ilustracioacuten 26 Partes externas del iPhone 65
Ilustracioacuten 27 partes del iPhone 4 69
Ilustracioacuten 28 pantalla del iPhone 4 70
~ 9 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4 71
Ilustracioacuten 30 Escudo EMI del iPhone 4 71
Ilustracioacuten 31 Vibrador del iPhone 4 72
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4 72
Ilustracioacuten 33 Placa Loacutegica del iPhone 4 74
Ilustracioacuten 34 Chip Broadcom del iPhone 4 74
Ilustracioacuten 35 Microacutefono del iPhone 4 75
Ilustracioacuten 36 Caacutemara frontal del iPhone 4 75
Ilustracioacuten 37 Botoacuten Home 76
Ilustracioacuten 38 Microacutefono Principal del iPhone 4 76
Ilustracioacuten 39 Microacutefono secundario del iPhone 4 77
Ilustracioacuten 40 iPad 77
Ilustracioacuten 41 partes de in iPad 78
Ilustracioacuten 42 Partes del iPad 83
Ilustracioacuten 43 Pantalla del iPad 84
Ilustracioacuten 44 Placa base 1 del iPad3 84
Ilustracioacuten 45 Placa base 2 del iPad3 85
Ilustracioacuten 46 Procesador A5X del iPad3 86
Ilustracioacuten 47 Placa base 3 iPad3 86
Ilustracioacuten 48 Bateriacutea del iPad 87
Ilustracioacuten 49 Tarjeta microsismo del iPad 87
Ilustracioacuten 50 Caacutemara posterior del iPad3 88
Ilustracioacuten 51 Caacutemara Frontal del iPad 88
Ilustracioacuten 52 Arquitectura en capas de iOS 89
Ilustracioacuten 53 Funcionamiento de iCloud 98
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK 121
Ilustracioacuten 55 framework PhoneGap 122
Ilustracioacuten 56 Entorno de desarrollo Xcode 123
Ilustracioacuten 57 Ventana barra de herramientas Xcode 124
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder 125
Ilustracioacuten 59 Uso del entorno Instruments 126
Ilustracioacuten 60 Simulador de iOS 127
~ 10 ~
Ilustracioacuten 61 Ejemplo de una clase en Objective-C 131
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase 132
Ilustracioacuten 63 Ejemplo de implementaciones de una clase 133
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C 134
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C 134
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas 136
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C 136
Ilustracioacuten 68 Como declarar propiedades en Objective-C 138
Ilustracioacuten 69 Se abre la Mac App Store 140
Ilustracioacuten 70 se busca el Xcode en la Mac App Store 140
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode 141
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store 141
Ilustracioacuten 73 Introducir Apple ID 142
Ilustracioacuten 74 Progreso de la descarga de Xcode 142
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones 143
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode 143
Ilustracioacuten 77 Ventana inicial de Xcode 144
Ilustracioacuten 78 Ventana de descarga SQLite Manager 144
Ilustracioacuten 79 Antildeadir complemento 145
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten 145
Ilustracioacuten 81 Reiniciar Firefox 146
Ilustracioacuten 82 Abrir SQLite Manager 146
Ilustracioacuten 83 Interfaz de SQLite Manager 147
Ilustracioacuten 84 Nombramiento de la BD 147
Ilustracioacuten 85 Crear tabla 148
Ilustracioacuten 86 Crear campos 148
Ilustracioacuten 87 Exportar BD 149
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto 149
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto 150
Ilustracioacuten 90 Agregar la BD al proyecto 151
Ilustracioacuten 91 Copia de archivos de la BD 151
Ilustracioacuten 92 Crear interfaz graacutefica 152
~ 11 ~
Ilustracioacuten 93 Menuacute para crear nueva clase 153
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase 153
Ilustracioacuten 95 Objeto TableViewController 154
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers 154
Ilustracioacuten 97 Celda estaacutetica 155
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo 155
Ilustracioacuten 99 Clase perteneciente al storyboard 156
Ilustracioacuten 100 Conexioacuten a otros View Controller 156
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz 157
Ilustracioacuten 102 Conexioacuten objetos Button con su evento 158
Ilustracioacuten 103 Crear clase tipo NSObject 159
Ilustracioacuten 104 Agregar Framework 163
Ilustracioacuten 105 Agregar libsqlite3dyilib 163
Ilustracioacuten 106 Clase Modificar View Controller 166
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo 167
Ilustracioacuten 108 Framework para leer texto 170
Ilustracioacuten 109 Conexioacuten de acciones y Propertys 171
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase 171
Ilustracioacuten 111 Nueva clase RHTaskViewController 172
Ilustracioacuten 112 Interfaz eliminar 173
Ilustracioacuten 113 Interfaz Listado de acroacutenimos 174
Ilustracioacuten 114 Relacioacuten View Controller con la clase
RHTaskListViewController 174
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo 177
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la
interfaz Listar 178
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos 179
~ 12 ~
LISTA DE TABLAS
Tabla 1 Caracteriacutesticas principales del iPod 59
Tabla 2 Especificaciones teacutecnicas iPhone 4S 69
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad 83
~ 13 ~
INTRODUCCIOacuteN 1
La presente investigacioacuten se refiere a la estructura software y hardware que enmarca iOS el sistema operativo para dispositivos moacuteviles creado por Apple para el iPhone el iPad el iPod Touch
iOS estaacute basado en el sistema operativo de Mac OS X y sus herramientas de programacioacuten son similares con la diferencia de que este se adapta a una plataforma moacutevil siendo su prioridad el ambiente graacutefico haciendo que sea de faacutecil uso e interaccioacuten para los usuarios aprovechando al maacuteximo su hardware taacutectil convirtieacutendose en un sistema manejable intuitivo y divertido
Desde el antildeo 2007 con el lanzamiento del iPhone salioacute tambieacuten la primera versioacuten de su sistema operativo llamado en ese entonces iPhone OS Pero durante la presentacioacuten del iPhone 4 en junio del 2012 Steve Jobs anuncioacute que iPhone OS pasariacutea a ser llamado oficialmente como iOS para referirse al sistema operativo de los diferentes dispositivos creados durante esos 4 antildeos el iPhone el iPad y el iPod Touch los cuales permitieron que Apple fuera una de las principales compantildeiacuteas en venta de dispositivos moacuteviles gracias a su excelente calidad tanto en sus estructura hardware como en el software
Esta exhaustiva investigacioacuten al sistema operativo iOS se realizoacute por el intereacutes de incursionar en un tema que tecnoloacutegicamente hablando estaacute en auge pero que auacuten son pocos los que tiene un conocimiento pleno de esta tecnologiacutea y maacutes auacuten en Colombia ademaacutes de esto especiacuteficamente se eligioacute iOS por el intereacutes de que este sistema operativo junto con Android comparten los primeros lugares en ventas a nivel mundial lo que se convirtioacute en un reto maacutes interesante e importante al aprender el comportamiento de este sistema operativo conociendo las caracteriacutesticas con las que un dispositivo moacutevil iOS cuenta en su estructura hardware y software y por el intereacutes en la universidad de incursionar en dispositivos moacuteviles un tema que actualmente hace parte de la ingenieriacutea al comprender otro lenguaje de programacioacuten y a manera personal por la experiencia conseguida para entrar al campo laboral teniendo la ventaja de conocer un tema del cual Colombia auacuten tiene poco conocimiento
En este documento inicialmente se describen los conceptos principales que enmarcan los dispositivos moacuteviles en que se basa un sistema operativo y los diferentes tipos de sistemas operativos que existen para despueacutes dar desarrollo al tema principal En este se hace una descripcioacuten del hardware interno y externo de los dispositivos que cuentan con el sistema operativo iOS el iPhone el iPad y el iPod Touch se describe de forma completa su arquitectura tomando el contenido de la iOS developer library un libro que ofrece la paacutegina de Apple se describen las fortalezas y debilidades que tiene iOS frente a sus competidores maacutes importantes Android Windows Phone y Blackberry
~ 14 ~
haciendo uso de sus paacuteginas oficiales observando las diferentes caracteriacutesticas de cada uno de sus sistemas operativos y se hace uso del Mac OS X Leopard donde se instaloacute el entorno de desarrollo Xcode y haciendo uso del lenguaje Objective-c para dar un ejemplo de su programacioacuten y de esta forma se expone completamente todo lo que hace parte de este importante sistema operativo llevando al lector a tener un conocimiento maacutes amplio sobre la composicioacuten del sistema operativo moacutevil iOS de Apple y el hardware y software que lo utilizan
~ 15 ~
FORMULACIOacuteN DEL PROYECTO 2
21 PLANTEAMIENTO DEL PROBLEMA
Actualmente la humanidad se ha visto envuelta por el gran crecimiento de la telefoniacutea moacutevil haciendo que su vida sea mucho maacutes faacutecil y eficiente cosa que en un pasado era inconcebible pues solo se sontildeaba con el poder hacer llamadas desde cualquier lugar del mundo sin pensar en los grandes limites que iba a sobrepasar esta tecnologiacutea convirtieacutendose en un producto casi que indispensable para la vida diaria del ser humano pues esta ofrece un gran gama de recursos y aplicaciones que nos ayudan a ser maacutes eficientes en el aacuterea laboral estudiantil y de ocio
Es por esta razoacuten que actualmente millones de personas estaacuten incursionando en el mundo de los dispositivos moacuteviles el cual cuenta con una gran variedad de sistemas operativos que los hace uacutenicos a la hora de interactuar con el usuario entre los que maacutes se destacan estaacuten el sistema operativo Android BlackBerry Windows Mobile Symbian y el iOS de Apple siendo este uacuteltimo uno de los maacutes vendidos a nivel mundial pues de acuerdo a su uacuteltimo informe financiero con una duracioacuten de mes y medio y cerrando fecha el diacutea 31 de diciembre de 2011 ldquoApple registroacute un nuevo reacutecord al hacer una caja de 46330 millones de doacutelares con unos beneficios netos de 13060 millones de doacutelares aproximadamente la mitad de los beneficios anuales de la compantildeiacutea en palabras maacutes claras Apple vendioacute 3704 millones de teleacutefonos iPhone estas cifras praacutecticamente duplican los resultados del mismo periodo del antildeo pasado cuando obtuvo unos ingresos de 26740 millones de doacutelares y unos beneficios de 6000 millones de doacutelaresrdquo (Ballestin 2012) todo esto gracias a su experiencia con el usuario
Como conclusioacuten es imposible negar la importancia de la creciente de los dispositivos moacuteviles de Apple en el mercado en el mundo pero para esta gran cantidad de personas demandantes de estos dispositivos hay un gran problema pues muy pocas personas son las que conocen realmente que hay dentro de estos pequentildeos pero tan eficientes equipo primero porque en el mundo hay muy pocos desarrolladores de software por la dificultad que se encuentra al programar y segundo debido a que Apple es una empresa que no permite que sus sistemas operativos sean instaladas en otras maacutequinas diferentes a las de Apple y esto impide que las personas se animen a programar para este sistema operativo pero es importante saber que vale la pena conocer este mundo pues la telefoniacutea moacutevil celular de Apple es pionera en el mercado mundial y seraacute la que en un futuro mueva al mundo tanto a nivel econoacutemico como social
~ 16 ~
22 OBJETIVO GENERAL
- Desarrollar una investigacioacuten en torno al sistema operativo iOS de Apple y los diferentes dispositivos hardware que lo utilizan identificando sus caracteriacutesticas funcionalidades ventajas y desventajas frente a otras plataformas moacuteviles
23 OBJETIVOS ESPECIacuteFICOS
- Caracterizar la estructura del hardware de dispositivos moacuteviles que usan iOS
- Identificar y documentar la arquitectura del sistema operativo iOS de Apple
- Describir el lenguaje de programacioacuten en que el sistema operativo iOS se basa
- Explorar las diferentes herramientas y entornos de desarrollo que se necesitan para crear aplicaciones en el sistema operativo iOS
- Identificar las debilidades y Fortalezas que tiene el sistema operativo moacutevil iOS frente a otros sistemas operativos
- Elaborar un documento que sintetice y sistematice la informacioacuten recopilada durante el proceso de investigacioacuten del sistema operativo iOS de Apple que permita ser de gran uso para aquellas personas que esteacuten interesadas en el estudio de esta tecnologiacutea
- Construir un prototipo de aplicacioacuten geneacuterica que muestre las particularidades de la plataforma iOS
24 JUSTIFICACIOacuteN
Dado a que hoy en diacutea son por mayoriacutea las personas que estaacuten adoptando la tecnologiacutea de telefoniacutea celular obteniendo su propia experiencia con estos dispositivos y que es un tema que abarca una gran parte en lo que a tecnologiacutea se refiere tanto actualmente como para un futuro puesto como se dice por ahiacute es un tema que tiene ldquomucha tela que cortarrdquo es de gran importancia estudiarla debido a que por medio de este estudio y el conocimiento que se adquiera permitiraacute que maacutes adelante otras personas se documenten en el tema tanto para el propio aprendizaje de todo lo que contiene el sistema operativo iOS de Apple como para futuras necesidades que se presenten con respecto al hardware y el software de estos dispositivos para cada diacutea darle un uso maacutes oacuteptimo de acuerdo a los gustos y estilos de vida de los usuarios
Tambieacuten es importante decir que en la actualidad la mayoriacutea de personas que se desenvuelven en el mundo informaacutetico tienen un conocimiento maacutes amplio de los sistemas operativos de computadoras pero son la minoriacutea los que tienen un estudio bien estructurado en cuanto a sistemas operativos moacuteviles se refiere siendo de gran importancia en este caso el conocimiento de la
~ 17 ~
tecnologiacutea que hay detraacutes de los dispositivos que usan el sistema operativo moacutevil iOS debido a que esta tecnologiacutea es una de las que actualmente estaacute a la cabecera en el mercado mundial y cada diacutea son maacutes las personas que quieren ser propietarias de un dispositivo de maraca Apple
25 VIABILIDAD
Esta investigacioacuten es viable debido a que para su continuo desarrollo se cuenta con una gran cantidad de informacioacuten en cuanto a los sistemas operativos iOS tales como libros informacioacuten en la web documentos videos personal humano y ademaacutes cuenta con herramientas gratuitas para el desarrollo de aplicaciones
Uno de los recursos que se necesita para el desarrollo de este trabajo es contar con un equipo de la Apple debido a que su sistema operativo no puede ser instalado en otros ordenadores que no sean Apple pues con la investigacioacuten se desea que a medida que se va aprendiendo su lenguaje ir practicaacutendolo lo que generara un costo adicional que puede ser elevado pero no imposible de adquirir
Tambieacuten por la falta de conocimiento en el tema por parte de los profesores de la facultad para la asesoriacutea del proyecto se podriacutea ver afectada de alguna manera la investigacioacuten
26 CONSECUENCIAS
Esta investigacioacuten podraacute servir de soporte y ayuda para otras personas tanto como para que puedan basarse para realizar sus trabajos o investigaciones como para ser retomada y darle maacutes soporte y enriquecimiento debido a que como sabemos la tecnologiacutea avanza raacutepidamente y es muy cambiante ademaacutes de todo tambieacuten podraacute servir para despertar el intereacutes de otros en desarrollar aplicaciones o herramientas que podraacuten ser de utilidad a otros
El elaborar esta investigacioacuten tambieacuten permitiraacute a maacutes estudiantes y docentes de la universidad incursionar en el tema explotando un nuevo mundo de la ingenieriacutea de sistemas y telecomunicaciones que sirva para la ensentildeanza en la Universidad Catoacutelica de Pereira y de esta manera probablemente volverse pionera en cuanto al conocimiento y manejo de los sistemas operativos de dispositivos moacuteviles
~ 18 ~
MARCO CONTEXTUAL 3
31 DESCRIPCION DEL CONTEXTO
La universidad Catoacutelica de Pereira (UCP) es una institucioacuten de educacioacuten superior ubicada en la ciudad de Pereira que nacioacute en el antildeo de 1973 gracias a la iniciativa y la capacidad emprendedora de un grupo de estudiantes que deseaban una alternativa acadeacutemica diferente a las que existiacutean en la ciudad de Pereira para su formacioacuten profesional la cual fue llamada Fundacioacuten Autoacutenoma Popular del Risaralda pero maacutes adelante se acordoacute con la fundacioacuten por unanimidad que la direccioacuten de la ldquoFundacioacuten Autoacutenoma Popular del Risaraldardquo estuviese a cargo de la Dioacutecesis hecho que ratificoacute la vocacioacuten Catoacutelica que tendriacutea la Institucioacuten por la cual se le dio el nuevo nombre ldquoUniversidad Catoacutelica De Pereirardquo
La UCP estaacute entonces inspirada en los principios de la fe catoacutelica con la misioacuten de asumir con compromiso y decisioacuten la funcioacuten de ser apoyo para la formacioacuten humana eacutetica y profesional de los miembros de la universidad y mediante ellos de la sociedad en general filosofiacutea que se plasmoacute mediante una frase misional que dice Somos apoyo para llegar a ser gente gente de bien y profesionalmente capaz
La Universidad estaacute comprometida con el bien comuacuten y actuaraacute siempre en conformidad con los valores de justicia equidad honestidad libertad solidaridad verdad y responsabilidad Como institucioacuten acadeacutemica es consciente de su responsabilidad cientiacutefica tanto en la transmisioacuten como en la produccioacuten y aplicacioacuten del conocimiento
Siendo su misioacuten y valores la fuente del desarrollo de eacuteste proyecto se propuso como se dijo anteriormente un tipo de transmisioacuten produccioacuten y aplicacioacuten del conocimiento de la carrera ingenieriacutea de sistemas y telecomunicaciones a traveacutes del estudio de sistemas operativos de dispositivos moacuteviles debido a la demanda que este tipo de dispositivos tiene ademaacutes de toda la tecnologiacutea que se desenvuelve y crece diacutea tras diacutea alrededor de estos dispositivos permitieacutendole a las personas desarrollar cantidad de actividades con tan solo estos pequentildeos dispositivos de mano satisfaciendo cantidad de necesidades a los usuarios donde se pretende que por medio de una investigacioacuten realizada por Melissa correa Riacuteos estudiante de Ingenieriacutea de sistemas y telecomunicaciones cursante de noveno semestre realice una muy detallada caracterizacioacuten e investigacioacuten sobre el sistema operativo iOS de Apple elaborando un documento que contenga toda la informacioacuten de actualidad de todo el funcionamiento del hardware y software de este SO para que tanto la comunidad educativa de la UCP que cuenta con una poblacioacuten cercana a los 2300 estudiantes como otros integrantes de otras universidades ya sea de Pereira o de otras partes de Colombia o del mundo puedan acceder a esta investigacioacuten para asiacute enriquecer su conocimiento sobre en lo que se
~ 19 ~
basa esta tecnologiacutea ademaacutes de comprender las bases de su lenguaje de programacioacuten y la instalacioacuten de las herramientas necesarias para profundizar en la praacutectica de este y que pueda llegar a ser de gran ayuda a otros a la hora de realizar sus propias investigaciones y aplicaciones llegando a tener una visioacuten maacutes clara de este SO
Con este tipo de proyectos se puede observar como la UCP es una universidad que crece no solo en la formacioacuten de sus valores eacuteticos y morales sino ademaacutes en ir evolucionando en sus metodologiacuteas y ensentildeanzas seguacuten las necesidades que se presentan en la actualidad y fomenta el crecimiento profesional en los estudiantes al ampliar el conocimiento acerca de nuevas tecnologiacuteas que ya hacen parte de la vida diaria en esta sociedad
~ 20 ~
MARCO TEORICO 4
41 ANTECEDENTES
ldquoINVESTIGACIOacuteN DE SISTEMAS OPERATIVOS PARA DISPOSITIVOS MOacuteVILES ENTRE 2008-2010 CON OBJETO DE SELECCIONAR EL MAacuteS ADECUADO A EMPLEAR COMO PLATAFORMA TECNOLOacuteGICA PARA EL PROYECTO DE INVESTIGACIOacuteN ldquoMEDIRrdquo rdquo
Proyecto de grado realizado por John Edison Cano blandoacuten y Daniel Armando Saacutenchez Jaramillo estudiantes de ingenieriacutea de sistemas y computacioacuten de la Universidad Tecnoloacutegica de Pereira finalizado en el antildeo 2010 Este proyecto consiste en hacer un estudio teacutecnico de los distintos Sistemas Operativos comerciales y de acceso libre para Dispositivos Moacuteviles en el mercado nacional en el periodo 2008-2010 con el propoacutesito de compararlos y entregar criterios de seleccioacuten en dispositivos que sirvan como plataforma tecnoloacutegica que soporte los aplicativos requeridos en el proyecto de investigacioacuten ldquoMEDIRrdquo Medidas Digitales Remotas el cual tiene como fin uacuteltimo la captura digitalizacioacuten interpretacioacuten y posterior transmisioacuten de una imagen a una central de datos para su almacenamiento y posterior uso Fuente Biblioteca Jorge Roa Martiacutenez- Tesis de la UTP (Blandoacuten Cano amp Jaramillo Saacutenchez 2010) Citacioacuten Tesis 0053 C227i
ldquoSISTEMAS OPERATIVOS MOVILES FUNCIONALIDADES EFECTIVIDAD Y APLICACIONES UTILES EN COLOMBIArdquo Proyecto de grado elaborado por Sanly Aponte Goacutemez y Carlos Daacutevila Ramiacuterez estudiantes de la facultad de ingenieriacutea de sistemas de la Universidad EAN en la ciudad de Bogotaacute finalizado en el antildeo 2011 Este proyecto tiene como fin analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades y efectividad para finalmente aplicar lo aprendido y difundirlo en la sociedad que se interese en este importante tema pues a pesar de la gran acogida que han tenido el ingreso de los Sistemas Operativos Moacuteviles en Colombia los usuarios no pueden explotar al maacuteximo sus capacidades debido principalmente a la falta de conocimientos respecto a los mismos su seguridad sus funcionalidades y sus mejores alcances
Fuente Biblioteca Hildebrando Perico Afanador- Tesis digitales de la universidad EAN (GOMEZ amp RAMIREZ 2011)
~ 21 ~
ldquoIP4JVM (ANEXO IV ndash DISPOSITIVOS MOacuteVILES)rdquo Proyecto de grado elaborado por Leandro Caso y Marcos Techera estudiantes de la facultad de Ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay Este proyecto consiste en la continuacioacuten de un proyecto de grado ya existente realizado durante antildeo 2007 El proyecto IP4JVM consiste en un framework enteramente programado en lenguaje Java el cual implementa un stack de protocolos y realiza la comunicacioacuten con el dispositivo fiacutesico de red por medio de una implementacioacuten realizada en JNI El objetivo de este nuevo proyecto es poder incluir al stack la posibilidad de realizar el manejo de la configuracioacuten de las direcciones IPv6 mediante DHCPv6 asiacute como tambieacuten poder realizar el ruteo de paquetes y uso de una solucioacuten NAT IPv6 a IPv6 y ademaacutes la realizacioacuten de una aplicacioacuten web que permita realizar las configuraciones del framework y la realizacioacuten de un estudio con motivo de poder dilucidar queacute tan lejos o cerca se encuentra la posibilidad de realizar el deploy del stack implementado en un dispositivo moacutevil Es por esto que al principio se nombra el anexo IV en donde el proyecto se divide un varios sub proyectos u objetivos el cual en este caso se enfatiza en la parte de dispositivos moacuteviles el cual tiene por objetivo presentar las investigaciones realizadas sobre dispositivos moacuteviles sus sistemas operativos y Java Micro Edition con el fin de poder dilucidar si es factible que el proyecto IP4JVM pueda correr en un dispositivo moacutevil Fuente facultad de ingenieriacutea de la Universidad de la Repuacuteblica de Uruguay ndash Tesis Digitales (Scasso amp Techera 2008) ldquoJUEGO DE ENTRENAMIENTO MENTAL PARA IPHONErdquo Proyecto realizado por el estudiante de la Universidad Politeacutecnica de Catalunya (UPC) Daniel Mulero Marcos en la fecha del 17 de enero del 2011 Este proyecto se centra en el disentildeo e implementacioacuten de una aplicacioacuten para plataforma moacutevil La aplicacioacuten seraacute un videojuego compuesto por varios mini juegos subdivididos por categoriacuteas Las categoriacuteas seraacuten ldquoMemoriardquo ldquoCaacutelculordquo ldquoPercepcioacutenrdquo y ldquoReflejosrdquo La aplicacioacuten estaraacute destinada a todo tipo de jugadores tanto jugadores experimentados como jugadores ocasionales El proyecto se desarrollaraacute para iPhone una plataforma con una gran cuota de mercado ya que de esta forma es posible llegar a maacutes usuarios Este proyecto se desarrollaraacute para dispositivos iOS 41 o superiores Fuente RECERCAT (Dipogravesit de la Recerca de Catalunya) es un repositorio cooperativo en el que se puede consultar la literatura de investigacioacuten de las universidades y centros de investigacioacuten de Catalunya como artiacuteculos trabajos de investigacioacutenfin de maacutester trabajosproyectos fin de carrera ponencias de congresos informes documentos de trabajo etc UPC (Mulero Marcos 2012)
~ 22 ~
ldquoIPARK APLICACIOacuteN SOBRE LA ZONA AZUL PARA DISPOSITIVOS IOSrdquo Proyecto realizado por los Ingenieros teacutecnicos en Informaacutetica de gestioacuten Mikel Elorza Beraacutestegui y Mikel Izal Azcarate pertenecientes a la escuela teacutecnica superior de ingenieros industriales y de telecomunicacioacuten de pamplona finalizado el 1 de julio de 2011 El presente proyecto ha sido elaborado como respuesta a una necesidad real Que ha sido observada en el diacutea a diacutea de un conductor de Pamplona la Complejidad y poca claridad de las Zonas de Estacionamiento Limitado y Restringido (ZEL y ZER) comuacutenmente conocidas como Zona Azul La plataforma elegida para el desarrollo ha sido el sistema operativo iOS de Apple para dispositivos moacuteviles Esto permite que los usuarios dispongan de la aplicacioacuten cuando realmente la necesitan a la hora de estacionar en la calle Ademaacutes se ha elegido iOS frente a su competidor maacutes directo Android por tener un ecosistema de desarrollo y distribucioacuten de aplicaciones maacutes afianzado y con grandes expectativas de futuro El objeto del proyecto es el de desarrollar un proyecto informaacutetico que deacute como resultado una pieza de software que pueda ser distribuida en la Apple Store y ofrecida al ayuntamiento de Pamplona (o en su defecto a la empresa adjudicataria Dornier SA)
Fuente UpNa - Repositorio institucional de la Universidad Puacuteblica de Navarra
Proyectos de fin de carrera digitales (Mikel Elorz Beraacutestegui 2011)
ldquoSISTEMAS OPERATIVOS EN MOacuteVILESrdquo Trabajo de grado en ingenieriacutea de la tecnologiacutea minera de la escuela de ingenieriacutea minera e industrial de Almadeacuten de la Universidad Castilla la Mancha elaborado por los estudiantes Silvia de la Fuente Trincado Jhim kelvin Moya Chanca Joseacute Feacutelix Ruiz Requena Mariacutea del Rosario Saucedo Saacutenchez Joseacute Luis Velaacutesquez Taipe y presentado en Almadeacuten - ciudad real finalizado en marzo del 2011 Este trabajo tuvo por objetivo Analizar los Sistemas Operativos Moacuteviles maacutes utilizados en la actualidad sus funcionalidades efectividad y estudiando coacutemo se podiacutea seleccionar un buen moacutevil de acuerdo las caracteriacutesticas de sus sistemas operativos maacutes uacutetiles En el documento se puede apreciar que Se realizoacute una aproximacioacuten a las distintas posibilidades multimedia que ofrece un dispositivo moacutevil en la actualidad haciendo un recorrido desde el surgimiento de los primeros moacuteviles viendo la evolucioacuten que se ha ido produciendo en este tipo de sistemas describiendo los distintos SO que utilizan los moacuteviles actuales sus distintas capacidades multimedia y asiacute concluir con un resumen la oferta comercial y los lanzamientos futuros Fuente trabajo de grado de la Universidad Castilla la Mancha
~ 23 ~
(SILVIA DE LA FUENTE TRINCADO 2011) Los antecedentes son una forma praacutectica de comprender lo que en otros proyectos se ha elaborado y que han tenido por objetivo para asiacute tomarlos como apoyo a mi proyecto proponieacutendome formas de coacutemo abordar el problema planteado brindaacutendome una guiacutea para el desarrollo continuo de la investigacioacuten y de esta manera tomarlos como referencia para el eacutexito de mi proyecto ldquoiTRANSMILENIOrdquo
Es una aplicaciones de planificacioacuten de viajes en Transmilenio para el iPhone iPod Touch iPad creada por QualMob una empresa startup de base tecnoloacutegica especializada en el desarrollo de aplicaciones iOS (iPhoneiPod touch e iPad) y Android para teleacutefonos inteligentes y tablets Desarrollada con el fin de planificar de manera maacutes faacutecil y eficiente el viaje en Transmilenio un transporte puacuteblico de la ciudad de Bogotaacute en donde se encuentran las siguientes caracteriacutesticas que pueden ser utilizadas elegir la salida y la estacioacuten de llegada Las rutas con la transferencia averiguar el nuacutemero de paradas averiguar el horario de los autobuses y mapa de todo el sistema de Transmilenio Es una aplicacioacuten Libre Categoriacutea Navegacioacuten Actualizada el 2 de mayo 2012 Versioacuten 211 Tamantildeo 27 MB e Idioma Ingleacutes Fuente paacutegina de internet de la empresa QualMOb (httpqualmobcom) Paacutegina de internet de la Apple (httpitunesapplecomusappitransmiid458491091mt=8)
42 iquestQUE ES UN DIPOSITIVO MOVIL
Los dispositivos moacuteviles (tambieacuten conocidos como computadora de mano o handheld) son aparatos de tamantildeo pequentildeo con algunas capacidades de procesamiento moacuteviles o no con conexioacuten permanente o intermitente a una red con memoria limitada disentildeados especiacuteficamente para una funcioacuten pero que pueden llevar a cabo otras funciones maacutes generales 1 Un dispositivo moacutevil es todo aquel aparato que pueda contener informacioacuten tenga un sistema operativo y haga una funcioacuten en particular en la que se necesita almacenar consultar y manipular informacioacuten que se encuentre en eacutel y que ademaacutes sea portable y de un tamantildeo muy reducido
1 Ing Ernesto Quiroz Ramiacuterez (2011) Programacioacuten de Dispositivos Moacuteviles
~ 24 ~
Dado las diferentes funcionalidades y caracteriacutesticas estos se clasifican de la siguiente manera
Dispositivo Moacutevil de Datos Limitados Son aquellos que se caracterizan por tener una pantalla pequentildea de tipo texto Ofrecen servicios de datos generalmente limitados a SMS y acceso WAP
Dispositivo Moacutevil de Datos Baacutesicos Se caracterizan por tener una pantalla de tamantildeo medio menuacute o navegacioacuten basada en iconos y ofrecer acceso a emails lista de direcciones SMS y en algunos casos a un navegador web baacutesico Ej (ldquoSmartphonerdquo)
Dispositivo Moacutevil de Datos Mejorados Se caracterizan por tener pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) navegacioacuten de tipo stylus tambieacuten ofrecen las mismas caracteriacutesticas que el Dispositivo Moacutevil de Datos Baacutesicos maacutes aplicaciones nativas como aplicaciones de Microsoft Office Mobile (Word Excel PowerPoint) y aplicaciones corporativas usuales en versioacuten moacutevil como Sap portales intranet etc2
Tipos de dispositivos moacuteviles
Teleacutefonos celulares
Teleacutefono inalaacutembrico
Videoconsola portaacutetil
Reproductor de audio portaacutetil
PDA (personal digital assistant)
Caacutemara digital
Caacutemara de viacutedeo
Mensaacutefono (maacutes conocido como busca o pager)
PC Ultra Moacutevil Hoy en diacutea los dispositivos moacuteviles ofrecen una gran variedad de funciones y los nuevos avances en estas tecnologiacuteas nos permiten ir a un ritmo donde la utilizacioacuten de las tecnologiacuteas nos deja descrestados por la variedad de aplicaciones existentes en donde tenemos la libertad de hacer tantas cosas que antes eran impensables tales como almacenar informacioacuten de contactos hacer una lista de tareas pendientes registrar citas y recordatorios utilizar la calculadora enviar o recibir e-mail obtener informacioacuten de noticias entretenimiento cotizaciones de bolsa provenientes de la Internet jugar ver TV enviar mensajes de texto reproducir muacutesica videos en fin una cantidad de
2 Arturo Baz Alonso Irene Ferreira Artime Mariacutea Aacutelvarez Rodriacuteguez Rosana Garciacutea Baniello I F (2008) Dispositivos moacuteviles Oviedo Universidad de Oviedo
~ 25 ~
funcionalidades que hacen de los dispositivos moacuteviles una forma maravillosa de tener todo lo deseado en tan solo un equipo de bolsillo
Siendo de gran importancia el tema de intereacutes principal de este proyecto son los teleacutefonos celulares un tipo de dispositivo moacutevil integrado con una variedad de caracteriacutesticas que en el desarrollo de este trabajo se veraacute explicado 43 iquestQUE ES UN CELULAR
Un celular es un dispositivo electroacutenico que permite realizar muacuteltiples operaciones de forma inalaacutembrica en cualquier lugar donde tenga sentildeal Entre las muacuteltiples operaciones se incluyen la realizacioacuten de llamadas telefoacutenicas navegacioacuten por internet envioacute de mensajes de texto (SMS) captura de fotos y sonido reloj agenda realizacioacuten de pagos etc Su manejo suele ser sencillo ya sea a traveacutes de la escritura sobre una pantalla
(sensible electroacutenicamente) mediante un ldquostickrdquo especifico o de un pequentildeo
teclado (su integracioacuten o no en el propio dispositivo es opcional) (Basterretche
2007)
Historia del teleacutefono celular El teleacutefono celular se remonta a los inicios de la Segunda Guerra Mundial donde ya se veiacutea que era necesaria la comunicacioacuten a distancia es por eso que la compantildeiacutea Motorola creoacute un equipo llamado Handie Talkie H12-16 que es un equipo que permitiacutea el contacto con las tropas viacutea ondas de radio que en ese tiempo no superaban maacutes de los 600 Khz Fue soacutelo cuestioacuten de tiempo para que las dos tecnologiacuteas de Tesla y Marconi se unieran y dieran a la luz la comunicacioacuten mediante radio-teleacutefonos Martiacuten Cooper pionero y considerado como el padre de la telefoniacutea celular fabricoacute el primer radio teleacutefono entre 1970 y 1973 en Estados Unidos y en 1979 aparecieron los primeros sistemas a la venta en Tokio (Japoacuten) fabricados por la Compantildeiacutea NTT Los paiacuteses europeos no se quedaron atraacutes y en 1981 se introdujo en Escandinava un sistema similar al AMPS (Advanced Mobile Phone System) En 1985 se comenzaron a perfeccionar y amoldar las caracteriacutesticas de este nuevo sistema revolucionario ya que permitiacutea comunicarse a distancia Fue asiacute que en los antildeos 1980 se llegoacute a crear un equipo que ocupaba recursos similares a los Handie Talkie pero que iba destinado a personas que por lo general eran grandes empresarios y debiacutean estar comunicados es ahiacute donde se crea el teleacutefono moacutevil y marca un hito en la historia de los componentes inalaacutembricos ya que con este equipo podriacutea hablar a la hora deseada y dondequiera que se encuentre El primer teleacutefono celular de la historia fue el Motorola DynaTAC 8000X y aparecioacute por primera vez en el antildeo de 1983 Era algo pesado 28 onzas (unos
~ 26 ~
780 gramos) y mediacutea 33 x 9 x 45cm Este era analoacutegico y teniacutea un pequentildeo display de LEDs La bateriacutea soacutelo daba para una hora de conversacioacuten u 8 horas en stand-by La calidad de sonido era muy mala era pesado y poco esteacutetico pero aun asiacute habiacutea personas que pagaban los USD $3995 que costaba lo cual lo convirtioacute en un objeto de lujo (Pierina Loarte Bornas 2007)
Ilustracioacuten 1 Handie Talkie H12-16 y el DynaTAC 8000X
Fuente (vicentin 2009)
La evolucioacuten del teleacutefono moacutevil ha permitido disminuir su tamantildeo y peso desde ese primer teleacutefono moacutevil en 1983 que pesaba 780 gramos a los actuales maacutes compactos y con mayores prestaciones de servicio El desarrollo de bateriacuteas maacutes pequentildeas y de mayor duracioacuten pantallas maacutes niacutetidas y de colores la incorporacioacuten de software maacutes amigable los cuales diariamente hacen que el teleacutefono moacutevil sea un dispositivo muy apreciado en la vida moderna El avance de esta tecnologiacutea incorpora funciones que no hace mucho pareciacutean futuristas como juegos reproduccioacuten de muacutesica MP3 y otros formatos correo electroacutenico SMS agenda electroacutenica PDA fotografiacutea digital y video digital video llamada navegacioacuten por Internet y hasta Televisioacuten digital y estos avances seguiraacuten creciendo hasta lograr las cosas menos pensadas (Pierina Loarte Bornas 2007) 44 iquestQUE ES UN SMARTPHONE
En general un Smartphone es un teleacutefono de gran alcance celular multifuncioacuten que incorpora una serie de funcionalidad de PDA Por ejemplo un planificador personal calendario y libreta de direcciones asiacute como la posibilidad de acceder a los servicios de Internet y aplicaciones que utilizan ya sea el teclado o el laacutepiz Ademaacutes de hacer una llamada desde el teleacutefono inteligente los usuarios pueden navegar por Internet consultar el correo electroacutenico crear documentos juegos online programas de actualizacioacuten o acceso a la red de la empresa a traveacutes de una red privada virtual (VPN) Acceso inalaacutembrico a Internet estaacute
~ 27 ~
habilitada a traveacutes de las redes inalaacutembricas celulares como GSM GPRS CDMA CDMA2000 WCDMA o entre otros (Baijiang Yang 2007)
Ilustracioacuten 2 iPhone (ejemplo de un Smartphone)
Fuente (knees 2013)
La telefoniacutea celular es un tipo de dispositivo moacutevil que desde su primer aparicioacuten estaacute moviendo al mundo pues sus diferentes caracteriacutesticas hacen que las cosas se vuelvan maacutes sencillas en donde un avance tecnoloacutegicos como lo es los ldquoSmartphonerdquo nos proporciona una cantidad de aplicaciones increiacutebles de acuerdo a los requerimientos y necesidades de quien los compre Por esta razoacuten el describir su historia nos muestra coacutemo ha crecido y el gran alcance que esta tiene y que no va a parar por lo cual es de total pertinencia conocer su historia y el seguir desarrollando estudios en cuanto a esta tecnologiacutea 45 iquestQUE ES UN SISTEMA OPERATIVO
Existen varias definiciones para describir lo que es un sistema operativo pero en este caso se nombrara dos muy relevantes que ayudara a entender cuaacutel es su concepto
El sistema operativo es el componente encargado de gestionar los recursos del ordenador asiacute como los programas instalados en este De esta forma nos permite utilizar el software de una manera coacutemoda y gestionar maacutes adecuadamente los recursos del hardware
Un sistema operativo es un programa destinado a permitir la comunicacioacuten del usuario con un computador y gestionar sus recursos de una forma eficaz comienza a trabajar cuando se enciende el
~ 28 ~
computador y gestiona el hardware de la maquina desde los niveles maacutes baacutesicos
Ademaacutes de todo hay que tener en cuenta que un SO no solo se encuentra en un computador o en un servidor sino que tambieacuten lo podemos encontrar en la mayoriacutea de los dispositivos moacuteviles o electroacutenicos que contengan microprocesadores para poder funcionar (Caballero 2003) entre estos se encuentran los teleacutefonos moacuteviles que son los de intereacutes en este trabajo Clasificacioacuten de los sistemas operativos Seguacuten la utilizacioacuten de recursos
sistemas monotarea
sistemas multitarea
sistemas de multiprocesamiento
Seguacuten la interactividad
procesamiento por lotes
Seguacuten el nuacutemero de usuarios
sistemas monousuario
sistemas multiusuario
Seguacuten el tipo de aplicaciones
sistemas de propoacutesito general
sistemas de propoacutesito especial (Juan A Perez Campanero 2002)
iquestCoacutemo funciona un sistema operativo Un sistema operativo proporciona una plataforma de software sobre la cual otros programas llamados aplicaciones pueden funcionar Las aplicaciones se disentildean y programan para que se ejecuten sobre un sistema operativo en particular por tanto la eleccioacuten del sistema operativo determina en gran medida las aplicaciones que se pueden utilizar Dentro de las funciones baacutesicas de los Sistemas Operativos se destacan
Proporcionar maacutes comodidad en el uso de un computador
Gestionar de manera eficiente los recursos del equipo ejecutando servicios para los procesos (programas)
Brindar una interfaz al usuario ejecutando instrucciones (comandos)
Permitir que los cambios debidos al desarrollo del propio SO se puedan realizar sin interferir con los servicios que ya se prestaban
Un sistema operativo desempentildea 5 funciones baacutesicas en la operacioacuten de un sistema informaacutetico
~ 29 ~
1) Interfaces del usuario
Es la parte del sistema operativo que permite comunicarse con eacutel de tal manera que se puedan cargar programas acceder archivos entre otras tareas Existen tres tipos baacutesicos de interfaces las que se basan en comandos las que utilizan menuacutes y las interfaces graacuteficas de usuario
2) Administracioacuten de recursos Un sistema operativo sirve para administrar los recursos de hardware y de redes de un sistema informaacutetico como la CPU memoria dispositivos de almacenamiento secundario y perifeacutericos de entrada y de salida
3) Administracioacuten de archivos Un sistema de informacioacuten contiene programas de administracioacuten de archivos que controlan la creacioacuten borrado y acceso de archivos de datos y de programas Tambieacuten implica mantener el registro de la ubicacioacuten fiacutesica de los archivos en los discos magneacuteticos y en otros dispositivos de almacenamiento secundarios
4) Administracioacuten de tareas Los programas de administracioacuten de tareas de un sistema operativo administran la realizacioacuten de las tareas informaacuteticas de los usuarios finales Los programas controlan queacute aacutereas tienen acceso al CPU y por cuaacutento tiempo Las funciones de administracioacuten de tareas pueden distribuir una parte especiacutefica del tiempo del CPU para una tarea en particular e interrumpir a la CPU en cualquier momento para sustituirla con una tarea de prioritaria
5) Servicio de soporte Los servicios de soporte de cada sistema operativo dependeraacuten de la implementacioacuten particular de eacuteste con la que estemos trabajando Entre las 65 maacutes conocidas se pueden destacar las implementaciones de Unix desarrolladas por diferentes empresas de software los sistemas operativos de Apple Inc como Mac OS X para las computadoras de Apple Inc los sistemas operativos de Microsoft y las implementaciones de software libre como GNULinux o BSD producidas por empresas universidades administraciones puacuteblicas organizaciones sin fines de lucro o comunidades de desarrollo 3 Para poder partir desde cero en este proyecto fue importante definir que es un sistema operativo y como se compone para poder entender las particularidades que se desprenden en cada uno de los sistemas operativos que se estudiaran a continuacioacuten entendiendo asiacute que el SO es el intermediario por el cual nos
3 Jhon Edison CANO BLANDON investigacioacuten de sistemas operativos para dispositivos moacuteviles entre 2008-2010 con objeto de seleccionar el maacutes adecuado a emplear como plataforma tecnoloacutegica para el proyecto de investigacioacuten ldquomedirrdquo Universidad Tecnoloacutegica de Pereira Facultad de ingenieriacutea de sistemas y computacioacuten Pereira 2010 paacuteg 63 Tesis de Grado
~ 30 ~
entendemos con la maquina el cual permite que tengamos ese contacto directo y experiencia usuario maacutequina en este caso usuario- teleacutefono celular 46 SISTEMAS OPERATIVOS MOVILES
Un sistema operativo moacutevil es un sistema operativo que controla un dispositivo moacutevil al igual que las computadoras utilizan Windows o Linux entre otros Sin embargo los sistemas operativos moacuteviles son maacutes simples y estaacuten maacutes orientados a la conectividad inalaacutembrica los formatos multimedia para moacuteviles y las diferentes maneras de introducir informacioacuten en ellos (oskcrazy 2013) 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
En cuanto a sistemas operativos de dispositivos moacuteviles hay una gran variedad entre los cuales se destacan y es pertinente hablar estaacuten Symbian BlackBerry OS Windows Mobile el sistema moacutevil de Google Android y por supuesto el que es de intereacutes en este proyecto i OS de Apple
471 Android
Ilustracioacuten 3 Android
Fuente (Gran Viacutea de les Corts Catalanes 2013)
Android es una pila de software (esto hace referencia a que el sistema estaacute compuesto por capas de software que se colocan una sobre otra de manera que cada una puede usar directamente a la que tiene inmediatamente debajo) para dispositivos moacuteviles que incluye un sistema operativo middleware y aplicaciones clave El SDK de Android proporciona las herramientas y APIs necesarias para empezar a desarrollar aplicaciones en la plataforma Android usando el lenguaje de programacioacuten Java
~ 31 ~
Google compro la compantildeiacutea Android Inc en el antildeo 2005 donde Android desarrollaba un software para teleacutefonos moacuteviles mostrando que Google teniacutea en mente ingresar al mercado de la telefoniacutea celular y ya durante la inauguracioacuten de la ldquoOpen Handset Alliancerdquo el 5 de diciembre del 2007 se estrenoacute Android como una plataforma de soporte para equipos moacuteviles creados en la versioacuten 26 del kernel de Linux desde entonces el avance de Android ha sido ascendente y hoy es uno de los sistemas operativos para moacuteviles maacutes usados del mundo
Caracteriacutesticas de Android
Aplicacioacuten del marco que permite la reutilizacioacuten y sustitucioacuten de componentes
Dalvik maacutequina virtual optimizada para dispositivos moacuteviles
Navegador integrado basado en el coacutedigo abierto Web Kit motor
Graacuteficos optimizados impulsados por una costumbre de la biblioteca de
graacuteficos 2D graacuteficos 3D basado en Open GL ES 10
SQLite para el almacenamiento de datos estructurados
Medios de apoyo para el audio comuacuten videos y formatos de imagen (MPEG4 H264 MP3 AAC AMR JPG PNG GIF)
Telefoniacutea GSM
Bluetooth EDGE 3G y Wi-Fi
Entorno de desarrollo completo que incluye un emulador de dispositivos
herramientas para la depuracioacuten la memoria y perfiles de rendimiento y un plugin para el IDE de Eclipse
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
~ 32 ~
Arquitectura de Android
Ilustracioacuten 4 Arquitectura de Android
Fuente (Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
Aplicaciones
Android venderaacute un conjunto de aplicaciones baacutesicas que incluye un cliente de correo electroacutenico programa de SMS calendario mapas navegador contactos y otros Todas las aplicaciones se escriben usando el lenguaje de programacioacuten Java
Framework de aplicacioacuten
Al proporcionar una plataforma de desarrollo abierta Android ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras Los desarrolladores son libres para tomar ventaja del hardware del dispositivo informacioacuten de acceso a la ubicacioacuten ejecutar servicios en segundo plano establecer alarmas antildeadir las notificaciones a la barra de estado y mucho maacutes
Los desarrolladores tienen acceso completo a la API de un mismo marco utilizado por las aplicaciones baacutesicas La arquitectura de la aplicacioacuten estaacute disentildeada para simplificar la reutilizacioacuten de componentes cualquier aplicacioacuten puede publicar sus capacidades y cualquier otra aplicacioacuten podraacute hacer uso de esas capacidades
~ 33 ~
Detraacutes de todas las aplicaciones hay un conjunto de servicios y sistemas incluyendo
Un conjunto rico y extensible de vistas que se pueden utilizar para construir una aplicacioacuten incluyendo listas rejillas cajas de texto botones e incluso un navegador web embebido
Proveedores de contenido que permiten a las aplicaciones acceder a datos de otras aplicaciones (como los contactos) o para compartir sus propios datos
Un administrador de recursos que facilita el acceso a los recursos que no son de coacutedigo tales como cadenas localizadas graacuteficos y archivos de disentildeo
Un Administrador de notificaciones que permite a todas las aplicaciones mostrar alertas personalizadas en la barra de estado
Un gestor de actividad que gestiona el ciclo de vida de las aplicaciones y proporciona una navegacioacuten comuacuten backstack
Bibliotecas
Android incluye un conjunto de bibliotecas C C + + utilizadas por los diversos componentes del sistema Android Estas capacidades estaacuten expuestas para los desarrolladores a traveacutes del marco de aplicacioacuten para Android Algunas de las bibliotecas del nuacutecleo se enumeran a continuacioacuten
Sistema de biblioteca de C Bibliotecas multimedia Superficie manager LibWebCore SGL Bibliotecas 3D FreeType SQLite
Android en tiempo de ejecucioacuten
Android incluye un conjunto de bibliotecas de nuacutecleo que proporciona la mayor parte de las funciones disponibles en las bibliotecas de nuacutecleo del lenguaje de programacioacuten java Cada aplicacioacuten Android se ejecuta en su propio proceso con su propia instancia de la maacutequina virtual de Dalvik Dalvik ha sido escrito para que un dispositivo pueda ejecutar muacuteltiples VMs eficientemente La maacutequina virtual Dalvik ejecuta archivos en el formato Dalvik ejecutable (dex) que estaacute optimizado para memoria miacutenima La maacutequina virtual estaacute basado en el registro y corre clases compiladas por un compilador de lenguaje Java que se han transformado en el formato dex por a herramienta que incluye lsquodxrsquo
La maacutequina virtual de Dalvik se basa en el kernel de Linux para la funcionalidad subyacente como subprocesos y administracioacuten de memoria de bajo nivel
~ 34 ~
Kernel de Linux
Android se basa en la versioacuten 26 de Linux para los servicios baacutesicos del sistema como la seguridad la gestioacuten de memoria gestioacuten de procesos pila de red y el modelo de controlador El nuacutecleo tambieacuten actuacutea como una capa de abstraccioacuten entre el hardware y el resto de la pila de software
(Cruz Alonso Gopar Mecinas Loacutepez Loacutepez amp Moya Garciacutea 2008)
472 Symbian OS
Ilustracioacuten 5 Symbian OS
Fuente (Amartino 2006)
Symbian es un sistema operativo de coacutedigo abierto actualmente utilizado en dispositivos moacuteviles de Nokia El sistema operativo subyacente histoacutericamente fue creado por Symbian Ltd y licenciado por Nokia y otros fabricantes de teleacutefonos con plataformas de la IU por encima (Nokia S60 NTT DoCoMo MOAP y tecnologiacutea UIQ) A finales de 2008 Nokia comproacute Symbian Ltd y creoacute la Fundacioacuten Symbian (independiente) de coacutedigo abierto y administro el software
Symbian es un SO exclusivo para celulares creado por una alianza entre varias empresas de telefoniacutea celular en las que se encuentran Nokia Sony Ericsson Panasonic Motorola PSION LG Samsung Siemens Arima Beng Sharp Fujitsu Lenovo Mitsubishi Electric entre otros Estaacute basado en su predecesor el sistema EPOC3 el cual fue utilizado en Handhelds y PDArsquos
Principales caracteriacutesticas de Symbian OS
Rendimiento - Symbian OS estaacute disentildeado para hacer exigencias miacutenimas en bateriacuteas y tener poca memoria
Multitarea - telefoniacutea y mensajeriacutea universal son componentes fundamentales Todas las aplicaciones se han disentildeado para funcionar perfectamente en paralelo
Normas - el uso de tecnologiacuteas basadas en estaacutendares de calidad acordados es un principio baacutesico del sistema operativo Symbian lo que garantiza que las aplicaciones sean robustas portaacutetiles e interoperables
Orientada a objetos - arquitectura de software
~ 35 ~
Los requisitos de tiempo de ejecucioacuten de memoria se reducen al miacutenimo los tamantildeos muy pequentildeos ejecutables y coacutedigo basada en ROM se ejecuta en su lugar
Seguridad son mecanismos para ofrecer comunicaciones seguras y almacenamiento de datos segura
Solicitud de apoyo para el medio ambiente internacional con una funcioacuten de conjuntos de caracteres Unicode
Una API rica y variada que permite el acceso a los componentes reutilizables en aplicaciones de desarrollo
ARQUITECTURA DE SYMBIAN
Ilustracioacuten 6 Arquitectura Symbian OS
Fuente (Obando 2010)
Los conductores del nuacutecleo del sistema servidor de archivos la gestioacuten de la memoria y el controlador de dispositivo se encuentran en la base de la capa del sistema operativo Symbian usa enfoque micro nuacutecleo El kernel maneja los recursos del sistema como la memoria y es responsable del tiempo compartido de las aplicaciones y tareas del sistema Los controladores de dispositivos proporcionan la interfaz para elementos especiacuteficos de hardware y control teclado pantalla puerto de infrarrojos y asiacute sucesivamente
Las capas superiores del sistema proporcionan la comunicacioacuten y amplios servicios de computacioacuten tales como TCP IP IMAP4 SMS y gestioacuten de base de datos Symbian OS proporciona los componentes de gestioacuten de datos comunicaciones graacuteficos multimedia seguridad gestioacuten de informacioacuten personal (PIM) de los motores de la aplicacioacuten el motor de mensajeriacutea Bluetooth motores de navegacioacuten y soporte para la sincronizacioacuten de datos y la internacionalizacioacuten4
4 httpwwwdevelopernokiacomCommunityWikiSymbian_OS
~ 36 ~
473 BlackBerry
Ilustracioacuten 7 BlackBerry
Fuente (Desbloquear Celular 2011)
RIM (Research In Motion) es la creadora del genial BlackBerry un sistema operativo multitarea que ha estado arrasando en la escena empresarial en especial por sus servicios para correo y teclado QWERTY Este sistema soporta desarrollo de aplicaciones Java para moacuteviles con los perfiles MIDP 10 y desde la versioacuten 4 de BlackBerry en MIDP 205
Ademaacutes de poder desarrollar en MIDP tambieacuten es posible hacer uso del API propietario de RIM aunque puede ser necesario firmar la aplicacioacuten por seguridad
BlackBerry es un dispositivo de mano inalaacutembrico introducido en 1999 en donde sus caracteriticas principales se basan en correo electroacutenico telefoniacutea moacutevil SMS navegacioacuten web y otros servicios de informacioacuten inalaacutembricos y transporta su informacioacuten a traveacutes de las redes de datos inalaacutembricas de empresas de telefoniacutea moacutevil
5 versioacuten de J2ME en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets tales como juegos aplicaciones o todo tipo de software
~ 37 ~
ARQUITECTURA
Ilustracioacuten 8 Arquitectura de BlackBerry Enterprise Solution
Fuente (UNAD)
BlackBerry Enterprise Server Es un software robusto que actuacutea como viacutenculo centralizado entre dispositivos moacuteviles redes moacuteviles y aplicaciones corporativas El servidor se integra con los sistemas de colaboracioacuten y mensajeriacutea corporativa para proporcionar a los usuarios que se desplazan con frecuencia acceso al correo electroacutenico mensajeriacutea instantaacutenea corporativa y herramientas de administracioacuten de informacioacuten personal Todos los datos entre las aplicaciones y los dispositivos BlackBerry pasan a traveacutes del servidor
BlackBerry Mobile Data System (BlackBerry MDS) es una infraestructura optimizada para crear implementar y administrar aplicaciones para BlackBerry Enterprise Solution Proporciona componentes esenciales que permiten implementar aplicaciones distintas del correo electroacutenico para usuarios que se desplazan con frecuencia como herramientas para desarrolladores servicios administrativos y software del dispositivo BlackBerry Tambieacuten utiliza el mismo modelo probado de entrega raacutepida de BlackBerry y las funciones de seguridad avanzada que se utilizan para el correo electroacutenico de BlackBerry Dispositivos BlackBerry Son dispositivos de voz y datos integrados que estaacuten optimizados para trabajar con BlackBerry Enterprise Solution Proporcionan accesos basados en el acceso al correo electroacutenico y a los datos de los sistemas y aplicaciones corporativos ademaacutes de aplicaciones Web MMS SMS y organizadores
~ 38 ~
BlackBerry Connect De fabricantes de vanguardia incluyen la tecnologiacutea de transmisioacuten de BlackBerry y permiten la conexioacuten con BlackBerry Enterprise Server5 Dispositivos BlackBerry Built-In de fabricantes de vanguardia integran todas las funcionalidades de BlackBerry como el correo electroacutenico calendario contactos explorador tareas y bloc de notas Los dispositivos BlackBerry Built-In tambieacuten ofrecen la tecnologiacutea de transmisioacuten probada de BlackBerry y capacidad de conexioacuten con BlackBerry Enterprise Server6 BlackBerry Alliance Program Agrupa una gran comunidad de proveedores de software integradores de sistemas y proveedores de soluciones independientes que ofrecen aplicaciones servicios y soluciones para BlackBerry Enterprise Solution Estaacute disentildeado para ayudar a las organizaciones a aprovechar al maacuteximo BlackBerry Enterprise Solution a la hora de trabajar de forma moacutevil en las empresas7 Servicios de asistencia teacutecnica de BlackBerry Disponibles incluyen Centro de asistencia teacutecnica Servicios de asistencia teacutecnica programa de desarrollo corporativo y servicios profesionales de RIM Estas herramientas y programas estaacuten disentildeados para ayudar a las organizaciones a implementar administrar y ampliar su solucioacuten de movilidad6
Entretenimiento BlackBerry os
Acceso a datos corporativos BlackBerry Maps Bluetooth Caacutemara y grabacioacuten de video Comunicacioacuten Correo electroacutenico moacutevil Explorador Funciones GPS Informacioacuten Mensajeriacutea instantaacutenea Modem inalaacutembrico Entretenimiento donde vaya Organizador Pantalla taacutectil SurePress Redes sociales Reproductor multimedia SureType Teleacutefono Siempre en contacto Aplicacioacuten eBay para smartphones BlackBerry
6 httpusblackberrycomataglancesolutionsarchitecturejsp
~ 39 ~
BlackBerry Se compone de Smartphones integrados con software que permite el acceso a una variedad de servicios de datos y de comunicaciones
Los smartphones BlackBerry le permiten mantenerse en contacto con todo lo que es importante para los usuarios mientras que estaacuten en movimiento por lo que se considera principalmente para uso laboral brindando caracteriacutesticas como E-mail teleacutefono mapas organizador aplicaciones juegos Internet y mucho maacutes Algunos Smartphone incluso cuentan con reproductor de medios y la caacutemara por lo que realmente tiene todo lo que necesitas en un solo dispositivo muy estilizado
La solucioacuten BlackBerry es compatible con las principales plataformas de correo electroacutenico de la empresa y puede ser personalizado para satisfacer las necesidades de una persona o toda una empresa a cualquier escala en cualquier industria
474 Windows Phone
Ilustracioacuten 9 Windows Phone
Fuente (Gallardo 2011)
Windows Phone es un sistema operativo moacutevil desarrollado por Microsoft y disentildeado para su uso en smartphones y otros dispositivos moacuteviles Es basado en el nuacutecleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones baacutesicas utilizando las API de Microsoft Windows Su disentildeo es similar a las versiones de escritorio de Windows esteacuteticamente Su tienda de aplicaciones es el Windows Marketplace for Mobile Windows Mobile ha evolucionado y cambiado de su uacuteltima versioacuten fue llamada Windows Phone y fue anunciada el diacutea 15 de febrero del 2010
FUNCIONES Y SERVICIOS DE ENTRETENIMIENTO
Las caracteriacutesticas y los servicios de Windows Phone pueden diferir en funcioacuten de varios factores incluidos el idioma la configuracioacuten regional el operador de telefoniacutea moacutevil el fabricante de hardware el modelo del teleacutefono y la versioacuten del sistema operativo
~ 40 ~
Idioma de Pantalla
Estaacuten disponibles los siguientes idiomas de pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso y sueco Los idiomas concretos que se incluyen en el teleacutefono son elegidos por el operador de telefoniacutea moacutevil o el fabricante del teleacutefono
Idioma del Teclado en pantalla
Estaacuten disponibles los siguientes idiomas del teclado en pantalla alemaacuten checo chino (simplificado y tradicional) coreano daneacutes espantildeol finlandeacutes franceacutes griego huacutengaro indonesio ingleacutes (Reino Unido y EE UU) italiano japoneacutes malayo neerlandeacutes noruego (Bokmaringl) polaco portugueacutes (Brasil y Portugal) ruso sueco turco y ucraniano Estos idiomas de entrada estaacuten disponibles en todos los teleacutefonos sin importar los idiomas de pantalla que el operador de telefoniacutea moacutevil o el fabricante del teleacutefono hayan decidido incluir
Compra de aplicaciones Windows Phone Marketplace un servicio de Microsoft para Windows Phone 7en donde en su plataforma web se pueden descargar aplicaciones como juegos utilitarios y buscar cualquier tipo de contenidos Fue lanzada el 21 de octubre 2010 a un antildeo del lanzamiento de Windows 7
Muacutesica viacutedeos y podcasts
En algunos paiacuteses o regiones se obtiene acceso a muacutesica viacutedeos y podcasts de Zune Marketplace En funcioacuten de la regioacuten o del paiacutes en el que el usuario se encuentre haciendo algunas o todas estas cosas
Comprar muacutesica Alquilar muacutesica con una suscripcioacuten a Zune Pass Muacutesica Comprar o alquilar viacutedeos con el software de Zune de tu equipo Descargar podcasts Usar Smart DJ
Buacutesqueda
- Buacutesqueda de Bing
- Buacutesqueda local
- Buacutesqueda de imaacutegenes
- Buacutesqueda de muacutesica
- Buacutesqueda Visioacuten
- Buacutesqueda por voz
- Mapas
- Rastreador local
- Traacutefico
- Encontrar y buscar
- Abrir e iniciar
- Llamar
~ 41 ~
- Voz a texto
Redes
- Wi-Fi
- Conexioacuten compartida de Internet
- Bluetooth
Otros
- Memoria (RAM
- Servicio de Xbox LIVE
- Correo de voz visual
- Mensajes MMS para grupos
- Enfoque de la caacutemara
- TTY (tambieacuten conocido como teletipo teleacutefono de texto o dispositivo telefoacutenico para personas con discapacidades auditivas)
- Aplicaciones y juegos
- Internet Explorer
- Calendario
- Contactos
- Correo electroacutenico
- Teclado
- Mensajes
- Office Mobile
- Imaacutegenes y caacutemara7
ARQUITECTURA
Ilustracioacuten 10 Arquitectura del modelo de software de Windows Phone
Fuente (Juanjo 2012)
7 httpwwwmicrosoftcomwindowsphonees-ohowtowp7basicsfeature-and-service-availabilityaspx
~ 42 ~
Modelo de aplicacioacuten En Windows Phone las aplicaciones se despliegan en forma de paquete XAP Baacutesicamente se trata de un archivo comprimido dentro del cual se puede encontrar los ensamblados y recursos originales de nuestra aplicacioacuten La uacutenica forma de instalar una aplicacioacuten en Windows Phone es mediante la tienda oficial de Microsoft el Marketplace en la cual hay que registrarse como desarrolladores para poder vender las aplicaciones Para garantizar la seguridad del sistema y evitar la pirateriacutea el malware o virus a cada aplicacioacuten se le asigna un ID uacutenico y un certificado de seguridad emitido cuando la aplicacioacuten es aprobada en el Marketplace de Windows Phone Modelo de UI El modelo de interfaz de usuario de Windows Phone se compone de elementos paacuteginas y sesiones Un elemento es todo control que se muestra al usuario una paacutegina es una agrupacioacuten loacutegica de elementos y una sesioacuten es el conjunto de interacciones que realiza un usuario sobre la aplicacioacuten e incluso puede involucrar a otras aplicaciones Integracioacuten con la nube Windows Phone nace con una clara integracioacuten con la nube Por defecto se integra con servicios como Exchange Google Mail Hotmail Xbox Live Skydrive Facebook Twitter o Bing En la versioacuten actual del kit de desarrollo no existen APIs que permitan a las aplicaciones acceder a estos servicios directamente pero se espera que aparezcan en proacuteximas actualizaciones Recientemente Microsoft ha liberado el Windows Phone Cloud Services SDK un kit de desarrollo que dotaraacute de servicios en la nube exclusivos para Windows Phone 75 como reconocimiento OCR Voz a texto y una serie de APIs para intercomunicar dispositivos sin necesidad de tener una IP fija en ellos Runtime de aplicaciones
El Runtime Application se puede ver doacutende y coacutemo se ejecutaraacuten las aplicaciones las limitaciones que se encuentran y los framework que tienen al alcance para desarrollar (Juliaacuten 2011)
~ 43 ~
475 iOS
Ilustracioacuten 11 iOS
Fuente (Apple 2012)
iOS es un sistema operativo orientado a equipos de escritorio que ha sido reinventado para dispositivos moacuteviles Ya que estaacute basado en el sistema operativo informaacutetico maacutes avanzado del mundo OS X iOS presenta un raacutepido desempentildeo y una estabilidad muy soacutelida Ahorra energiacutea y permite una asombrosa duracioacuten de la bateriacutea iOS incluso garantiza que el desempentildeo y la duracioacuten de la bateriacutea no sufran cuando se estaacute usando varias apps al mismo tiempo
La increiacuteble experiencia de usuario de iOS es posible gracias a la base soacutelida sobre la cual se construye Derivado de la base probada de Mac OS X iOS se ha simplificado para que sea compacto y eficiente aprovechando al maacuteximo el hardware taacutectil iPad iPhone e iPod Tecnologiacuteas compartidas entre iOS y Mac OS X incluye el kernel OS X BSD sockets para la creacioacuten de redes y Objective-C y C C + + compiladores para un rendimiento nativo
Cocoa Touch
Cocoa Touch es el marco de programacioacuten que maneja la interaccioacuten con el usuario en iOS Usando la tecnologiacutea derivada de cocoa y el magniacutefico escritorio Mac Cocoa Touch y la interfaz de iOS fueron completamente redisentildeadas para multi-touch Graacuteficos
El IOS ofrece una amplia gama de capacidades de graacuteficos que van desde el dibujo 2D integral para el procesamiento acelerado 3D y acceso directo a la reproduccioacuten de viacutedeo del sistema y las capacidades de captura Accesible a traveacutes de los marcos de alto nivel estas capacidades hacen que sea faacutecil para crear animaciones y transiciones dentro de magniacuteficos interfaz de usuario de la aplicacioacuten
~ 44 ~
Xcode
La completa herramienta Xcode para desarrolladores y el SDK de iOS se
distribuyen juntos y se pueden descargar de forma gratuita con soacutelo registrarse
como desarrollador en la paacutegina de Apple8
SERVICIOS Y ENTRETENIMIENTO DEL IOS Interfaz elegante e intuitiva
Los dispositivos con iOS cuentan con una revolucionaria interfaz Multi-Touch ademaacutes de una gran pantalla de Inicio convirtieacutendose en el lugar maacutes faacutecil para empezar
Centro de notificaciones
Un uacutenico lugar para ver todo lo que pasa para avisando si hay mensajes perdidos invitaciones de calendario solicitudes de amistad y mucho maacutes
Mensajes con iMessage
Ahora puedes enviarte mensajes de texto con otros usuarios de iPhone iPad e iPod touch que usan iOS 5 Los mensajes con iMessage son ilimitados y seguros
Recordatorios
Crea listas de cosas para hacer y recordar Los recordatorios saben exactamente cuaacutendo y doacutende enviar un alerta
Twitter estaacute integrado en iOS 5 para que poder iniciar sesioacuten una sola vez en Ajustes y comenzar a enviar tweets directamente desde Safari Fotos Caacutemara YouTube y Mapas
Fotos
Permite retocar fotos directamente sin necesidad de software para edicioacuten de fotos en una computadora
Caacutemara
Se puede acceder a la caacutemara directamente desde la pantalla bloqueada Usa liacuteneas de cuadriacutecula y los gestos de pellizcar para ampliar la imagen y asiacute tomar la foto perfecta
8 httpsdeveloperapplecom
~ 45 ~
Apps moacuteviles
Con miles de apps en todas las categoriacuteas iOS es la plataforma para la coleccioacuten moacutevil de apps maacutes grande del mundo Apple brinda a los desarrolladores externos un conjunto completo de herramientas y API y ha creado apps y juegos que redefinen lo que un dispositivo moacutevil puede hacer tan solo hay que navegar por la App Store y descargarlas con un toque
-Tecnologiacutea MultindashTouch
Ilustracioacuten 11 tecnologiacutea MultindashTouch del iPhone
Fuente (ETTS Elektronik TicTahSistemleri San ve Tic Ltd 2012)
-Bateriacutea de larga vida
Seguro desde su disentildeo
Todas las apps se ejecutan en un entorno seguro para que ninguacuten sitio web o app pueda acceder a los datos de otras apps IOS tambieacuten es compatible con las comunicaciones de red encriptadas para proteger tu informacioacuten confidencial Para resguardar tu privacidad las apps que solicitan informacioacuten de ubicacioacuten deben obtener primero tu permiso
Accesibilidad integrada
iOS incluye una amplia gama de funcionalidades de accesibilidad que ayudan a que las personas discapacitadas puedan experimentar todo lo que el iPhone tiene para ofrecer Por ejemplo con la tecnologiacutea de lectura de pantalla de VoiceOver integrada aquellas personas ciegas o con problemas visuales pueden escuchar una descripcioacuten del elemento que estaacuten tocando en la pantalla iOS tambieacuten ofrece soporte predeterminado para maacutes de 30 pantallas braille inalaacutembricas y muchas otras reconocidas funcionalidades de
~ 46 ~
accesibilidad como la ampliacioacuten dinaacutemica de la pantalla la reproduccioacuten de videos con subtiacutetulos audio mono texto en blanco sobre negro entre otras 9
APPLE INC
Antecedentes de la Compantildeiacutea
Apple Inc y sus subsidiarias (colectivamente Apple o la Compantildeiacutea) disentildea fabrica y comercializa dispositivos moacuteviles de comunicacioacuten y los medios de comunicacioacuten los ordenadores personales portaacutetiles y reproductores de muacutesica digital y vende una gran variedad de software relacionado servicios perifeacutericos soluciones de red y de terceros los contenidos digitales y aplicaciones Productos de la compantildeiacutea y los servicios incluyen iPhone iPad Mac iPod Apple TV una cartera de aplicaciones de software de consumo y profesional iOS y Mac OS X sistemas operativos icloud y una variedad de accesorios ofertas de servicio y soporte La compantildeiacutea tambieacuten vende y entrega de contenido digital y aplicaciones a traveacutes de la iTunes Store App Store iBookstore y la Mac App Store La Compantildeiacutea vende sus productos en todo el mundo a traveacutes de sus tiendas minoristas tiendas online y la fuerza de ventas directas asiacute como a traveacutes de terceros operadores de redes celulares mayoristas minoristas y revendedores de valor agregado Ademaacutes la compantildeiacutea vende una variedad de terceros iPhone iPad Mac y iPod compatibles con los productos incluyendo software de aplicacioacuten impresoras dispositivos de almacenamiento altavoces auriculares y otros varios accesorios y perifeacutericos a traveacutes de sus tiendas en liacutenea y al por menor La compantildeiacutea vende a los consumidores las empresas pequentildeas y medianas empresas (PYME) y la educacioacuten las empresas y clientes gubernamentales
Empresa y Gobierno
La compantildeiacutea tambieacuten vende sus productos de hardware y software para clientes empresariales y gubernamentales en cada uno de sus segmentos geograacuteficos Productos de la compantildeiacutea se han desplegado en estos mercados debido a su potencia productividad facilidad de uso y la simplicidad de una perfecta integracioacuten en entornos de tecnologiacutea de la informacioacuten Productos de la empresa son compatibles con miles de aplicaciones empresariales de terceros y servicios y sus herramientas permiten el despliegue de desarrollo y seguridad de aplicaciones a medida asiacute como la administracioacuten remota de dispositivos
- iPhone
iPhone combina un teleacutefono moacutevil un iPod y un dispositivo de comunicaciones de Internet en un producto de mano uacutenica Basado en tecnologiacutea Multi-Touch de la empresa interfaz de usuario el iPhone caracteriacutesticas de escritorio de
9 httpwwwapplecomesiphoneios
~ 47 ~
clase email navegacioacuten web buacutesquedas y mapas y es compatible tanto con Mac como en ordenadores basados en Windows iPhone se sincroniza automaacuteticamente el contenido de las bibliotecas de los usuarios de iTunes asiacute como los contactos favoritos y cuentas de correo electroacutenico iPhone permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En octubre de 2011 la Compantildeiacutea lanzoacute iPhone 4S la uacuteltima versioacuten del iPhone que incluye Siri una voz activa asistente inteligente Ademaacutes de los accesorios de la Compantildeiacutea propio iPhone accesorios de terceros compatibles con el iPhone estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- IPAD
iPad es un dispositivo moacutevil multi-propoacutesito para navegar por la web leer y enviar correo electroacutenico ver fotos ver viacutedeos escuchar muacutesica jugar juegos leer libros electroacutenicos y mucho maacutes iPad se basa en la tecnologiacutea Multi-Touch de la compantildeiacutea y permite a los clientes conectarse con sus aplicaciones y contenidos de una forma maacutes interactiva iPad permite a los clientes para acceder a la iTunes Store para descargar archivos de audio y video asiacute como una variedad de otro tipo de contenido digital y aplicaciones En marzo de 2011 la empresa lanzoacute el iPad 2 su segunda generacioacuten de iPad Ademaacutes de los accesorios de la empresa iPad propios accesorios de terceros compatibles con iPad estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la Compantildeiacutea y de terceros
- iPod
La liacutenea de la compantildeiacutea para iPod de la muacutesica digital portaacutetil y reproductora de medios incluye el iPod touch iPod nano iPod shuffle y el iPod classic Todos los iPods funcionan con iTunes Ademaacutes de los accesorios de la Compantildeiacutea propio iPod accesorios de terceros compatibles con iPod estaacuten disponibles a traveacutes de tiendas en liacutenea y al por menor de la empresa o de terceros El iPod touch basado en IOS es un iPod de memoria flash basada en una pantalla panoraacutemica y un interfaz de usuario Multi-Touch iPod touch permite a los clientes para acceder a la iTunes Store para descargar contenidos de audio y viacutedeo asiacute como una variedad de aplicaciones digitales El iPod nano es un iPod de memoria flash basada en que cuenta la Compantildeiacutea interfaz Multi-Touch permite a los clientes navegar por su coleccioacuten de muacutesica por tocar o deslizar la pantalla El iPod nano cuenta con un aluminio pulido y vidrio con un clip incorporado El iPod shuffle es un iPod de memoria flash basada en que cuenta con un panel de control puede hacer clic para controlar la reproduccioacuten de muacutesica y la tecnologiacutea VoiceOver permite a los clientes para conocer los tiacutetulos de canciones artistas y nombres de listas de reproduccioacuten El iPod classic es un disco duro basado en la muacutesica digital portaacutetil y reproductor de viacutedeo
~ 48 ~
iTunes
iTunes es una aplicacioacuten que admite la compra descarga organizacioacuten y reproduccioacuten de audio digital y archivos de viacutedeo y estaacute disponible tanto para Mac y ordenadores basados en Windows
iTunes se integra con la iTunes Store un servicio que permite a los clientes descubrir comprar alquilar y descargar contenido y aplicaciones digitales La tienda iTunes Store incluye la App Store y iBookstore La App Store permite a los clientes descubrir y descargar aplicaciones y la iBookstore cuenta con libros electroacutenicos de los editores maacutes importantes e independientes y permite a los clientes ver y comprar libros para sus dispositivos iOS Los clientes pueden acceder a la App Store (tienda de Apple) a traveacutes de un Mac o un equipo basado en Windows a traveacutes de un dispositivo IOS El iBookstore se accede a traveacutes de la iBook aplicacioacuten en un dispositivo iOS
Mac App Store
En enero de 2011 la Compantildeiacutea abrioacute la Mac App Store permite a los clientes descubrir descargar e instalar aplicaciones para sus Macs La Mac App Store ofrece aplicaciones en la educacioacuten juegos graacuteficos y disentildeo estilo de vida productividad utilidades y otras categoriacuteas La Compantildeiacutea operativo Mac OS X software del sistema iLife y iWork aplicaciones de software tambieacuten estaacuten disponibles en la Mac App Store
icloud
En octubre de 2011 la Compantildeiacutea lanzoacute icloud su servicio en la nube nueva que almacena muacutesica fotos aplicaciones contactos calendarios y documentos de forma inalaacutembrica y los empuja a varios dispositivos iOS Mac y ordenadores basados en Windows Caracteriacutesticas icloud incluyen iTunes en la Nube Arroyo de fotos documentos en la nube Contactos Calendario Correo descarga automaacutetica e historial de compras para las aplicaciones y los iBooks y de copia de seguridad icloud Los usuarios pueden registrarse para el libre acceso a icloud uso de un dispositivo con iOS 5 o un Mac con Mac OS X Lion
Productos de Software y Tecnologiacuteas de la Informaacutetica
La compantildeiacutea ofrece una amplia gama de productos de software para consumidores empresas pymes la educacioacuten y los clientes del gobierno incluyendo iOS propietaria de la compantildeiacutea y el software Mac OS X con el software de servidor software de aplicacioacuten profesional y de consumo la educacioacuten y el software de aplicaciones empresariales orientadas10
10 httpdeveloperapplecomlibraryios
~ 49 ~
ARQUITECTURA IOS
Ilustracioacuten 12 Arquitectura de iOS
Fuente (Mango Life Media Inc 2012)
Cocoa Touch Cocoa Touch es la capa maacutes importante para el desarrollo de aplicaciones iOS Posee un conjunto de Framework que proporciona el API de Cocoa para desarrollar aplicaciones Se podriacutea decir que Cocoa Touch proviene de Cocoa la API ya existente en la plataforma MAC Esta capa estaacute formada por dos Frameworks fundamentales
UIKit contiene todas las clases que se necesitan para el desarrollo de una interfaz de usuario
Foundation Framework define las clases baacutesicas acceso y manejo de objetos servicios del sistema operativo
Media Provee los servicios de graacuteficos y multimedia a la capa superior Core Services Contiene los servicios fundamentales del sistema que usan todas las aplicaciones Core OS Contiene las caracteriacutesticas de bajo nivel ficheros del sistema manejo de memoria seguridad drivers del dispositivo11 Al estudiar cada uno de los tipos de sistemas operativos moacuteviles se observa que significa cada uno de ellos cuaacuteles son sus caracteriacutesticas principales como nacieron cual ha sido su evolucioacuten y como se conforma su arquitectura
11 httpssitesgooglecomsitetecnologiaiostmdesarrollo-de-aplicacionesarquitectura-ios
~ 50 ~
mostrando como cada uno es importante y se ha constituido de acuerdo a unas caracteriacutesticas para un tipo de cliente diferente y permitiendo conocer tambieacuten cual es la diferencia de cada uno y en que se vuelven competencia para el sistema operativo iOS de Apple
48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
La continua aceleracioacuten en los procesos de disentildeo y construccioacuten de redes ha llevado a la aparicioacuten de nuevas tecnologiacutea tales como los dispositivos moacuteviles y convirtieacutendose cada vez maacutes en un dispositivo personal y casi que indispensable para cada persona en el mundo lo que ha provocado una venta masiva de estos dispositivos y cada antildeo son maacutes las personas que adquieren un dispositivo de estos de acuerdo a sus gustos y necesidades se puede apreciar un ejemplo de ello en la siguiente tabla
Ilustracioacuten 13 Ventas mundiales de dispositivos moacuteviles a usuarios finales en 2010 (en millares de unidades)
Fuente (UIT 2011)
A la cabeza del mercado de sistemas operativos de teleacutefonos inteligentes estaacuten Symbian de Nokia Android de Google iOS de Apple y BlackBerry OS de RIM pues son estos los que han impulsado los famosos teleacutefonos inteligentes donde actualmente son los que estaacuten impulsando la demanda de redes de banda ancha moacuteviles y Wi-Fi ya que estos dispositivos se estaacuten convirtiendo en el medio principal que la gente usa para conectarse
El raacutepido crecimiento de los teleacutefonos inteligentes y maacutes auacuten en conjunto con las tiendas de aplicaciones que cada sistema operativo tiene las que permiten descargar innumerables aplicaciones que abastecen las necesidades de los usuarios han hecho que cada uno de ellos sea deslumbrado y tengan maacutes fascinacioacuten por el uso de su teleacutefono inteligente mostrando entonces asiacute que el
~ 51 ~
teleacutefono inteligente y su tienda de aplicaciones complementaria ponen de manifiesto el poder y la flexibilidad que los teleacutefonos avanzados pueden ofrecer en combinacioacuten con las redes moacuteviles de datos de alta velocidad
Tendencias de las tarifas
Toda la sociedad de la informacioacuten debido a este gran despliegue de tecnologiacutea e informacioacuten se ha venido preguntando coacutemo van a pagar las redes medulares de alta velocidad y gran capacidad las redes de acceso los aparatos y accesorios de banda ancha alaacutembrica e inalaacutembrica las caracteriacutesticas y servicios avanzados como la televisioacuten moacutevil y cuaacuteles son las tarifas de precios maacutes razonables para seguir ofreciendo contenido de alta calidad y eficiencia Sin embargo debido a esto se han venido haciendo estudios estadiacutesticos que muestren como es el manejo de la capacidad de red y consumo de datos para cada poblacioacuten para asiacute definir cuaacuteles son las que maacutes le conviene a cada una de ellas Como ejemplo podemos ver que en lo que se refiere a la liacutenea fija el operador de cable estadounidense Comcast lleva experimentando con la medicioacuten del uso de los datos desde 2008 Ha establecido un tope combinado de carga y descarga de 250 Gbits al mes El cliente medio de Comcast utiliza un promedio de 2 a 4 Gbits al mes y menos de un 1 se acerca al tope de 250 Gbits seguacuten Comcast Internacionalmente los operadores de liacutenea fija se han encontrado maacutes coacutemodos estableciendo topes de ancho de banda y sus acciones no han recibido reacciones negativas por parte de los consumidores
Los usuarios de teleacutefonos inteligentes consumen una capacidad de datos cinco veces superior a la que consumen los usuarios de teleacutefonos moacuteviles normales Dado que el nuacutemero de usuarios que compran y utilizan teleacutefonos inteligentes va en aumento hay operadores que estaacuten teniendo dificultades para satisfacer la enorme demanda de capacidad de datos lo que estaacute generando estrategias para solucionar esto centraacutendose en las capacidades de red y es por esto que los operadores estaacuten modernizando las conexiones de retroceso de cobre incorporando la fibra dividiendo los sitios de ceacutelulas y antildeadiendo torres maacutes modernas en aacutereas densamente pobladas ademaacutes estaacuten utilizando recursos de espectro adicionales para ofrecer una capacidad mayor invirtiendo en redes Wi-fi animando a los usuarios a adquirir femtoceacutelulas para traspasar el traacutefico de la red del operador a las instalaciones del consumidor Siendo esto trascendental para el continuo funcionamiento de las nuevas tecnologiacuteas que siguen invadiendo el mundo pues es con todas estas soluciones de modernizacioacuten y ampliacioacuten de las redes que va a tener un futuro tecnoloacutegico maacutes prometedor
(UIT 2011)
49 SOFTWARE EN DISPOSITIVOS MOVILES
Los programas informaacuteticos han dado el salto del escritorio hacia la movilidad En la actualidad existen versiones reducidas preparadas para funcionar en dispositivos moacuteviles sin embargo la mayor parte de estos programas necesitan dispositivos que cuenten con un sistema operativo que les permita
~ 52 ~
instalarlo lo que soacutelo se encuentra en estos momentos en teleacutefonos moacuteviles de gama alta como los smartphones o en las PDA entre los principales SO estaacuten iOS Android Windows Phone y BlackBerry
Anteriormente un teleacutefono celular solo teniacutea el propoacutesito de poder hacer llamadas desde cualquier parte del mundo lo que ha venido cambiando progresivamente pues en la actualidad gracias al desarrollo de software esto ha avanzado en gran escala debido a que estos ya no se dedican solo a esto sino a que todo lo que se necesite se encuentre ya sea dentro de un teleacutefono celular o una tablet y la intencioacuten es seguir implementando maacutes aplicaciones para el futuro ya que estos son maacutes coacutemodos para cargar
Con el continuo desarrollo en el software para dispositivos moacuteviles se puede observar coacutemo ha sido su evolucioacuten al no solo permitir tener aplicaciones para el uso diario como alarmas y recordatorios sino tambieacuten interactividad con una amplia gama de juegos y tambieacuten hasta aplicaciones empresariales permitieacutendole a los usuarios ya sean estudiantes o empresarios tener en conjunto con sus dispositivos moacuteviles una vida maacutes feliz faacutecil y eficiente Ademaacutes de que la evolucioacuten del software en los dispositivos moacuteviles ha permitido esto tambieacuten su desarrollo va enfocado en aquellas personas que tienen discapacidades permitieacutendoles entonces por medio del tacto o ya sea por medio de reproducciones de habla en para personas siegas que estos tambieacuten sean grandes amigos de la tecnologiacutea
Pero el uso de aplicaciones no seriacutea tan exitosa sino se contara con las famosas tiendas de aplicaciones que ofrece cada sistemas operativo pues gracias a estas es que se puede descargar una gran cantidad de software en el momento que se quiera y a la hora que se quiera
Para los desarrolladores de software no ha sido muy faacutecil llegar a todas estas novedades pero ha sido un gran reto que ha valido la pena y que diacutea a diacutea lo que se pretende es hacer que cada tipo de usuario tenga un dispositivo moacutevil cada vez maacutes personal con aplicaciones que se ajusten a su personalidad y forma de vida haciendo de ella una vida maacutes llevadera
~ 53 ~
MODELO TEORICO 5
51 METODOLOGIA
Actividad 1 Realizar una caracterizacioacuten de toda la estructura de los diferentes dispositivos hardware que utilizan el sistema operativo iOS por medio de tabulaciones y graacuteficos que identifiquen cada uno de sus componentes y despueacutes por medio de una sencilla descripcioacuten hablar sobre las caracteriacutesticas de cada una de las partes identificadas Esta informacioacuten se obtendraacute mediante los manuales de usuario de cada dispositivo en donde se encuentran definidos cada uno de sus componentes y tambieacuten haciendo uso de la paacutegina de soporte teacutecnico wwwapplecomessupportios que ofrece la paacutegina de Apple
Actividad 2 Para tener maacutes contacto con cada uno de los dispositivos y su hardware se realizariacutea una visita a alguacuten teacutecnico que ofrezca reparacioacuten y servicio teacutecnico para iPhone iPad y iPod ubicado ya sea en Bogotaacute o Cali con el fin de hacer una encuesta previamente preparada que pueda aportar maacutes informacioacuten en cuanto a la estructura del hardware y toma un video en el momento de la encuesta para observar y tener una definicioacuten maacutes clara y graacutefica de los componentes de este tipo de dispositivos
Actividad 3 Realizar una investigacioacuten documental haciendo uso de la iOS Developer Library12 en donde se explica de forma profunda cada una de las funciones que cumple la arquitectura del sistema operativo iOS y luego plasmar la informacioacuten encontrada realizando un graacutefico donde se pueda observar cada una de las capas que componen su arquitectura y luego definiendo las funciones que cumplen cada una de ellas
Actividad 4 Mediante libros tales como Advanced iOS 4 programming del autor Maher Ali Become An Xcoder-Espantildeol de Bert Altenburg autor de Apple Script for Absolute Starters y tambieacuten por medio de la iOS Developer Library una biblioteca muy completa con todos los temas necesarios sobre el sistema operativo iOS que se encuentra en la web ofrecida por Apple realizar una investigacioacuten descriptiva al lenguaje de programacioacuten donde despueacutes de haber estudiado bien su lenguaje se pueda documentar algunos ejemplos realizados con el del SDK (Software Development Kit) que son el conjunto de herramientas y tecnologiacuteas de desarrollo para la creacioacuten de aplicaciones para iPhone y iPod touch ya sea incluyendo videos de los ejercicios realizados alliacute o tambieacuten por medio de fotografiacuteas paso a paso realizando como un tipo de manual mostrando el comportamiento y definiciones de su lenguaje
Actividad 5 Antes de empezar a explorar en el entorno de desarrollo para programar aplicaciones para los dispositivos con el sistema operativo iOS tales como el iPhone iPod Touch y iPad se montaraacute una maacutequina virtual con el
12 httpdeveloperapplecom
~ 54 ~
sistema operativo Mac OS X para poder descargar el Xcode el entorno de desarrollo integrado (IDE en sus siglas en ingleacutes) de Apple Inc que es suministrado gratuitamente junto con Mac OS X ya que este no se puede ser utilizar en otro tipo de SO
Actividad 6 Se descargaraacute el entorno de desarrollo Xcode y luego ya sea a traveacutes de tutoriales en YouTube o tutoriales ofrecidos en otras paacuteginas web se exploraraacuten las diferentes herramientas que proporciona este IDE y cuaacutel es el uso que se le da a de cada una de ellas
Actividad 7 Se realizara un manual en donde se pueda ver paso a paso todas las instrucciones que se pueden desarrollar para hacer uso de las herramientas ofrecidas para programar aplicaciones para dispositivos moacuteviles con iOS mostrando asiacute como poder cacharrear esta herramienta con el fin de que las personas puedan entender de forma faacutecil y sencilla su funcionamiento
Actividad 8 A traveacutes de estudios realizados en otros proyectos sobre dispositivos moacuteviles paacuteginas de noticias tecnoloacutegicas como lo es la wwwcnnexpansioncomtecnologia y por medio de opiniones en blogs u otro tipo de informacioacuten en la web se tomara la informacioacuten consultada y se realizaraacute un cuadro comparativo para identificar las debilidades y Fortalezas del iOS frente a cada uno de los sistema operativos de dispositivos moacuteviles existentes
Actividad 9 Por medio de una encuesta realizada a los estudiantes y docentes de la Universidad Catoacutelica de Pereira que proponga identificar las diferentes caracteriacutesticas y funcionalidades de los sistemas operativos moacuteviles se realizariacutea un anaacutelisis en cuanto a las debilidades y Fortalezas de cada uno de los sistemas operativos competentes y los resultados finalmente seraacuten tabulados y mostrados graacuteficamente hacieacutendole un sondeo estadiacutestico a la encuesta para asiacute comparar las respuestas y realizar una conclusioacuten de los resultados
Actividad 10 A lo largo del proyecto se tomara toda la informacioacuten consultada e investigada y se plasmara en un documento de investigacioacuten de manera escrita y digital de tal forma que evidencie lo aprendido y sea de utilidad para otras personas en un futuro
Actividad 11 Una vez estudiado todo con respecto a este sistema operativo y profundizado en su lenguaje de programacioacuten se haraacute uso de las herramientas ofrecidas por Apple para construir un prototipo de aplicacioacuten geneacuterica que permita ubicar puntos geo referenciados en un mapa digital y consumir datos de una fuente analizarlos para encontrar tendencias y comportamientos tipo y graficarlos para visualizar dichos comportamientos en la plataforma iOS mostrando asiacute las caracteriacutesticas y ventajas de la tecnologiacutea y evidenciando todo lo aprendido
~ 55 ~
CONCREACION DEL MODELO 6
61 HARDWARE
En el mundo existen miles de equipos con sus caracteriacutesticas en particular pero solo son unos pocos los equipos hardware los afortunados que cuentan con el sistema operativo iOS de Apple pues estos equipos son fabricados exclusivamente por la misma compantildeiacutea A continuacioacuten se mencionara cada uno de estos equipos y algunas de sus caracteriacutesticas y especificaciones en su hardware
611 IPod
Un iPod es un dispositivo de reproduccioacuten multimedia esto quiere decir reproductor de muacutesica imaacutegenes y video con capacidad de hasta 10GB 15GB o 30GB y puede ser conectado con un ordenador a traveacutes de un puerto fireWire o USB para el almacenamiento multimedia Fue creado desde sus inicios por la compantildeiacutea Apple inc ensentildeando su primera versioacuten el 23 de octubre del 2001
Existen varios tipos de iPod como el iPod shuffle iPod nano y el iPod classic pero solamente el iPod touch contiene el sistema operativo iOS que es el tema de intereacutes en eacuteste proyecto
Ilustracioacuten 14 iPod touch
Fuente (Apple 2012)
El iPod touch es un reproductor multimedia PDA que cuenta con conexioacuten WiFi para navegar por internet con FaceTime para estar en contacto con los amigos y hacer uso de la App Store convirtieacutendose en el primer iPod que puede acceder a la tienda de aplicaciones de Apple
~ 56 ~
COMPONENTES EXTERNOS
Ilustracioacuten 15 Componentes externos de un iPod Touch
Fuente (Manuales Apple Inc 2012)
Color Color blanco Negro
Capacidad 8GB 32 GB 64 GB
Tamantildeo y peso
Altura 44 pulgadas (1110 mm) Ancho 232 pulgadas (589 mm) Profundidad 028 pulgadas (72 mm) Peso 356 onzas (101 gramos)
Wireless
80211bgn Wi-Fi (80211n soacutelo 24GHz) Bluetooth 21 + EDR Servicio de mapas de localizacioacuten en base Nike +
Display
Pantalla de 35 pulgadas panoraacutemica (en diagonal) pantalla Multi-Touch
960X640 piacutexeles de resolucioacuten a 326 piacutexeles por pulgada
~ 57 ~
Caacutemara Fotos y Video
Grabacioacuten de viacutedeo HD (720p) de hasta 30 fotogramas por segundo con audio fotos fijas (960 por 720) con caacutemara trasera
Calidad VGA fotos y video de hasta 30 fotogramas por segundo con caacutemara frontal
Foto y geotagging de viacutedeo a traveacutes de Wi-Fi
Entrada y salida
dock conector de 30 pines 35 mm para auriculares esteacutereo de mini conector Altavoz incorporado Microacutefono
Energiacutea y bateriacutea
Bateriacutea recargable de iones de litio Reproduccioacuten de muacutesica hasta 40 horas con
carga completa Tiempo de reproduccioacuten de viacutedeo hasta 7 horas
con carga completa Tiempos de carga Carga raacutepida en 2 horas
aproximadamente (80 de su capacidad) la carga completa en aproximadamente 4 horas
Audio
Respuesta de frecuencia 20 Hz a 20000 Hz Formatos de audio compatibles AAC (de 8 a 320
Kbps) AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbps) MP3 VBR Audible (formatos 2 3 4 Audible Enhanced Audio AAX y AAX +) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
TV y Video
Viacutedeo H264 de hasta 720p 30 fotogramas por segundo nivel Main Profile 31 con sonido AAC-LC audio hasta 160 Kbps 48kHz audio esteacutereo en formato M4v Mp4 y formatos de archivo mov
Viacutedeo MPEG-4 de hasta 25 Mbps 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple con sonido AAC-LC hasta 160 Kbps por canal 48kHz audio esteacutereo en formato M4v mp4 formatos de archivo Y Mov
Motion JPEG (M-JPEG) de hasta 35 Mbps 1280 por 720 piacutexeles 30 fotogramas por segundo audio en ulaw audio esteacutereo PCM en formato de archivo Avi
Soporte para 1024 x 768 piacutexeles con Apple VGA 576p y 480p con Apple cable AV por componentes 576i y 480i con Cable AV compuesto de Apple (los cables se venden por separado)
~ 58 ~
Auriculares Auriculares Respuesta de frecuencia 20 Hz a 20000 Hz Impedancia 32 ohmios
Sensores Tres eje de giro Aceleroacutemetro Sensor de luz ambiental
Requisitos del sistema
ID de Apple (necesario para algunas funciones) Acceso a Internet Sincronizacioacuten con iTunes en un Mac o un PC requiere
Mac OS X 1058 o posterior PC Windows 7 Windows Vista o Windows XP Home or
Professional con Service Pack 3 o posterior
Requisitos ambientales
Temperatura de servicio 32 deg a 95 deg F (0 deg a 35 deg C) Fuera de operacioacuten de temperatura -4 deg a 113 deg F (-20 deg a 45 deg
C) Humedad relativa 5 a 95 sin condensacioacuten Altitud maacutexima de funcionamiento 10000 pies (3000 m)
Idiomas
Compatibilidad con idiomas
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten croata checo daneacutes holandeacutes finlandeacutes griego hebreo huacutengaro indonesio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco vietnamita ucraniano
Soporte de teclado
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino - (manual pinyin derrame cerebral) simplificado chino - (manual pinyin Zhuyin Cangjie accidente cerebrovascular) tradicional franceacutes franceacutes (Canadaacute) franceacutes (Suiza) alemaacuten ( Alemania) Alemaacuten (Suiza) Romaji italiano japoneacutes (Kana) coreano espantildeol aacuterabe buacutelgaro catalaacuten Cherokee croata checo daneacutes holandeacutes Emoji estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro islandeacutes indonesio letoacuten lituano macedonio malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso serbio (ciriacutelico Ameacuterica) eslovaco sueco tailandeacutes tibetano turco ucraniano vietnamita
Diccionario de Apoyo
Ingleacutes (EEUU) Ingleacutes (Reino Unido) chino (simplificado) chino (tradicional) franceacutes franceacutes (Canadaacute) franceacutes (Suiza) (Romaji Kana) alemaacuten italiano japoneacutes coreano espantildeol aacuterabe catalaacuten Cherokee croata checo daneacutes holandeacutes estonio finlandeacutes flamenco griego hawaiano hebreo hindi huacutengaro indonesio letoacuten lituano malayo noruego polaco portugueacutes portugueacutes (Brasil) rumano ruso eslovaco sueco tailandeacutes turco ucraniano vietnamita
~ 59 ~
Contenido de la caja
iPod Touch Auriculares Conector Dock a USB Cable Guiacutea de inicio raacutepido
Tabla 1 Caracteriacutesticas principales del iPod
Fuente (Apple 2012)
Algunos accesorios del iPod touch
Auriculares de tapoacuten con mando y micro13
Adaptador de corriente USB
Base dock universal de Apple
COMPONENTES INTERNOS (iFixit 2012)
Ilustracioacuten 16 Partes internas de un iPod Touch 4G
Fuente (iFixit 2012)
13 httpstoreapplecomesproduct
~ 60 ~
PANTALLA
Tiene una pantalla de 35 diagonal y una resolucioacuten de 640x960 con tecnologiacutea multitactil la pantalla retina contiene piacutexeles de solo 78 micras de grosor lo que permite multiplicar su nuacutemero por cuatro el mismo tamantildeo de pantalla de los modelos de iPod touch anteriores
Ilustracioacuten 17 pantalla del iPod 4G
Fuente (iFixit 2012)
ESCUDO EMI
El escudo EMI es un protector asegurado con unos cuantos tornillos Phillips 00 entre el exterior y el iPod El blindaje EMI es sorprendentemente pesado con un peso de 11 gramos y el iPod Touch es todo soacutelo de 101 gramos lo que significa que Apple ha dedicado maacutes de 10 del peso del iPod a este escudo metaacutelico
~ 61 ~
Ilustracioacuten 18 Escudo EMI iPod 4G
Fuente (iFixit 2012)
BATERIA
Posee una Bateriacutea de 37 V de litio poliacutemeros soldada a la placa base y registra una capacidad de 344 vatioshora ademaacutes Apple afirma que se obtendraacute hasta 40 horas de reproduccioacuten de audio
Ilustracioacuten 19 Bateriacutea iPod 4G
Fuente (iFixit 2012)
AURICULAR
Por primera vez en la liacutenea de iPod Touch los auriculares no estaacute soldada a la placa base y se marcan con la marca Foxconn pues esta ha sido durante mucho tiempo uno de los principales fabricantes por contrato de Apple y como se muestra en la ilustracioacuten 20 se puede observar el indicador de dantildeo por liacutequidos en la parte inferior de la pieza
~ 62 ~
Ilustracioacuten 20 Auricular marca Foxconn
Fuente (iFixit 2012)
CAMARA POSTERIOR
La caacutemara trasera se puede desconectar de la placa loacutegica
no es compatible con enfoque automaacutetico y posee una resolucioacuten mucho maacutes baja
Esta caacutemara es de 65 mm cuadrados por 33 mm de altura Justo encima de la caacutemara de marcha atraacutes el objeto ciliacutendrico de plata es el microacutefono una nueva caracteriacutestica de la liacutenea iPod Touch
La caacutemara es de 5 megapiacutexeles y se queda en una resolucioacuten de 960 x 720 (07 megapiacutexeles) (iFixit 2012)
Ilustracioacuten 21 Caacutemara parte de atraacutes iPod 4G
Fuente (iFixit 2012)
CAMARA FRONTAL
La caacutemara frontal es de calidad VGA para fotos y viacutedeo
Es de 49 mm de lado y 25 mm de espesor ligeramente 03 mm maacutes delgada que el iphone 4 (iFixit 2012)
~ 63 ~
Ilustracioacuten 22 Caacutemara parte de adelante iPod 4G
Fuente (iFixit 2012)
ANTENA
Esta antena se usa para Wi-Fi y se encuentra cerca del panel frontal y hace que ya no sea necesaria la ventana de plaacutestico de generaciones anteriores
Ilustracioacuten 23 Antena para Wi-Fi
Fuente (iFixit 2012)
PLACA MADRE La placa madre del iPod es el componente central responsable por la operacioacuten del dispositivo y sostiene el audio video almacenamiento pantalla entradas y controles de potencia
Este iPod cuenta con un procesador A4 K4X2G643GE Y al igual que el iPad el nuevo iPod Touch incluye soacutelo 256 MB de RAM
La memoria flash NAND es ahora proporcionado por Toshiba no Samsung como la del iPad
chip WiFi y Bluetooth
~ 64 ~
Nuevo giroscopio AGD8 2032
chip 2032 33DH
chip 338S0859
Ilustracioacuten 24 Placa madre del iPod 4G
Fuente (iFixit 2012)
612 IPhone
Ilustracioacuten 25 iPhone
Fuente (Manuales Apple Inc 2012)
~ 65 ~
Un iPhone como su nombre lo indica es un teleacutefono inteligente disentildeado por la compantildeiacutea de Apple inc con el objetivo de tener todo en uno ya que este exitoso dispositivo tecnoloacutegico no solo cuenta con ser un receptor de comunicaciones sino que ademaacutes de esto tiene acceso a Internet correo electroacutenico muacutesica videos juegos y todas las herramientas que pueden proporcionan la mayoriacutea de gadgets favoritos para los usuarios
COMPONENTES EXTERNOS
Ilustracioacuten 26 Partes externas del iPhone
Fuente (Manuales Apple Inc 2012)
Color Blanco Negro
Capacidad1 16 GB 32 GB 64 GB
Dimensiones y peso
Alto 1152 cm
Ancho 586 cm
Fondo 093 cm
Peso 140 gramos
Redes moacuteviles e inalaacutembricas
Teleacutefono internacional UMTSHSDPAHSUPA (850 900 1900 2100 MHz)
GSMEDGE (850 900 1800 1900 MHz) CDMA EV-DO Rev A (800 1900 MHz) Wi-Fi 80211b g n (80211n solo a 24 GHz)
~ 66 ~
Tecnologiacutea inalaacutembrica Bluetooth 40
Localizacioacuten
GPS asistido y GLONASS Bruacutejula digital Wi-Fi Redes moacuteviles
Pantalla
Pantalla Retina Multi-Touch panoraacutemica de 35 pulgadas (diagonal) Resolucioacuten de 960 x 640 piacutexeles a 326 pp Relacioacuten de contraste de 8001 (tiacutepica) Brillo maacuteximo 500 cdm2 (tiacutepica) Cubierta oleoacute fuga anti huellas en la parte frontal y
posterior Compatible con la presentacioacuten simultaacutenea de muacuteltiples
idiomas y grupos de caracteres
Caacutemara fotos y viacutedeo
Caacutemara de 8 megapiacutexeles Enfoque automaacutetico Enfoque por toque Deteccioacuten facial en fotografiacuteas Flash LED Grabacioacuten de viacutedeo en HD (1080p) hasta 30 fotogramas
por segundo con audio Estabilizacioacuten de viacutedeo Caacutemara frontal para fotografiacuteas con calidad VGA y viacutedeo
de hasta 30 fotogramas por segundo Geo etiquetado de fotos y viacutedeos
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio Carga por conexioacuten USB con un ordenador o adaptador
de corriente Tiempo en conversacioacuten hasta 8 horas con 3G hasta
14 horas con 2G (GSM) Tiempo en reposo hasta 200 horas Navegacioacuten web hasta 6 horas con 3G hasta 9 horas
con Wi-Fi Reproduccioacuten de viacutedeo hasta 10 horas Reproduccioacuten de audio hasta 40 horas
Reproduccioacuten de audio
Respuesta de frecuencia entre 20 y 20000 Hz Formatos de audio compatibles AAC (de 8 a 320 Kbs)
AAC protegido (del iTunes Store) HE-AAC MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
TV y viacutedeo Compatibilidad con la Duplicacioacuten de AirPlay en el Apple
TV a 720p
~ 67 ~
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576p y 480p con el Cable Apple de AV por componentes 576i y 480i con el Cable Apple de AV compuesto (se venden por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs por canal a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Auriculares Auriculares de Apple con mando y micro Respuesta de frecuencia entre 20 y 20000 Hz Impedancia 32 ohmios
Adjuntos de correo compatibles
Tipos de documento visibles
jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft)
htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Sensores
Giroscopio de tres ejes Aceleroacutemetro Sensor de proximidad Sensor de luz ambiental
Requisitos del sistema
ID de Apple (para algunas prestaciones) Acceso a Internet Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior PC Windows 7 Vista o XP Home o Professional
con Service Pack 3 o posterior iTunes 105 o posterior (descarga gratuita
desde wwwitunescomesdownload)
~ 68 ~
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 degC Temperatura de almacenamiento entre -20 y 45 ordmC Humedad relativa del 5 al 95 sin condensacioacuten Altitud maacutexima de funcionamiento 3000 m
Idiomas
Idiomas compatibles
Alemaacuten aacuterabe catalaacuten checo chino tradicional chino simplificado coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles
Alemaacuten (de Alemania y de Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino tradicional (manual pinyin zhuyin cangjie y wubihua) chino simplificado (manual pinyin y wubihua) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) islandeacutes italiano japoneacutes (romaji y kana) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano turco ucraniano y vietnamita
Idiomas de diccionario compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica)
Alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (de Francia de Canadaacute y de Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (de Estados Unidos y del Reino Unido) italiano japoneacutes (romaji y kana) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (de Portugal y de Brasil) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de Siri
Alemaacuten ingleacutes (Estados Unidos Reino Unido y Australia) y franceacutes
Contenido de la caja
iPhone 4S Auriculares de Apple con mando y micro Cable de conector Dock a USB Adaptador de corriente USB
~ 69 ~
Documentacioacuten
Tabla 2 Especificaciones teacutecnicas iPhone 4S
Fuente (Apple 2012)
Accesorios del iPhone
Auriculares de tapoacuten con mando y micro de Apple
Adaptador de corriente USB
Adaptador av digital de Apple Sensor Nike + iPod
COMPONENTES INTERNOS (iPhone 4S) (iFixit 2012)
Ilustracioacuten 27 partes del iPhone 4
Fuente (iFixit 2012)
PANTALLA
Pantalla Retina
Multi-Touch panoraacutemica de 4 pulgadas
1136 X 640 piacutexeles a 326 pp
Contraste de 8001
Brillo maacuteximo 500 cdm2
Cubierta oleoacute fuga anti huellas en la parte delantera
~ 70 ~
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres (iFixit 2012)
Ilustracioacuten 28 pantalla del iPhone 4
Fuente (iFixit 2012)
BATERIA
Bateriacutea recargable integrada de poliacutemeros de litio
Carga por conexioacuten USB con un ordenador o adaptador de corriente
Tiempo en conversacioacuten hasta 8 horas con 3G
Tiempo en reposo hasta 225 horas
Navegacioacuten por Internet hasta 8 horas con 3G y hasta 10 horas con Wi-Fi
Reproduccioacuten de viacutedeo hasta 10 horas
Reproduccioacuten de audio hasta 40 horas (iFixit 2012)
~ 71 ~
Ilustracioacuten 29 Bateriacutea del iPhone 4
Fuente (iFixit 2012)
BLINDAJE EMI
El escudo EMI es un protector entre el exterior y el iPhone asegurado con cinco tornillos que se quitan para revelar un montoacuten de conectores importantes del iPhone4
El escudo EMI en realidad actuacutea como una antena Wi-Fi
La placa loacutegica estaacute fuertemente incrustada debajo de los alambres y los protectores EMI
Ilustracioacuten 30 Escudo EMI del iPhone 4
Fuente (iFixit 2012)
~ 72 ~
VIBRADOR
Permite que el celular vibre ya sea en llamadas al programar alarmas o en juegos
Ilustracioacuten 31 Vibrador del iPhone 4
Fuente (iFixit 2012)
CAMARA POSTERIOR
Cuenta con 5 Megapiacutexeles autofoco flash LED y grabacioacuten de viacutedeo HD 720p a 30 fps
Es ideal para la grabacioacuten de viacutedeos
Ilustracioacuten 32 Caacutemara parte de atraacutes del iPhone 4
Fuente (iFixit 2012)
~ 73 ~
PLACA LOGICA
Cuenta con un procesador A4 fabricado por Samsung siendo la unidad centralizada que ofrece el iPhone 4 con excelente potencia de caacutelculo
el iPhone 4 utiliza el nuevo procesador ARM Cortex A8 nuacutecleo Cuenta con un giroscopio de 3 ejes
En la parte superior de la placa loacutegica esta
Skyworks SKY77542 Tx-Rx trade iPAC FEM para Dual-Band GSM GPRS 880-915 MHz y 1710-1785 MHz
Skyworks SKY77541 GSM GPRS moacutedulo Front End STMicro STM33DH aceleroacutemetro de 3 ejes Memoria RAM de 512 MB UMTSHSDPAHSUPA (850 900 1900 2100 MHz) Tecnologiacuteas GSM y CDMA
En el reverso hay
memoria flash Samsung K9PFG08 Cirrus Logic 338S0589 audio codec (marca Apple) Esta es la misma
parte que en el iPad AKM8975 - el maacutes nuevo sensor magneacutetico que promete mejorar el
rendimiento respecto a la generacioacuten anterior Texas Instruments 343S0499 Touch Screen Controller 36MY1EE NOR y DDR moacutevil
(iFixit 2012)
~ 74 ~
Ilustracioacuten 33 Placa Loacutegica del iPhone 4
Fuente (iFixit 2012)
Wi-Fi Bluetooth y GPS son proporcionados por Broadcom y situados debajo el escudo EMI
Ilustracioacuten 34 Chip Broadcom del iPhone 4
Fuente (iFixit 2012)
~ 75 ~
MICROFONO Se utiliza para cortar el ruido ambiental y mejorar la calidad del sonido
cuando se habla por teleacutefono
Ilustracioacuten 35 Microacutefono del iPhone 4
Fuente (iFixit 2012)
CAMARA FRONTAL La caacutemara con resolucioacuten VGA para fotos y viacutedeos a 30 fps optimiza el uso de Apple FaceTime para realizar video llamadas de moacutevil
a moacutevil
Ilustracioacuten 36 Caacutemara frontal del iPhone 4
Fuente (iFixit 2012)
BOTON HOME O INICIO Botoacuten para navegar por todas las aplicaciones del iPhone Una pulsacioacuten del botoacuten nos lleva a la pantalla de Inicio
~ 76 ~
Dos pulsaciones llevan a la pantalla de buacutesquedas Spotlight
Ilustracioacuten 37 Botoacuten Home
Fuente (iFixit 2012)
MICROFONOS Principal Situado en la esquina inferior derecha del moacutevil junto a los
altavoces Permite llamadas y telefoacutenicas y video llamadas la grabacioacuten de sonido comandos y mensajes de voz uso de controles de voz etc
Ilustracioacuten 38 Microacutefono Principal del iPhone 4
Fuente (iFixit 2012)
Secundario Situado en la parte superior del iPhone junto al conector de auriculares Se utiliza para mejorar las llamadas de teleacutefono y video llamadas Trabaja junto al microacutefono principal para suprimir ruidos de fondo indeseados
~ 77 ~
Ilustracioacuten 39 Microacutefono secundario del iPhone 4
Fuente (iFixit 2012)
613 iPad
Ilustracioacuten 40 iPad
Fuente (Apple 2012)
El iPad es una pantalla con una nitidez y calidad espectacular donde se puede consumir miles de contenidos multimedia tales como Fotos viacutedeos muacutesica libros etc tambieacuten permite navegacioacuten por internet y gestioacuten de correos electroacutenicos de una manera brillante y coacutemoda pero en definitiva el iPad es un lector electroacutenico en el que se pueden observar libros revistas digitales ficheros PDF etc
~ 78 ~
COMPONENTES EXTERNOS DEL iPAD
Ilustracioacuten 41 partes de in iPad
Fuente (Manuales Apple Inc 2012)
Modelos Wi-Fi Wi-Fi + 4G
Dimensiones y peso
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 652 g
Alto 2412 cm
Ancho 1857 cm
Fondo 094 cm
Peso 662 g
Capacidad 16 GB 32 GB 64 GB 16 GB 32 GB 64 GB
Pantalla
Pantalla Retina
Multi-Touch panoraacutemica de 97 pulgadas (en diagonal) retro iluminada por LED con tecnologiacutea IPS
Resolucioacuten de 2048 x 1536 piacutexeles a 264 piacutexeles por pulgada (pp)
~ 79 ~
Cubierta oleoacute fuga anti huellas
Compatible con la presentacioacuten simultaacutenea de muacuteltiples idiomas y grupos de caracteres
Chip Chip A5X dual-core de Apple disentildeado a medida de alto rendimiento y bajo consumo con procesador graacutefico de cuatro nuacutecleos
Redes inalaacutembricas y de telefoniacutea moacutevil
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi (80211abgn)
Tecnologiacutea Bluetooth 40
Wi-Fi y 4G 4G LTE (700 2100 MHz)3 UMTSHSPAHSPA+DC-HSDPA (850 900 1900 2100 MHz) GSMEDGE (850 900 1800 1900 MHz)
Solo datos4
Caacutemaras fotos y grabacioacuten de viacutedeo
Caacutemara iSight de 5 megapiacutexeles
Enfoque automaacutetico
Enfoque por toque
Deteccioacuten facial en fotografiacuteas
Grabacioacuten de viacutedeo en HD (1080p) de hasta 30 fotogramas por segundo con audio
Estabilizacioacuten de viacutedeo
Caacutemara FaceTime para fotos y viacutedeo de calidad VGA de hasta 30 fotogramas por segundo
Geo etiquetado de fotos y viacutedeo
Bateriacutea y alimentacioacuten
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de
Bateriacutea recargable integrada de poliacutemeros de litio de 425 vatioshora
Hasta 10 horas de navegacioacuten por Internet a traveacutes de Wi-Fi y de reproduccioacuten de viacutedeo y muacutesica
Hasta 9 horas de navegacioacuten por Internet a traveacutes de redes moacuteviles
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
~ 80 ~
reproduccioacuten de viacutedeo y muacutesica
Carga por adaptador de corriente o por conexioacuten USB a un ordenador
Entrada y salida
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Puerto para conector Dock de 30 clavijas
Toma de auriculares esteacutereo de 35 mm
Altavoz integrado
Microacutefono
Ranura para tarjeta Micro SIM
Sensores
Aceleroacutemetro
Sensor de luz ambiental
Giroscopio
Localizacioacuten geograacutefica
Wi-Fi
Bruacutejula digital
Wi-Fi
Bruacutejula digital
GPS asistido
Red moacutevil
Reproduccioacuten de audio
Respuesta de frecuencia de 20 a 20000 Hz
Formatos de audio compatibles HE-AAC (V1 y V2) AAC (de 8 a 320 Kbs) AAC protegido (del iTunes Store) MP3 (de 8 a 320 Kbs) MP3 VBR Audible (formatos 2 3 y 4 Audible Enhanced Audio AAX y AAX+) Apple Lossless AIFF y WAV
Liacutemite de volumen configurable por el usuario
Sonido envolvente Dolby Digital 51 a traveacutes del Adaptador AV digital de Apple (se vende por separado)
~ 81 ~
TV y viacutedeo
Compatibilidad con la Duplicacioacuten de AirPlay en el Apple TV (2ordf y 3ordf generacioacuten) a 720p
Viacutedeo en streaming con AirPlay en el Apple TV (3ordf generacioacuten) hasta 1080p y Apple TV (2ordf generacioacuten) hasta 720p
Compatibilidad con viacutedeo en espejo y salida de viacutedeo hasta 1080p con el Adaptador AV digital de Apple o el Adaptador VGA de Apple (se venden por separado)
Compatibilidad con salida de viacutedeo a 576i y 480i con el Cable Apple de AV compuesto (se vende por separado)
Formatos de viacutedeo compatibles viacutedeo H264 de hasta 1080p 30 fotogramas por segundo perfil alto (High Profile) de nivel 41 con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov viacutedeo MPEG-4 de hasta 25 Mbs 640 por 480 piacutexeles 30 fotogramas por segundo perfil simple (Simple Profile) con sonido AAC-LC de hasta 160 Kbs a 48 kHz y esteacutereo en los formatos de archivo m4v mp4 y mov Motion JPEG (M-JPEG) de hasta 35 Mbs 1280 por 720 piacutexeles 30 fotogramas por segundo sonido en ulaw y esteacutereo PCM en el formato de archivo avi
Adjuntos de correo compatibles
Tipos de documentos visibles jpg tiff y gif (imaacutegenes) doc y docx (Word de Microsoft) htm y html (paacuteginas web) key (Keynote) numbers (Numbers) pages (Pages) pdf (Vista Previa y Acrobat de Adobe) ppt y pptx (PowerPoint de Microsoft) txt (texto) rtf (formato de texto enriquecido) vcf (informacioacuten de contacto) y xls y xlsx (Excel de Microsoft)
Idiomas
Idiomas compatibles alemaacuten aacuterabe catalaacuten checo chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol fineacutes franceacutes griego hebreo huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Idiomas de teclado compatibles alemaacuten (Alemania y Suiza) aacuterabe buacutelgaro catalaacuten checo cherokee chino simplificado (manuscrito pinyin y stroke) chino tradicional (manuscrito cangjie pinyin stroke y zhuyin) coreano croata daneacutes emoji eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) islandeacutes italiano japoneacutes (kana y romaji) letoacuten lituano macedonio malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso serbio (ciriacutelico y latino) sueco tailandeacutes tibetano
~ 82 ~
turco ucraniano y vietnamita
Diccionarios compatibles (admite la prediccioacuten de texto y la correccioacuten automaacutetica) alemaacuten aacuterabe catalaacuten checo cherokee chino simplificado chino tradicional coreano croata daneacutes eslovaco espantildeol estonio fineacutes flamenco franceacutes (Canadaacute Francia y Suiza) griego hawaiano hebreo hindi huacutengaro indonesio ingleacutes (EE UU y Reino Unido) italiano japoneacutes (kana y romaji) letoacuten lituano malayo neerlandeacutes noruego polaco portugueacutes (Brasil y Portugal) rumano ruso sueco tailandeacutes turco ucraniano y vietnamita
Compatibilidad con funciones de dictado en ingleacutes (Estados Unidos Reino Unido y Australia) franceacutes alemaacuten y japoneacutes
Accesibilidad
Lector de pantalla VoiceOver
Reproduccioacuten de subtiacutetulos ocultos
Interfaz AssistiveTouch para accesorios de apoyo
Ampliacioacuten a pantalla completa
Letra grande
Pantalla en blanco sobre negro
Ajuste de volumen izquierdaderecha
Requisitos ambientales
Temperatura de funcionamiento entre 0 y 35 ordmC
Temperatura de almacenamiento entre -20 y 45 ordmC
Humedad relativa del 5 al 95 sin condensacioacuten
Altitud maacutexima de funcionamiento 3000 m
Requisitos del sistema
ID de Apple (para algunas prestaciones)
Acceso a Internet6
Para sincronizar con iTunes en un Mac o PC
Mac OS X 1058 o posterior
PC Windows 7 Windows Vista o Windows XP Home or Professional con Service Pack 3 o posterior
iTunes 106 o posterior (descarga gratis desde wwwitunescomesdownload)
~ 83 ~
Contenido de la caja
iPad
Cable de conector Dock a USB
Adaptador de corriente USB de 10 W
Documentacioacuten
Apps integradas
Safari
Fotos
App Store
Mapas
Photo Booth
Recordatorios
Caacutemara
FaceTime
iTunes
Muacutesica
YouTube
Calendario
Mensajes
Quiosco
Viacutedeos
Game Center
Contactos
Notas
Tabla 3 Caracteriacutesticas y especificaciones teacutecnicas de un iPad
Fuente (Apple 2012)
COMPONENTES INTERNOS DEL iPAD (iFixit 2012)
Ilustracioacuten 42 Partes del iPad
Fuente (iFixit 2012)
~ 84 ~
PANTALLA Es de tipo LCD IPS con retroiluminacioacuten LED resolucioacuten
1024times768 px(XGA) de 97 plg (24638 cm) 132 ppp y relacioacuten de aspecto 43 (iFixit 2012)
Ilustracioacuten 43 Pantalla del iPad
Fuente (iFixit 2012)
PLACA LOGICA Controlador de dispositivo CD3240 Broadcom BCM4330 80211abgn MAC banda base radio integrada
con Bluetooth 40 + HS y transceptor FM 2 x 4 GB DDR2 Elpida LP = 1 GB DRAM en paquetes separados en una
configuracioacuten de 64-bit Fairchild FDMC 6683 Broadcom BCM5973 controlador I O Broadcom BCM5974 microprocesador 338S0987 de Apple (Cirrus Logic audio codec)
(iFixit 2012)
Ilustracioacuten 44 Placa base 1 del iPad3
Fuente (iFixit 2012)
~ 85 ~
Qualcomm PM8028 Power Management IC Qualcomm RTR8600 multi-bandmode transceptor RF para 3G y bandas
4G LTE Toshiba Y0A0000 memoria MCP Triquint TQM7M5013 cuaacutedruple banda de potencia lineal moacutedulo
amplificador Avago A5904 Skyworks SKY77468-17 front-end modulo
Ilustracioacuten 45 Placa base 2 del iPad3
Fuente (iFixit 2012)
El iPad es potenciado por un SoC A5X el cual se compone de un procesador de arquitectura ARM dual-Core y un chip graacutefico Quad-Core (PowerVR SGX543MPx) que se encarga de potenciar el apartado graacutefico y el soporte de una resolucioacuten de 2048times1536 pixeles
~ 86 ~
Ilustracioacuten 46 Procesador A5X del iPad3
Fuente (iFixit 2012)
Procesador A5X IC 343S0561 de Apple se utiliza para la administracioacuten de energiacutea NAND nuacutemero THGVX1G7D2GLA08 con 16 GB 24 nm MLC Flash de
Toshiba Qualcomm MDM9600 - 3G y 4G moacutedem inalaacutembrico Skyworks 77469
(iFixit 2012)
Ilustracioacuten 47 Placa base 3 iPad3
Fuente (iFixit 2012)
BATERIA El iPad 3 es realmente soacutelo una bateriacutea gigante Cuenta con la suma de 425 vatios-hora La bateriacutea tiene tres celdas cada uno de aproximadamente 125 cm x
65 cm x 4 mm Bateriacutea integrada de poliacutemeros de ion de litio soporta 10 horas de uso
140 horas de muacutesica un mes en modo standby (iFixit 2012)
~ 87 ~
Ilustracioacuten 48 Bateriacutea del iPad
Fuente (iFixit 2012)
RANURA DE TARJETA MICROSIM
Ilustracioacuten 49 Tarjeta microsismo del iPad
Fuente (iFixit 2012)
CAMARA POSTERIOR Fotografiacutea iSight de 5 Megapiacutexeles Grabacioacuten de viacutedeo Full HD (1080p) de hasta 30 fotogramas por
segundo con audio (iFixit 2012)
~ 88 ~
Ilustracioacuten 50 Caacutemara posterior del iPad3
Fuente (iFixit 2012)
CAMARA FRONTAL Grabacioacuten de viacutedeo VGA hasta 30 fotogramas por segundo con audio
fotografiacutea con calidad VGA Estabilizador de viacutedeo Enfoque automaacutetico (Autofocus) Tocar para enfocar Deteccioacuten de caras Control taacutectil de la exposicioacuten en viacutedeos o fotos Geo etiquetado de fotos y viacutedeos a traveacutes de Wi-Fi
Ilustracioacuten 51 Caacutemara Frontal del iPad
Fuente (iFixit 2012)
~ 89 ~
62 ARQUITECTURA DE IOS
La arquitectura iOS tiene varias capas la capa Cocoa Touch y la capa de medios contienen los servicios y tecnologiacuteas maacutes importantes para el desarrollo de aplicaciones y las capas Core services y Core OS controlan los servicios baacutesicos
En los niveles maacutes altos iOS actuacutea como un intermediario entre el hardware y las aplicaciones que aparecen en la pantalla pues las aplicaciones que se crean rara vez se hablan con el hardware directamente en cambio las aplicaciones se comunican con el hardware a traveacutes de un conjunto de interfaces de sistemas bien definidos que protegen a las aplicaciones de los cambios de hardware
Ilustracioacuten 52 Arquitectura en capas de iOS
Fuente Ilustracioacuten propia
621 Capa Cocoa touch14
Como su nombre lo dice es la capa taacutectil de Cocoa la cual contiene los recursos principales para desarrollar aplicaciones en iOS Esta capa se podriacutea dividir en dos partes las cuales se explicaran a continuacioacuten
1) Caracteriacutesticas de Alto nivel 2) Frameworks taacutectiles de Cocoa
14 httpsdeveloperapplecomlibraryios
~ 90 ~
Caracteriacutesticas de Alto Nivel
Multitarea Todas las aplicaciones que son desarrolladas para iOS 4 y ejecutadas en el mismo sistema o superior no terminan de ejecutarse si se ingresa al escritorio o si se comienza a ejecutar otra aplicacioacuten sino que estas son enviadas a una ejecucioacuten en segundo plano o background El cambio desde el primer plano al segundo y viceversa se hace mediante el marco UIKit que es el que proporciona las clases necesarias para construir y gestionar la interfaz de usuario de una aplicacioacuten para iOS
Impresioacuten La UIKit permite el enviacuteo de datos de forma inalaacutembrica a las impresoras maacutes cercanas haciendo esta la mayor parte del trabajo de manera automaacutetica pues a la hora de imprimir es la que gestiona las interfaces de impresioacuten trabaja con su aplicacioacuten para representar el contenido imprimible y se encarga de la programacioacuten y la ejecucioacuten de los trabajos de impresioacuten pero se debe tener en cuenta algo muy importante y es que la impresioacuten inalaacutembrica soacutelo estaacute disponible en dispositivos que soporten multitarea
Las tareas de impresioacuten enviados por la aplicaciones son manejados por el sistema de impresioacuten este sistema pone las impresiones en cola y se imprime de la forma primero en llegar primero servir
Proteccioacuten de Datos La proteccioacuten de datos permite a las aplicaciones trabajar con datos sensibles de los usuarios aprovechando la encriptacioacuten impliacutecita que algunos dispositivos poseen Si una aplicacioacuten define a un archivo como protegido el sistema lo almacena en el disco con un formato encriptado y cuando el dispositivo es bloqueado el contenido de ese fichero es inaccesible tanto para la aplicacioacuten como para cualquier intruso Cuando el dispositivo es desbloqueado se genera una clave de desencriptacioacuten que permite a la aplicacioacuten acceder al archivo
Servicio de notificaciones Push de Apple Este servicio lo que hace es notificar acerca de alguna nueva informacioacuten aunque la aplicacioacuten no esteacute ejecutaacutendose activamente en ese momento Gracias a esto se puede dar a conocer a los usuarios que deben abrir la aplicacioacuten para acceder a la informacioacuten mencionada Existen dos cosas que se deben hacer para que las notificaciones funcionen en aplicaciones iOS La primera de ellas es que la aplicacioacuten debe solicitar la recepcioacuten de notificaciones y procesar la informacioacuten una vez que ha sido recibida y por otra parte es necesario un proceso de servidor que sea capaz de generar las notificaciones
~ 91 ~
Notificaciones Locales Estas notificaciones complementan el modo de notificacioacuten por push permitiendo a la aplicacioacuten generar sus propias notificaciones sin necesidad de tener conexioacuten con ninguacuten servidor externo La principal ventaja de este tipo de notificaciones es que una vez que la notificacioacuten estaacute programada el sistema gestiona la entrega de la misma y la aplicacioacuten ni siquiera tiene por queacute estar ejecutaacutendose en el momento de la entrega
Reconocimiento de Gestos Esta caracteriacutestica fue introducida en iOS 32 Se trata de objetos que se pueden incluir en las vistas y usarlas para detectar gestos comunes tales como deslizamientos o pulsaciones en la pantalla Una vez se haya incluido el objeto a la vista se debe definir queacute accioacuten realizaraacute la aplicacioacuten cuando un gesto se produzca La UIKit proporciona una clase UIGestureRecognizer donde se tiene definido el comportamiento baacutesico de los gestos los cuales pueden ser personalizados mediante subclases
Ejemplos de gestos
Pulsacioacuten (Tapping) Pellizco tanto interior como exterior para el zoom (Pinching in and out)
Pulsar y arrastrar (Panning and dragging)
Deslizar (Swiping)
Rotar (Rotating)
Pulsacioacuten larga (Long presses)
Archivos compartidos Esta caracteriacutestica de Cocoa permite tener ficheros disponibles de datos del usuario en iTunes y de este modo una aplicacioacuten haraacute que el contenido de su carpeta esteacute disponible para el usuario Con esto el usuario podraacute incluir o quitar archivos de este directorio desde iTunes
Servicios Peer-to-Peer El framework Game Kit posibilita realizar conexiones punto a punto a traveacutes de Bluetooth y se puede usar la conectividad punto a punto para iniciar comunicaciones con dispositivos cercanos e implementar infinidad de caracteriacutesticas disponibles para juegos multijugador
Controladores estaacutendar del sistema de vistas Hay disponibles un conjunto de view controllers para que las interfaces sean lo maacutes estaacutendar posibles haciendo que el usuario se sienta maacutes coacutemodo mejorando su experiencia con la aplicacioacuten
~ 92 ~
Pantalla externa Desde la versioacuten de iOS 32 existe la posibilidad de conectar un dispositivo a una pantalla externa a traveacutes de sus correspondientes conectores estando disponible mediante el framework UIKit Este mismo framework es el que se usara para asociar la ventana a la propia del dispositivo o una externa
Cocoa Touch Frameworks Libreta de direcciones (Address Book UI Framework) Es una interfaz para Objective-C (lenguaje en el que se programa para iOS y Mac OS X) que muestra una interfaz estaacutendar tanto para seleccionar editar o crear nuevos contactos que facilita la labor de mostrar informacioacuten de contactos en las aplicaciones ademaacutes de asegurar que los usuarios sean capaces de entender coacutemo funciona al tener la misma apariencia en todas las apps
Kit de eventos (Event Kit UI Framework) Proporciona controladores de vistas para presentar interfaces estaacutendar donde ver editar y crear eventos en el calendario
Kit de juegos (Game Kit Framework) Permite antildeadir a las aplicaciones la posibilidad de generar conexiones de red peer-to-peer Este framework proporciona un conjunto simple aunque no menos potente de clases En la versioacuten 41 de iOS se antildeadioacute una extensioacuten de este framework Game Center este nuevo avance proporciona
Alias o nicks Permite a los usuarios crear sus propios perfiles online y a los usuarios que esteacuten logueados en el Game Center interactuar con otros usuarios de forma anoacutenima a traveacutes de sus alias Los usuarios tambieacuten pueden generar mensajes de estado o antildeadir a otros usuarios como amigos
Clasificaciones Permite a una aplicacioacuten publicar y recuperar puntuaciones lo que hace generar rankings globales entre usuarios
Partidas multijugador a traveacutes de internet Antes solo se podiacutea generar partidas multijugador en conexiones locales peer-to-peer con la aparicioacuten del Game Center esta ya no es una limitacioacuten de modo que se pueda guardar el progreso del jugador y recuperarlo maacutes tarde
Banners publicitarios (iAds Framework) Permite gestionar banners publicitarios en las aplicaciones Estos anuncios son antildeadidos a las vistas estaacutendar que se hayan integrado en la interfaz de usuario y son mostrados cuando el desarrollador lo desee de modo que todo el manejo tanto de presentacioacuten como de eventos de estos anuncios son transparentes a para el desarrollador
~ 93 ~
Kit de mapas (Map Kit Framework) Este framework proporciona una interfaz donde se puede desplazar dentro del mapa indicando direcciones o puntos de intereacutes ademaacutes antildeadir propiedades al mapa y navegar libremente por eacutel
Interfaz de mensajes (Message UI Framework) Este framework suministra la capacidad de componer y poner en cola emails en el buzoacuten de salida del usuario La capacidad de crear mensajes consiste en un controlador de vista que se incluye en la interfaz de la aplicacioacuten A partir de la versioacuten 40 de iOS este framework antildeade tambieacuten una interfaz de generacioacuten de SMS y no solo de emails de esta forma se pude generar editar y enviar SMS sin necesidad de salir de la aplicacioacuten
Interfaz de usuario (UIKit Framework) Este framework provee los elementos baacutesicos para generar una aplicacioacuten graacutefica para iOS Todas las aplicaciones para iOS utilizan este framework para implementar las siguientes caracteriacutesticas generales
Gestioacuten de la aplicacioacuten
Gestioacuten de la interfaz de usuario
Gestioacuten de ventanas y graacuteficos
Gestioacuten de multitarea
Gestioacuten de impresioacuten
Gestioacuten de eventos taacutectiles y basados en el movimiento
Objetos que muestran los controles y vistas estaacutendar
Gestioacuten para contenido de texto y web
Gestioacuten del portapapeles (copiar cortar pegar)
Gestioacuten de contenido animado en la interfaz de usuario
Integracioacuten con otras aplicaciones del sistema mediante esquemas URL
Gestioacuten del sistema de notificaciones push de Apple
Gestioacuten de accesibilidad para usuarios deshabilitados
Notificaciones locales
Creacioacuten de PDF
Gestioacuten de los inputs para que se comporten como un teclado del sistema (teclado querty estaacutendar)
UIKit que permite gestionar algunas caracteriacutesticas especiales siempre y cuando esteacuten presentes en el dispositivo
Datos del aceleroacutemetro
Caacutemara integrada
Galeriacutea de imaacutegenes del usuario
Informacioacuten del dispositivo
Estado de la bateriacutea
Informacioacuten del sensor de proximidad
Informacioacuten de auriculares inalaacutembricos (Inc Apple 2012)
~ 94 ~
622 Capa media15
La capa de Medios de comunicacioacuten contiene graacuteficos audio viacutedeo y tecnologiacutea orientada a crear la mejor experiencia multimedia disponible en un dispositivo moacutevil La tecnologiacutea en esta capa fue disentildeada para hacer maacutes faacutecil la creacioacuten de aplicaciones Provee tecnologiacutea usada para soportar trazados 2D y 3D audio y video
Tecnologiacuteas de graacuteficos
Los graacuteficos de alta calidad son una parte muy importante de las aplicaciones en iOS es por esto que con los controles de los frameworks que ofrece la UIKit se pueden realizar aplicaciones con imaacutegenes o graacuteficos previamente creados lo que hace que las aplicaciones se hagan de una manera maacutes eficiente pero en muchos casos hay que ir maacutes allaacute para la creacioacuten de algunas aplicaciones es por esto que la UIKit ofrece las llamadas tecnologiacuteas de graacuteficos para poder gestionar el contenido de este tipo de aplicaciones las cuales se mencionan a continuacioacuten
Core Graphics Framework Core Animation Framework Core Image Framework OpenGL ES Framework y GLKit Framework Core Text Framework Image IO Framework The Assets Library framework
Tecnologiacuteas del audio Las tecnologiacuteas del audio disponibles en iOS estaacuten disentildeadas para ayudar a proporcionar una rica experiencia de audio para los usuarios Esta experiencia incluye la capacidad de reproducir y grabar audio de alta calidad
El sistema ofrece varias formas de reproducir y grabar contenido de audio desde frameworks de alto nivel como las interfaces del marco Media Player hasta los de bajo nivel los cuales se mencionaran a continuacioacuten
El framework Media Player ofrece un faacutecil acceso y soporte a la biblioteca iTunes para la reproduccioacuten de pistas y listas de reproduccioacuten
El AV Foundation Framework genera un faacutecil manejo a las interfaces de Objective-C para la reproduccioacuten y grabacioacuten de audio
OpenAL proporciona un conjunto de interfaces multiplataforma para la entrega de audio posicional
15 httpsdeveloperapplecomlibraryiosdocumentation
~ 95 ~
El framework Core Audio ofrece dos interfaces para reproducir y grabar
audio utilizadas para reproducir los sonidos del sistema de alerta generando la capacidad de vibracioacuten de un dispositivo el almacenamiento temporal y la reproduccioacuten multicanal local o contenido trasmitido del audio
Las tecnologiacuteas de audio en iOS soportan los siguientes formatos de audio
AAC Apple Lossless (ALAC) A-ley IMA ADPCM (ima4) Linear PCM μ-law DVI Intel IMA ADPCM Microsoft GSM 610 AES3-2003
Tecnologiacuteas de viacutedeo iOS ofrece varias tecnologiacuteas para reproducir o grabar contenido de video dependiendo de las necesidades ya sea que se esteacuten ejecutando videos desde las aplicaciones o videos que provienen de la red en donde los Frameworks de alto nivel simplifican las tareas de las reproducciones de video que maacutes se prefieren en general
Las tecnologiacuteas de viacutedeo en iOS soportan extensiones mov mp4 m4v y 3gp para la reproduccioacuten de videos
A continuacioacuten se puede observar los Frameworks de la tecnologiacutea de videos del mayor nivel al menor
La clase UIImagePickerController incluida en la UIKit proporciona una interfaz estaacutendar para la grabacioacuten de viacutedeo en dispositivos con caacutemara
El Framework Media Player proporciona un conjunto de interfaces para presentar peliacuteculas desde las aplicaciones
La AV foundation Framework proporciona un conjunto de interfaces de Objective-C para capturar y la reproducir peliacuteculas
AirPlay Es una tecnologiacutea que le permite a las aplicaciones transmitir audio al receptor digital multimedia Apple TV y a los altavoces AirPlay
AirPlay reproduce el contenido de dispositivos iOS en un televisor HD y en altavoces mediante Apple TV AirPlay junto con Apple TV permiten llevar al televisor tanto fotos juegos o videos
~ 96 ~
Frameworks de la capa Media A continuacioacuten se nombran los Frameworks de la capa de medios
Assets Library Framework AV Foundation Framework Core Audio Core Graphics Framework Core Image Framework Core MIDI Framework Core Text Framework Core Video Framework Image IO Framework GLKit Framework Media Player Framework OpenAL Framework OpenGL ES Framework Quartz Core Framework
Algunas descripciones y funcionamientos de los Frameworks
Framework Core Graphics (CoreGraphicsframework)
Core Graphics es el framework encargado de la representacioacuten vectorial 2D basada en imaacutegenes Esta contiene entonces las interfaces de la API de dibujos en 2D la cual estaacute basada en el dibujo los degradados sombras gestioacuten de datos e imaacutegenes colores creacioacuten y transformaciones de coordenadas visualizacioacuten y anaacutelisis de documentos PDF Aunque la API estaacute basada en C utiliza abstracciones basadas en objetos para representar los objetos fundamentales de dibujo por lo que es faacutecil de almacenar y reutilizar su contenido graacutefico
Core Animation ( QuartzCoreframework )
El framework QuartzCore es el que contiene las interfaces Core Animation la cual es una coleccioacuten de clases de Objective-C para la proyeccioacuten animacioacuten y representacioacuten graacutefica que utiliza una ruta de reproduccioacuten optimizada para ejecutar animaciones complejas y efectos
Core Animation se integra en muchas partes de iOS incluyendo clases de la UIKit como UIView proporcionando animaciones para muchos comportamientos estaacutendar del sistema Tambieacuten se puede utilizar la interfaz Objective-C en este framework para crear animaciones personalizadas
Core Image (CoreImageframework)
Fue introducido hace poco con el iOS 5 proporcionando un conjunto de filtros utilizados para la manipulacioacuten de viacutedeo e imaacutegenes Estos filtros son utilizados para realizar operaciones como retocar y corregir fotos ademaacutes de otro tipo de operaciones maacutes avanzadas como deteccioacuten y
~ 97 ~
rastreo de rostros Core Image aprovecha la CPU disponible y la potencia del procesamiento de la GPU para hacer que sus operaciones sean maacutes raacutepidas y eficientes
OpenGL ES y GLKit
Proporcionan apoyo para la renderizacioacuten la cual es el proceso de generar una imagen (imagen en 3D o animacioacuten en 3D) a partir de un modelo usando una aplicacioacuten de computadora
OpenGL ES Framework ( OpenGLESframework)
OpenGL (Open Graphics Library) es una especificacioacuten estaacutendar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan graacuteficos 2D y 3D Es una libreriacutea de graacuteficos de estaacutendar abierto que soporta aplicaciones para la creacioacuten de contenidos digitales en 2D y 3D disentildeo mecaacutenico y arquitectoacutenico creacioacuten de prototipos virtuales simulacioacuten juegos de video y maacutes
El OpenGL ES (ES quiere decir para sistemas embebidos) es una versioacuten simplificada de OpenGL que lo que hace es eliminar la funcionalidad redundante para proporcionar una biblioteca maacutes faacutecil de aprender y faacutecil de implementar en graacuteficos de equipos moacuteviles
Framework GLKit ( GLKitframework ) Fue introducido en iOS 5 este framework contiene un conjunto de clases de Objective-C que simplifican el esfuerzo que se necesita para crear una aplicacioacuten OpenGL ES proporcionando soporte a cuatro aacutereas para el desarrollo de aplicaciones
Las clases GLKView y GLKViewController proporcionan una implementacioacuten estaacutendar de OpenGL ES habilitando una vista y asociando un bucle
La clase GLKTextureLoader proporciona rutinas de conversioacuten de imaacutegenes y de carga para su aplicacioacuten lo que le permite cargar automaacuteticamente imaacutegenes de textura en su contexto Se puede cargar texturas de forma sincroacutenica o asincroacutenica
El framework GLKit proporciona implementaciones de vector matriz y cuaterniones asiacute como un funcionamiento de la pila de matriz que proporciona la misma funcionalidad que se ha encontrado en OpenGL ES
La clase GLKBaseEffect la cual implementa un subconjunto criacutetico del sombreado OpenGL ES 11 y el modelo de iluminacioacuten la clase GLKReflectionMapEffect la cual extiende el efecto de base para incluir
~ 98 ~
soporte reflejo de mapas y la clase GLKSkyboxEffect que proporciona una implementacioacuten de un efecto palco (Inc Apple 2012)
623 Core Services16
La capa Core services es la que contiene los servicios del sistema fundamentales que todas las aplicaciones utilizan
Caracteriacutesticas de Alto Nivel A continuacioacuten se describen algunas de las tecnologiacuteas disponibles en la capa de servicios
Almacenamiento en iCloud El almacenamiento iCloud fue introducida junto con el lanzamiento del iPhone5 la cual es una aplicacioacuten que permite a todos los usuarios guardar documentos o datos en una ubicacioacuten central y despueacutes acceder a ellos desde todos los equipos del usuario y distintos dispositivos iOS Con iCloud un usuario puede ver crear y editardocumentos desde cualquier dispositivo sin tener que sincronizar o transferir archivos expliacutecitamente lo cual proporciona un tipo de seguridad para el usuario ya que si a un usuario se le pierde un dispositivo sus archivos no debido a que estos se encuentran en el almacenamiento iCloud
Ilustracioacuten 53 Funcionamiento de iCloud
Fuente (Apple 2012)
16 httpsdeveloperapplecomlibraryiosdocumentation
~ 99 ~
Recuento de referencias automaacuteticas
El Recuento de referencias automaacuteticas o ARC es un compilador que permite la simplificacioacuten del proceso del tiempo de vida de un objeto Objective-C facilitando al desarrollador la gestioacuten de memoria por lo tanto a lo que se le llama Reference Counting no es maacutes que un contador de los sitios donde se estaacute utilizando un objeto en varios sitios a la vez de este modo cuando las diferentes partes de una aplicacioacuten van liberando este objeto mediante su meacutetodo RELEASE el contador va disminuyendo y al llegar a cero se destruye automaacuteticamente liberando ese espacio en memoria
Objetos de bloques
Es un lenguaje de nivel C que puede ser incorporado en un coacutedigo C o Objective-C Los bloques son como funciones pero con la diferencia de que son escritas en forma alineada con el resto del coacutedigo dentro de otras funciones
Proteccioacuten de Datos
Es un algoritmo que ahora mismo es el estaacutendar en los gobiernos para proteger la informacioacuten maacutes delicada Incluye diferentes niveles para generar las llaves de acceso siendo AES 256 la maacutes alta y la que se usa para proteger la informacioacuten maacutes delicada y de alto secreto Pero la Implementacioacuten de la proteccioacuten de datos requiere tambieacuten que los usuarios sean conscientes en la forma de como crean y gestionan los datos que desean proteger
Soporte para compartir archivos
Fue introducido con el iOS 32 donde utilizando el iTunes 91 o posterior se pueden copiar archivos entre el ordenador y aplicaciones del dispositivo iOS que sean compatibles con ldquoCompartir archivosrdquo de manera que se pueden crear documentos en una aplicacioacuten compatible y a continuacioacuten copiarlo en el Mac para poder abrirlo
Requisitos que se deben tener en cuenta para poder compartir archivos
Tener instalada la uacuteltima versioacuten de iTunes
Tener Mac OS X v1058 o posterior o una versioacuten actualizada de Windows XP Windows Vista o Windows 7
Tener un dispositivo iOS (con la uacuteltima versioacuten de iOS)
Tener una aplicacioacuten iOS compatible con ldquoCompartir archivosrdquo
~ 100 ~
Despacho central principal
El GCD o Grand Central Dispatch es una tecnologiacutea desarrollada por Apple para optimizar el soporte de las aplicaciones para procesadores de varios nuacutecleos esto permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la uacuteltima gota de potencia de los sietemas multinucleo
Compras In-App Son las compras realizadas desde una aplicacioacuten moacutevil El proceso de compra se completa directamente desde la aplicacioacuten y es transparente para el usuario en la mayoriacutea de los casos con el proveedor de plataforma moacutevil para facilitar la compra y tomar una parte del dinero (por lo general en el rango de 30 o menos) y el resto va para el desarrollador de la aplicacioacuten
SQLite Con el sistema integrado de gestioacuten de bases de datos SQLite se cuenta con procesos de servidores independientes y en cooperacioacuten con las aplicaciones que requieren acceso a la base de datos SQLite que esta embebido proporcionando una biblioteca que estaacute vinculada a las aplicaciones por lo tanto todas las operaciones de base de datos se manejan internamente dentro de la aplicacioacuten a traveacutes de llamadas a funciones contenidas en la biblioteca SQLite administrando todas las tablas y registros de los archivos
Soporte XML
La base del framework provee una clase llamada NSXML Parser para la recuperacioacuten de los elementos tipo XML en donde la biblioteca de coacutedigo abierto libXML2 proporciona un apoyo para la manipulacioacuten de los contenidos XML y permite transformar contenido XML a HTML
Servicios baacutesicos del framework
Framework Cuentas (Accountsframework) Este framework proporciona un modelo de inicio de sesioacuten para las cuentas de usuario mejorando la experiencia del usuario debido a que las aplicaciones ya no necesitan solicitar un usuario por separado para la informacioacuten en relacioacuten con una cuenta
Framework libreta de direcciones (AddressBookframework)
Proporciona acceso mediante programacioacuten a los contactos almacenados en el dispositivo del usuario por lo tanto si las aplicaciones que se utilicen manejan la libreta de contactos entonces por medio de las aplicacioacutenes los datos del usuario podraacuten ser registrados o modificados
~ 101 ~
Framework Apoyo Ad (AdSupportframework) Este marco proporciona aplicaciones con acceso a un identificador que puede ser utilizado solamente para fines publicitarios asiacute como una bandera que indica si un usuario ha limitado el seguimiento del anuncio
CFNetwork Framework (CFNetworkframework)
Es un conjunto de interfaces de alto rendimiento basados en C que proporciona una biblioteca de abstracciones para protocolos de red
Estas abstracciones hacen que sea maacutes faacutecil de ejecutar una variedad de tareas de red tales como
Trabajar con sockets BSD
Creacioacuten de conexiones cifradas mediante SSL o TLS
Resolver DNS host
Trabajar con HTTP la autenticacioacuten de servidores HTTP y HTTPS
Trabajar con servidores FTP
Publishing resolver y navegar por los servicios de Bonjour
Framework bases de datos (CoreDataframework) Es una tecnologiacutea para la gestioacuten del modelo de datos de una aplicacioacuten de Model-View-Controller que estaacute disentildeada para el uso de aplicaciones en las que el modelo de datos es muy estructurado en donde en vez de definir las estructuras de datos mediante programacioacuten se utiliza las herramientas graacuteficas de Xcode para construir un esquema que representa el modelo de datos
Framework Fundacioacuten (CoreFoundationframework) Es un conjunto de interfaces basadas en C que proporcionan caracteriacutesticas de servicio y administracioacuten de datos baacutesicos para las aplicaciones de iOS ofreciendo servicios de software fundamentalmente uacutetiles para servicios de aplicaciones entornos de aplicaciones y para aplicaciones en siacute mismas
Framework Localizacioacuten (CoreLocationframework) Permite determinar la ubicacioacuten actual asociada a un dispositivo utilizando el hardware disponible para determinar la posicioacuten y direccioacuten del usuario tambieacuten se emplea este framework para definir las regiones geograacuteficas y controlar cuando el usuario cruza los liacutemites de esas regiones (Inc Apple 2012)
Framework Medios de comunicacioacuten (CoreMediaframework) Este framework proporciona una interfaz en un nivel bajo de C en cuanto a la gestioacuten y reproduccioacuten de archivos multimedia y audiovisuales en aplicaciones iOS
~ 102 ~
Framework Movimiento (CoreMotionframework) Permite que una aplicacioacuten reciba datos del movimiento del equipo seguacuten el proceso de sus datos Los equipos tienen incluido un aceleroacutemetro y en algunos modelos un magnetoacutemetro y un giroscopio que pueden ser utilizados en juegos y otras aplicaciones que utilizan el movimiento como entrada como una forma de mejorar la experiencia del usuario
Framework de telefoniacutea baacutesica (CoreTelephonyframework) Se utiliza para obtener informacioacuten acerca del proveedor de telefoniacutea celular del usuario estos pueden utilizar esta informacioacuten para escribir aplicaciones que proporcionan servicios uacutenicamente para sus propios suscriptores y tambieacuten se puede utilizar para obtener informacioacuten sobre las llamadas a celulares actuales
EBooks Kit Framework (NewsstandKitframework) Fue Introducido en el iOS 5 Este proporciona un lugar para que los usuarios lean revistas y perioacutedicos y aquellos editores que deseen publicar sus contenidos pueden hacerlo a traveacutes de la creacioacuten de aplicaciones utilizando el framework Kit Newsstand (NewsstandKitframework)
Framework Pase Kit (PassKitframework) Se utiliza el servicio web para implementar el servicio de pases descargables donde las empresas podraacuten crear pases como cupones tarjetas de embarque entradas para eventos y tarjetas de descuento que despueacutes se entregaran al dispositivo del usuario a traveacutes de correo electroacutenico Safari o una aplicacioacuten personalizada
Framework Social (Socialframework) Se introdujo con el iOS 5 proporcionando una interfaz sencilla para acceder a cuentas de redes sociales del usuario
Framework de configuracioacuten del sistema (SystemConfigurationframework)
Proporciona una interfaz de accesibilidad que se utiliza para determinar la configuracioacuten de red de un dispositivo por ejemplo determinar si una conexioacuten Wi-Fi o celular estaacute en uso o si un servidor host en particular se puede acceder
624 Core OS17
La capa Core OS es la que contiene las caracteriacutesticas de bajo nivel en las que otras tecnologiacuteas se basan por esta razoacuten utilizan otros framework que se describiraacuten a continuacioacuten
17 httpsdeveloperapplecomlibraryiosdocumentation
~ 103 ~
Framework Acelerar (Accelerateframework) Este contiene las API C del vector y la matriz del procesamiento de sentildeales digitales y gran cantidad de manipulacioacuten y procesamiento de imaacutegenes
Framework Core Bluetooth (CoreBluetoothframework)
Proporciona las clases necesarias para iOS y aplicaciones de Mac para que puedan comunicarse con los dispositivos que cuentan con la tecnologiacutea inalaacutembrica Bluetooth
Framework accesorios externos (ExternalAccessoryframework)
Proporciona soporte para la comunicacioacuten con los accesorios del hardware conectados a dispositivos basado en iOS estos accesorios pueden ser conectados a traveacutes del conector de 30 pines de un dispositivo o de forma inalaacutembrica mediante Bluetooth
Generic Security Services Framework (GSSframework) Proporciona un conjunto estaacutendar de servicios relacionados con la seguridad de las aplicaciones de iOS
Framework de Seguridad (Securityframework)
Define interfaces de C para la proteccioacuten de la informacioacuten y el control del acceso al software lo que quiere decir es que se utiliza para garantizar la seguridad de los datos de las aplicaciones ademaacutes proporciona interfaces para las gestiones de certificados claves puacuteblicas y privadas y las poliacuteticas de confianza
Sistema El nivel del sistema es el responsable de los aspectos del sistema operativo tambieacuten se dedica a la gestioacuten del sistema de memoria virtual hilos sistema de archivos red y comunicacioacuten entre procesos Las interfaces son basado en C y proporcionan apoyo a las siguientes acciones
Threading (hilos POSIX)
Networking (sockets BSD)
Acceso del sistema de archivos
E S estaacutendar
Servicios de Bonjour y DNS
Informacioacuten Local
La asignacioacuten de memoria
Caacutelculos matemaacuteticos (Inc Apple 2012)
~ 104 ~
63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS
COMPETIDORES
GENERAL IOS 50 Fortalezas Ofrece una excelente y completa experiencia con el usuario debido a su faacutecil manejo Debilidades Se requiere tiempo esfuerzo conocimiento teacutecnico si se quiere instalar jailbreack para remover algunas restricciones en el SO ademaacutes es un equipo muy costoso Android 40 Ice Cream Sandwich Fortalezas Se adapta muy faacutecil al gusto de los compradores y se integra a los servicios en liacutenea Debilidades Es necesario tener una base de conocimiento teacutecnico para poder sacarle el mejor provecho a Android BLACKBERRY OS 7 Fortalezas Es excelente para los negocios y es orientado a lo que son correos mensajes calendario y Microsoft Outlook Debilidades A pesar de los mejores esfuerzos que ha hecho RIM el OS 7 solo mejoro lo que actualmente deberiacutea cambiar WINDOWS PHONE 75 Mango
Fortalezas Elegante entretenido para usar potente y ahora ofrece una excelente experiencia como teleacutefono inteligente Debilidades Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
~ 105 ~
APLICACIONES
IOS 50 Fortalezas Cuenta con una enorme cantidad de aplicaciones para seleccionar y son de excelente calidad Debilidades Algunas aplicaciones que son muy apetecibles por los usuarios tales como Swype y Grooveshark estaacuten bloqueadas por Apple
Android 40 Ice Cream Sandwich Fortalezas Tambieacuten cuenta con una gran cantidad de aplicaciones y muchas de ellas son gratuitas ademaacutes tienen libertad en el proceso de aprobacioacuten Debilidades No hay un control de calidad para las aplicaciones por lo tanto se requiere maacutes atencioacuten BLACKBERRY OS 7 Debilidades Limitado nuacutemero de aplicaciones y ademaacutes de eso son de baja calidad WINDOWS PHONE 75 Mango
Debilidades Su libreriacutea de aplicaciones estaacute creciendo pero auacuten sigue siendo pequentildea USO Y DISENtildeO IOS 50 Fortalezas Tiene funcionalidades fantaacutesticas ademaacutes de un atractivo disentildeo en su interfaz Android 40 Ice Cream Sandwich Fortalezas Se pueden ajustar y personalizar las actividades maacutes usadas
~ 106 ~
Debilidades La funcionalidad estaacute mejorando pero auacuten sigue siendo un sistema complejo Android es una mezcla de buenas ideas pero sin un disentildeo global fuerte BLACKBERRY OS 7 Fortalezas Es bueno en llamadas emails y mensajes Debilidades Pobre en otro tipo de tareas WINDOWS PHONE 75 Mango
Fortalezas Funcionalidad intuitiva y divertida de usar con un bello disentildeo que hace que el de los competidores se vea anticuado NAVEGADOR WEB IOS 50 Fortalezas Cuenta con una excelente experiencia al navegar Debilidades No es compatible con Adobe Flash iSwifter es el que se recomienda como uso de navegador Flash en iOS Android 40 Ice Cream Sandwich Fortalezas Excelente experiencia al navegar es muy raacutepido y ademaacutes es compatible con Adobe Flash BLACKBERRY OS 7 Fortalezas Wikitude ofrece un navegador suave y raacutepido ofrece soporte flash y muy buena navegacioacuten Debilidades Para navegar cuenta con una pantalla muy pequentildea
~ 107 ~
WINDOWS PHONE 75 Mango
Fortalezas Excelente experiencia de navegacioacuten con el navegador HTML5 Debilidades Todaviacutea no es compatible con Adobe Flash Internet Explorer tiende a ser descuidado por los desarrolladores web dejando algunos errores Tiende a ser el menos compatible cuando se trata de aplicaciones y sitios web
MENSAJERIA Y CORREO ELECTRONICO IOS 50 Fortalezas En cuento a mensajeriacutea tiene una buena implementacioacuten Con iMessage se enviacutea mensajes de texto fotos y video gratis entre iPhones iPod Touchs y iPads y se puede hacer chats de grupo
Debilidades No tiene teclado fiacutesico Android 40 Ice Cream Sandwich Fortalezas En mensajeriacutea tiene tambieacuten una buena implementacioacuten y una completa integracioacuten de Gmail BLACKBERRY OS 7 Fortalezas Su primera categoriacutea es la interfaz de correo electroacutenico El Messenger de Blackberry es una excelente construccioacuten del servicio de mensajeriacutea instantaacutenea convirtieacutendose en una gran atraccioacuten tanto para profesionales como adolescentes puede ser integrada dentro de otras aplicaciones y ademaacutes cuenta con teclado fiacutesico
WINDOWS PHONE 75 Mango Fortalezas Tiene voz de entrada para mensajes de texto y Messenger Text-to-speech permite que los mensajes sean leiacutedos para el usuario Tiene la caracteriacutestica de agrupar contactos
~ 108 ~
IMAacuteGENES Y VIDEOS IOS 50
Fortalezas
La calidad de las fotos y los videos es excelente y cuenta con una cantidad de aplicaciones que incrementan su experiencia
Debilidades
Los colores de las imaacutegenes estaacuten bastante saturados
Android 40 Ice Cream Sandwich
Fortalezas
Buena calidad de las imaacutegenes interesantes caracteriacutesticas tales como fotos panoraacutemicas tiempo de espera para tomar una foto y edicioacuten de fotos Carga automaacuteticamente e ilimitadamente fotos a google No se retrasa el obturador
BLACKBERRY OS 7
Debilidades
Este no es su fuerte por lo tanto sale perdiendo en cuanto a la calidad de la caacutemara captura reproduccioacuten de video nitidez y tamantildeo de la pantalla
WINDOWS PHONE 75 Mango
Fortalezas
Tiene botones fiacutesicos para capturar imaacutegenes La opcioacuten Auto-Fix ayuda a mejorar la calidad de las fotos Las fotos y videos se pueden compartir faacutecilmente en Twitter o Facebook Tiene reconocimiento de texto en fotos con Bing visioacuten
MUSICA
IOS 50
Fortalezas
Es excelente para la reproduccioacuten de muacutesica debido a la influencia del iPod Con iTunes la muacutesica que estaacute en el escritorio se puede poner en liacutenea para los dispositivos de Apple por aproximadamente15 Euros el antildeo
Debilidades
iTunes no es interesante para todo el mundo
~ 109 ~
Android 40 Ice Cream Sandwich
Fortalezas
Hay disponibles aplicaciones alternativas de reproduccioacuten de muacutesica Soporte para maacutes formatos de muacutesica Google music permite almacenar hasta 20000 canciones sincronizadas directamente en el escritorio y gratis
Debilidades
Google music estaraacute inicialmente soacutelo en EEUU
BLACKBERRY OS 7
Fortalezas
Todaviacutea es ligeramente deficiente pero ha mejorado mucho desde versiones anteriores La herramienta de sincronizacioacuten Wi-Fi music trabaja con iTunes y Windows Media Player
WINDOWS PHONE 75 Mango
Fortalezas
El reproductor de muacutesica Zune es bueno raacutepido y faacutecil de usar Suscribirse a Zune es una buena manera de probar una cancioacuten
JUEGOS
IOS 50
Fortalezas
Cuenta con una gran cantidad de juegos de alta calidad y tiene excelentes graacuteficos
Android 40 Ice Cream Sandwich
Debilidades
Los juegos son buenos pero no siempre son de alta calidad
BLACKBERRY OS 7
Debilidades
Es pobre en juegos y su capacidad estaacute limitada por el SO
~ 110 ~
WINDOWS PHONE 75 Mango
Fortalezas
Permite a los desarrolladores importar juegos faacutecilmente por lo que la biblioteca de juegos podriacutea ampliar raacutepidamente la plataforma de juegos Xbox en vivo
Debilidades
La biblioteca de juegos es pequentildea y por lo general como su SO no estaacute basado en esto entonces no es su prioridad desarrollar juegos
EQUIPO
IOS 61
Fortalezas
Su hardware esta hecho de la mejor calidad y tienen un alto valor de reventa
Debilidades
Cuando sale al mercado un nuevo equipo solo sale un modelo y estaacute a la venta por un antildeo o maacutes no teniendo de donde maacutes escoger y su disentildeo no ha cambiado mucho en varios antildeos
Los equipos son muy costosos a no ser de que se compre un modelo maacutes viejo puede ser un poco maacutes econoacutemico pero ya estos no cuentan con las mejoras y nuevas caracteriacutesticas del SO que este en la actualidad
Android 42 Jelly Bean
Fortalezas
Cuenta con una amplia gama de teleacutefonos a elegir para todos los gustos y presupuesto monetario convirtieacutendose maacutes accesibles para los usuarios a la hora de elegir un equipo son teleacutefonos de excelente calidad y ofrecen un montoacuten de caracteriacutesticas diferentes ya sea con teclado fiacutesico o sin eacutel pantallas pequentildeas o grandes etc
BLACKBERRY OS 10
Fortalezas
Blackberry construye tanto su hardware como el software lo que les permite asegurarse de que funcionan bien juntos
~ 111 ~
WINDOWS PHONE 8
Fortalezas
Son atractivos a la vista y tienen auriculares coloridos que atraen tambieacuten ademaacutes de excelente calidad de construccioacuten y cuenta con equipos de pantalla grande
Debilidades
Debido a un estricto requisito de hardware de Microsoft habraacute menos variedad de teleacutefono Android y maacutes Windows phone
RENDIMIENTO
IOS 61
Fortalezas
Buen rendimiento y estabilidad
Debilidades
Hay problemas de rendimiento en los modelos maacutes antiguos cuando se ejecutan las nuevas versiones del sistema operativo
Android 42 Jelly Bean
Fortalezas
En general tiene un buen rendimiento dejando ver por medio de informes detallados en el equipo cuaacutel es su rendimiento
Debilidades
Existen problemas de rendimiento pero en equipos que estaacuten retrasados tecnoloacutegicamente y que son maacutes econoacutemicos
BLACKBERRY OS 10
Fortalezas
Permite ver el estado de las muacuteltiples aplicaciones corriendo al mismo tiempo contando con lo que es llamado ldquomultitareardquo
Debilidades
Tiene algunos problemas de rendimiento cuando se ejecutan aplicaciones Android
~ 112 ~
WINDOWS PHONE 8
Fortalezas
Tiene un buen rendimiento en general
BATERIA
IOS 61
Debilidades
La bateriacutea no se puede remplazar por el usuario
Android 42 Jelly Bean
Debilidades
Muchos de sus teleacutefonos tienen poca duracioacuten de la bateriacutea
BLACKBERRY OS 10
Debilidades
Blackberry ya no tiene la excelente duracioacuten de la bateriacutea que teniacutea anteriormente pues el nuevo Blackberry Z10 ha tenido problemas de bateriacutea
WINDOWS PHONE 8
Fortalezas
Nokia 920 viene con carga inalaacutembrica y tiene un modo de ahorro de bateriacutea
ALMACENAMIENTO
IOS 61
Debilidades
No cuenta con memoria expansible
Android 42 Jelly Bean
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los equipos
~ 113 ~
BLACKBERRY OS 10
Fortalezas
Cuenta con buena memoria y una excelente gestioacuten de la memoria expansible
WINDOWS PHONE 8
Fortalezas
Tiene memoria expansible disponible en la mayoriacutea de los teleacutefonos
MAPAS
IOS 61
Fortalezas
Cuenta con una nueva aplicacioacuten llamada Apple Maps que es excelente y tiene un mejor uso que la versioacuten de mapas de Android ademaacutes Apple Maps ofrece una gran vista de sobrevuelo en 3D en algunas ciudades
Debilidades
En los mapas hacen faltan algunos datos y caracteriacutesticas
Android 42 Jelly Bean
Fortalezas
Google Maps es raacutepido y tiene una excelente integracioacuten con otros servicios de Google
Debilidades
Google Maps utiliza disentildeo anticuado e inconsistente no es tan bueno como la versioacuten de iOS
BLACKBERRY OS 10
Debilidades
Es lento pobre en vistas 3D o satelitales y le falta informacioacuten sobre lugares y direcciones
~ 114 ~
WINDOWS PHONE 8
Fortalezas
Nokia Maps cuenta con mapas del fantaacutestico Navteq una empresa liacuteder en Cartografiacutea y GPS ademaacutes sus mapas pueden ser descargados para hacer uso de ellos cuando no se tenga conexioacuten a Internet
SINCRONIZACION
IOS 61
Fortalezas
Sincroniza fotos libros muacutesica documentos calendario contactos y correo electroacutenico
Android 42 Jelly Bean
Fortalezas
Sincronizacioacuten automaacutetica de forma inalaacutembrica en la tercera parte de las aplicaciones ademaacutes de una excelente sincronizacioacuten con los servicios Google
BLACKBERRY OS 10
Fortalezas
Sincronizacioacuten inalaacutembrica a traveacutes del link de Blackberry
WINDOWS PHONE 8
Fortalezas
Se Sincroniza mediante las opciones arrastrar y soltar y ademaacutes se puedes sincronizar canciones y listas de reproduccioacuten mediante Windows Media Player o iTunes
Debilidades
La aplicacioacuten para sincronizar que reemplaza a zune no es tan buena y completa ademaacutes es pobre en la administracioacuten de la muacutesica
~ 115 ~
ACTUALIZACIONES
IOS 61
Fortalezas
Estaacute estandarizado con over-the-air un meacutetodos de distribucioacuten de nuevas actualizaciones de software configuracioacuten y actualizacioacuten incluso las claves de cifrado a dispositivos como teleacutefonos moacuteviles entre otros
Android 42 Jelly Bean
Debilidades
La fragmentacioacuten conduce a desorganizacioacuten y retrasos de las actualizaciones
BLACKBERRY OS 10
Fortalezas
Esta estandarizado con actualizaciones over-the-air
WINDOWS PHONE 8
Fortalezas
Esta estandarizado con actualizaciones over-the-air
Debilidades
Microsoft ha dejado de lado Windows Mobile y Windows Phone 7 en los uacuteltimos antildeos
AGENDA DE CONTACTOS Y REDES SOCIALES
IOS 61
Fortalezas
Permite Sincronizar contactos con el calendario y faacutecilmente publicar en Twitter y Facebook y este permite compartir contenidos faacutecilmente
~ 116 ~
Android 42 Jelly Bean
Fortalezas
Las aplicaciones de las redes sociales se integran al sistema operativo que esteacute instalado
Debilidades
No hay integracioacuten por defecto
BLACKBERRY OS 10
Fortalezas
El Gestor de contactos combina todas las actualizaciones de las redes sociales
WINDOWS PHONE 8
Fortalezas
Categoriza los contactos por grupos y en cuanto a redes sociales Facebook Twitter LinkedIn estaacuten bien integrados con contactos fotos actualizaciones de estado eventos etc
Debilidades
La mensajeriacutea en grupo solo funciona en Windows Phone lo que lo convierte en algo inuacutetil en la praacutectica
VIDEOLLAMADAS
IOS 61
Fortalezas
Cuenta con varias aplicaciones de video llamadas y utiliza una aplicacioacuten llamada facetime para video llamadas entre dispositivos Apple
Android 42 Jelly Bean
Fortalezas
Cuenta con varias aplicaciones de video llamadas donde su principal aplicacioacuten de video llamadas Google Hangouts permite chat de video en grupo y Google Talk permite muacuteltiples plataforma de chat de viacutedeo a traveacutes de Gmail
~ 117 ~
BLACKBERRY OS 10
Fortalezas
El correo de Blackberry tiene chat por viacutedeo y uso compartido de pantalla
WINDOWS PHONE 8
Fortalezas
Skype estaacute totalmente integrado y permite chat de viacutedeo multiplataforma
VOIP
IOS 61
Fortalezas
Tiene muchas aplicaciones disponibles incluyendo Skype
Android 42 Jelly Bean
Fortalezas
Google Talk tiene integrado voz por chat
BLACKBERRY OS 10
Fortalezas
Blackberry Messenger tiene chat por voz
WINDOWS PHONE 8
Fortalezas
Skype se integra y otras aplicaciones de VoIP pueden hacer lo mismo
DOCUMENTOS
IOS 61
Fortalezas
La aplicacioacuten Google Drive permite la edicioacuten de documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica e incluye iWork una suite que permite de la forma maacutes faacutecil crear documentos hojas de caacutelculo y presentaciones en un dispositivo iOS que debe ser pagada pero que funciona a la perfeccioacuten con las versiones de escritorio
~ 118 ~
Android 42 Jelly Bean
Fortalezas
Google Drive permite editar documentos y hojas de caacutelculo por medio de la sincronizacioacuten automaacutetica
BLACKBERRY OS 10
Fortalezas
Docs to Go ofrece una forma faacutecil en la edicioacuten de documentos archivos PDF hojas de caacutelculo y presentaciones
WINDOWS PHONE 8
Fortalezas
Tiene una excelente integracioacuten de Microsoft Office con la sincronizacioacuten automaacutetica en SkyDrive
NOTIFICACIONES
IOS 61
Fortalezas
El uso de notificaciones es sencillo y tiene un botoacuten para que este no se vuelva a repetir y sea molesto
Android 42 Jelly Bean
Fortalezas
Actuacutea directamente sobre las notificaciones y es faacutecil y sencillo de usar
BLACKBERRY OS 10
Fortalezas
El Sistema de notificaciones se adapta mucho al usuario y ademaacutes estas se pueden observar aun cuando la pantalla estaacute apagada a traveacutes de una luz del LED
Debilidades
No se pueden visualizar cuando se estaacute en un mensaje en el correo electroacutenico etc
~ 119 ~
WINDOWS PHONE 8
Fortalezas
La aplicacioacuten nueva llamada Live Tiles puede mostrar notificaciones constantemente de cosas que se necesitan en el diario vivir
Debilidades
No hay un eje central para las notificaciones
CALENDARIO
IOS 61
Fortalezas
El calendario es muy completo faacutecil de usar y ademaacutes se integra con los eventos de Facebook
Android 42 Jelly Bean
Fortalezas
El calendario de Google es excelente faacutecil de usar y estaacute integrado en Android
BLACKBERRY OS 10
Fortalezas
Es un calendario completo que se sincroniza con los eventos de Facebook y LinkedIn y ademaacutes informacioacuten de llamadas de conferencia aparecen en el calendario
WINDOWS PHONE 8
Debilidades
No estaacute muy bien implementado
NOTAS
IOS 61
Fortalezas
En la App store hay gran variedad de aplicaciones de notas
~ 120 ~
Debilidades
La construccioacuten de estas aplicaciones es muy baacutesica
Android 42 Jelly Bean
Fortalezas
Hay una gran variedad de excelentes aplicaciones para notas en Google Play
BLACKBERRY OS 10
Fortalezas
Aplicacioacuten Recordar notas tiene la ventaja de poder almacenar texto imaacutegenes video audio y notas de voz e integrarse con Outlook ademas se pueden categorizar
WINDOWS PHONE 8
Fortalezas
OneNote es raacutepido se sincroniza automaacuteticamente con SkyDrive ocupaacutendose de las notas voz e imaacutegenes
64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA
IMPLEMENTAR APLICACIONES EN IOS
641 Otros entornos de desarrollo para iOS
Actualmente existen varias herramientas y lenguajes de programacioacuten para
crear aplicaciones para dispositivos como el iPhone iPad y iPod Touch en
donde algunas son para programadores con maacutes experiencia y que son
complejas de aprender y otras pueden ser de gran ayuda para aquellos que
poco saben de programacioacuten pero que quieren incursionar en el tema de los
cuales se destaca el entorno de desarrollo Xcode y su lenguaje de
programacioacuten Objective-c pues son los utilizados por Apple para la creacioacuten de
sus aplicaciones
En el antildeo 2010 la App store cambio las reglas haciendo posible seleccionar entre una amplia variedad de lenguajes para el desarrollo multiplataforma iOS y Android y por medio de una sola aplicacioacuten esta funciona en ambos dispositivos ademaacutes de eso se pueden desarrollar con lenguajes maacutes sencillos faacuteciles de aprender o incluso con tecnologiacuteas maacutes conocidas tales como HTML5 y Javascript
~ 121 ~
Entre las distintas alternativas estaacuten
Kendo UI
Corona SDK
PhoneGap
Sencha
jQuery Touch
jQuery Mobile
Appcelerator
RubyMotion
Rhomobile
(Axtro 2013)
Como se mencionoacute anteriormente existen otras formas para crear aplicaciones
para el iPhone iPad y el iPod Touch a continuacioacuten se describen las maacutes
usadas y destacadas
Corona SDK y Lua
Ilustracioacuten 54 Herramienta de desarrollo Corona SDK
Fuente (Corona Labs Inc A mobile development software company 2013)
Corona SDK es una herramienta para desarrollar aplicaciones y ejecutarlas en
iOS y tambieacuten para Android Amazon Kindle Fire y Burnes amp Noble Nook
enfocada principalmente a los juegos el lenguaje de programacioacuten que utiliza
es Lua un lenguaje de scripting utilizado precisamente para desarrollar juegos
Este lenguaje es maacutes sencillo que Objective-C en donde cualquier
programador independientemente de su experiencia previa puede aprender
Lua y Corona en muy poco tiempo
~ 122 ~
Estas herramientas son econoacutemicas pero no gratuitas pero trae la ventaja de
que es un lenguaje muy sencillo y se puede desarrollar tanto en un Mac como
en Windows algo que no se puede hacer con Objective-c
PhoneGap
Ilustracioacuten 55 framework PhoneGap
Fuente (Traeg 2013)
PhoneGap es un framework para el desarrollo de aplicaciones moacuteviles que permite crear aplicaciones sencillas para iOS Android y otros dispositivos (Palm Blackberry Windows Phone etc) La interfaz graacutefica se crea con HTML 5 y CSS y la funcionalidad con JavaScript permitiendo a los programadores crear aplicaciones para dispositivos moacuteviles con un entorno que es maacutes familiar
Es utilizado para realizar aplicaciones sencillas por lo tanto no es recomendado para aquellas que son maacutes complejas y se puede desarrollar tanto en Windows como en Mac y lo uacutenico negativo que tiene es que las aplicaciones que alliacute se desarrollan no son aplicaciones nativas en ninguna de las plataformas a veces se nota (Rodriguez 2012) Ahora si se hablara del entorno usado por el grande Apple para programar aplicaciones iOS el Xcode
642 Herramientas de desarrollo iOS usadas por Apple
Xcode
Antes que nada para desarrollar aplicaciones para iOS se necesita un
computador marca Macintosh con procesador Intel y las herramientas Xcode ya
que este software no pude ser descargado en otro sistema operativo diferente
al Mac OS X pues asiacute lo ha establecido Apple
~ 123 ~
Ilustracioacuten 56 Entorno de desarrollo Xcode
Fuente (Apple 2012)
iquestQueacute es Xcode
Xcode es in IDE (Integrated Development Enviroment) o una suit de herramientas de desarrollo que permite realizar de una forma graacutefica eficiente y faacutecil de usar las tareas maacutes comunes de la programacioacuten para dispositivos con iOS y Mac OS X
Xcode estaacute optimizado para el desarrollo visual de proyectos con Objective-C y las libreriacuteas cocoa esto quiere decir que la documentacioacuten y bibliotecas de cocoa y cocoa touch estaacuten estrechamente integradas en el IDE Xcode
El IDE de Xcode tiene dos editores que se utilizan para el disentildeo y la implementacioacuten de las aplicaciones el editor de coacutedigo fuente y el editor de la interfaz de usuario y que por medio del (SCM) o sistemas de gestioacuten de control de coacutedigo fuente Xcode puede mostrar errores tanto de la loacutegica y la sintaxis como de sugerir cuales son las posibles soluciones
Xcode posee varias ventajas para los programadores haciendo que la herramienta sea maacutes faacutecil y eficiente de utilizar con una Interfaz o ventana de trabajo uacutenica ayuda en la edicioacuten del coacutedigo fuente o de la interfaz en la identificacioacuten y correccioacuten de errores de forma automaacutetica y el control del coacutedigo fuente protegiendo los archivos del proyecto en un repositorio (Apple 2012)
Para crear una aplicacioacuten en iOS se empieza por crear un nuevo proyecto en Xcode este proyecto gestiona toda la informacioacuten asociada a la aplicacioacuten El corazoacuten de todo proyecto de Xcode es la ventana del proyecto esta ventana proporciona acceso raacutepido a todos los elementos claves para la generacioacuten de la aplicacioacuten esta ventana se ve ilustrada en la siguiente Imagen
~ 124 ~
Ilustracioacuten 57 Ventana barra de herramientas Xcode
Fuente (Inc Apple 2012)
La barras de herramientas de Xcode contienes las siguientes aacutereas y cada una de ellas cumple una funcioacuten especiacutefica para la creacioacuten de las aplicaciones
Aacuterea de la barra de herramientas es para generar y ejecutar el proyecto cambiar el destino etc
Aacuterea de navegacioacuten es para cambiar archivos puntos de interrupcioacuten buscar el proyecto etc
Aacuterea de edicioacuten es para modificar los archivos de origen
Zona de depuracioacuten es para ver la pila de llamadas las variables y la informacioacuten de seguimiento
Aacuterea de inspector es para establecer los metadatos del elemento seleccionado
Aacuterea de la biblioteca es la que contiene el conjunto de elementos de la interfaz de usuario
~ 125 ~
Caracteriacutesticas de Xcode
Interface Builder
Es la herramienta de uso para ensamblar la interfaz de la aplicacioacuten de usuario usando Interface Builder se ensambla la ventana de la aplicacioacuten arrastrando componentes pre-configurados en ella (Vaacutesquez 2011)
Ilustracioacuten 58 Construyendo Interfaces iOS usando interface Builder
Fuente (Apple 2012)
Los componentes incluyen controles estaacutendar del sistema tales como switchs campos de texto y botones y tambieacuten puntos de vista personalizados para representarlos en puntos de vista de aplicacioacutenes Una vez colocados los componentes en la superficie dela ventana se pueden posicionar arrastrando a su alrededor configurar sus atributos establecer las relaciones entre los objetos y el coacutedigo Cuando la interfaz estaacute definida se guarda el contenido en un archivo que es un formato de archivo de recursos personalizados
Instruments
Para asegurarse de que se ofrece la mejor experiencia al usuario con el software realizado el entorno de instruments le permite analizar el rendimiento de las aplicaciones iOS mientras se ejecutan en el simulador Instruments reuacutene los datos de la aplicacioacuten en ejecucioacuten y presenta los datos en una pantalla graacutefica llamada el punto de vista temporal puede recopilar datos sobre
~ 126 ~
el uso de memoria de la aplicacioacuten la actividad del disco la actividad de red y rendimiento graacutefico (Vaacutesquez 2011)
Ilustracioacuten 59 Uso del entorno Instruments
Fuente (Apple 2012)
Simulador de iOS
El simulador de iOS es una espectacular herramienta para ahorro de tiempo que proporciona el Xcode dado que permite ejecutar aplicaciones de igual forma que lo hariacutea en un dispositivo real con iOS Este simulador es raacutepido en su arranque y al depurar errores permitiendo probar el coacutedigo aseguraacutendose de que la interfaz de usuario y el coacutedigo este perfecto funcionando correctamente y ademas incluye pruebas para los gestos taacutectiles utilizando el mouse
~ 127 ~
Ilustracioacuten 60 Simulador de iOS
Fuente (Apple 2012)
iPhone SDK o iOS SDK
Es un Kit de desarrollo de software para la plataforma de Apple Inc que proporciona soporte para el desarrollo de aplicaciones iOS e incluye el conjunto completo de herramientas Xcode compiladores y frameworks para desarrollar aplicaciones para iOS y Mac OS X Estas herramientas incluyen el IDE de Xcode para codificacioacuten desarrollo y depuracioacuten de una aplicacioacuten el Interface Builder para disentildear la interfaz de usuario e Instruments para analizar el comportamiento y el desempentildeo ademaacutes de otras herramientas adicionales
La descarga del SDK se hace de forma gratuita desde la paacutegina de Apple pero para acceder al software es necesario registrarse en el programa de desarrollo de iOS para convertirse en un desarrollador registrado y tambieacuten acceder a documentaciones a traveacutes del link developerapplecomdevcenterios (Goldstein 2012 paacuteg 31)
~ 128 ~
65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS
ldquoOBJECTIVE-Crdquo
iquestQueacute es Objective-C
Objective-c es un lenguaje de programacioacuten orientado a objetos que deriva del lenguaje de programacioacuten c++ originalmente creado en 1980 por Brad Cox y la corporacioacuten StepStone donde luego fue adoptado como lenguaje de programacioacuten de NEXTSTEP y en 1992 fue liberado bajo licencia GPL para el compilador GCC (coleccioacuten de compiladores de GNU) 18 Objective-c actualmente es el lenguaje de programacioacuten principal para la construccioacuten de software para OS X y iOS junto con la foundation framework que es el conjunto de clases de estos sistemas operativos siendo Cocoa Touch la libreriacutea de programacioacuten orientada a objetos del sistema operativo iOS pero con la diferencia de que Objective-c es mucho maacutes faacutecil de aprender a programar ya que estaacute basado en el lenguaje smaltalk
Como Objective-c es un lenguaje de programacioacuten derivado de c++ este heredo algunas caracteriacutesticas de la sintaxis
Sentencias de control de flujo
Tipos de datos fundamentales estructuras y punteros
Conversiones impliacutecitas y explicitas entre tipos
Los aacutembitos de las variables globales locales y estaacuteticas
Funciones y sintaxis
Directivas de procesador y directivas de compilador maacutes algunas que agrega Objective-c
Una de la caracteriacutesticas maacutes importantes que define a Objective-c es su lenguaje dinaacutemico ya que las decisiones que toma las hace en el tiempo de ejecucioacuten y no en el tiempo de compilacioacuten como se hace en la mayoriacutea de lenguajes de programacioacuten lo que permite que las herramientas de desarrollo puedan instanciar objetos representarlos visualmente personalizarlos monitorizarlos y depurarlos de una mejor forma para el programador (Loacutepez 2009)
Los tipos de dinamismo que diferencias Objective-c de otros lenguajes son
La Memoria dinaacutemica
Los tipos dinaacutemicos
La introspeccioacuten
18 Son un conjunto de herramientas que proporciona la GNU para programar en varios
lenguajes y plataformaacutes
~ 129 ~
El enlace dinaacutemico
La carga dinaacutemica (Loacutepez 2009)
Memoria dinaacutemica En los primeros lenguajes la cantidad de memoria que usaba un programa quedaba fijada durante su compilacioacuten Raacutepidamente los lenguajes empezaron a ser conscientes de la importancia de que un programa pudiera decidir en tiempo de ejecucioacuten la cantidad de memoria que queriacutea reservar Por ejemplo C introdujo la funcioacuten malloc() para reservar memoria dinaacutemicamente Lenguajes como C++ permitieron que no soacutelo la memoria usada para almacenar datos sino la memoria ocupada por los objetos se pudiera decidir en tiempo de ejecucioacuten De hecho en C++ se puede reservar memoria para los objetos tanto en la pila (memoria estaacutetica) como en el heap (memoria dinaacutemica) Posteriormente los lenguajes de programacioacuten se dieron cuenta de que reservar memoria para los objetos en la pila haciacutea que el tamantildeo de eacutesta fuera mucho maacutes difiacutecil de predecir debido a que siempre habiacutea que dejar reservada una gran cantidad de memoria para la pila por si acaso lo cual daba lugar a un bajo aprovechamiento de la memoria Lenguajes maacutes modernos como Java o Objective-C solucionaron el problema obligando a que los objetos se creen siempre en memoria dinaacutemica evitando asiacute los desbordamientos de pila En Objective-C a diferencia de C++ los objetos siempre se crean en memoria dinaacutemica (Loacutepez 2009) Tipos dinaacutemicos Asociar un tipo a una variable es una buena idea ya que ayuda al compilador a identificar errores de codificacioacuten Por ejemplo muchos lenguajes no permiten asignar directamente cadenas a nuacutemeros (debido a que la cadena podriacutea no contener un nuacutemero) o nuacutemeros en coma flotante a enteros (donde se produciriacutea un redondeo) Ademaacutes la tipificacioacuten de los objetos permite al compilador informar al programador de que estaacute intentando acceder a un meacutetodo o variable de instancia que no existe en el objeto La tipificacioacuten de variables puede ser de dos tipos Tipificacioacuten estaacutetica que se produce cuando es el compilador quien lleva la cuenta de los tipos de las variables para identificar errores y tipificacioacuten dinaacutemica que se da cuando es el runtime del lenguaje el que en tiempo de ejecucioacuten detecta y usa el tipo de las variables Lenguajes como C++ tienen una tipificacioacuten dinaacutemica muy limitada en concreto C++ permite realizar tipificacioacuten dinaacutemica durante el enlace dinaacutemico de virtual Maacutes allaacute del enlace dinaacutemico C++ dispone de una extensioacuten al lenguaje
~ 130 ~
llamada RTTI (RunTime Type Information) que permite obtener algo de informacioacuten dinaacutemica sobre los objetos pero de forma bastante limitada (Loacutepez 2009) Introspeccioacuten La introspeccioacuten es la caracteriacutestica que tienen algunos lenguajes como Objective-C o Java de observar y manipular como datos el estado de su ejecucioacuten Con la introspeccioacuten se puede preguntar en tiempo de ejecucioacuten a un objeto cosas como A queacute clase pertenece de queacute clase deriva queacute protocolos implementa queacute meacutetodos tiene queacute paraacutemetros reciben sus meacutetodos etc (Loacutepez 2009) Enlace dinaacutemico Los lenguajes orientados a objeto reemplazan el concepto de llamada a funcioacuten por el de enviacuteo de mensajes La diferencia estaacute en que el mismo mensaje puede ejecutar diferentes funciones dependiendo del objeto que reciba el mensaje A esta capacidad que tienen los objetos de responder al mismo mensaje de distinta forma es a lo que se ha venido a llamar polimorfismo En lenguajes como C++ el polimorfismo lo implementa el compilador construyendo una tabla llamada v-table o virtual-table de las cuales se crea una por cada clase que tenga meacutetodos virtuales y donde en tiempo de ejecucioacuten se decide queacute funcioacuten ejecutar para cada mensaje que reciba el objeto Por el contrario en Objective-C es el runtime el que una vez recibido un mensaje busca en la clase del objeto y en las clases base la funcioacuten a ejecutar En el apartado 4 del Tema 4 veremos con maacutes detalle coacutemo se realiza esta buacutesqueda El tener que hacer una buacutesqueda lineal en vez de indireccionar una entrada de una tabla tiene el inconveniente de un coste de ejecucioacuten mayor pero gracias a que el runtime de Objective-C cachea las buacutesquedas el aumento de coste es despreciable En el apartado 34 del Tema 10 veremos que una de las ventajas de la forma en que Objective-C implementa el enlace dinaacutemico es el posing mediante el cual un objeto puede cambiar la clase de la que deriva en tiempo de ejecucioacuten (Loacutepez 2009) Carga dinaacutemica La carga dinaacutemica es una caracteriacutestica que tienen algunos lenguajes como Java u Objective-C consistente en poder cargar soacutelo un conjunto baacutesico de clases al empezar el programa y luego en funcioacuten de la evolucioacuten del flujo del programa ir cargando las clases de nuevos objetos que se necesiten instanciar
~ 131 ~
Quizaacute la ventaja maacutes importante de la carga dinaacutemica de clases es que hace a los programas extensibles Los plug-ins son la forma en la que Cocoa implementa este concepto Ejemplos de plug-ins son los componentes de las preferencias del sistema los componentes de Interface Builder o los inspectores de formatos del Finder Una vez que se carga una clase los objetos de esta clase se tratan como cualquier otro objeto Objective-C lo uacutenico que tiene que hacer un programa que quiera ser extensible mediante plug-ins es definir un protocolo que deban implementar los plug-ins (Loacutepez 2009)
Clases
Las clases de Objective-C constan de una interfaz y una implementacioacuten La interfaz se guarda en un fichero con extensioacuten ldquohrdquo e indica la estructura de un objeto (al igual que C o C++) y la implementacioacuten en un fichero con extensioacuten ldquomrdquo que contiene la implementacioacuten de los meacutetodos
A continuacioacuten se declara una interfaz simple
Ilustracioacuten 61 Ejemplo de una clase en Objective-C
Fuente (Lopez Hernandez 2012)
Interfaz
Normalmente una clase comienza importando las clases a las que hace referencia La declaracioacuten de la interfaz va desde la directiva del compilador interface hasta la directiva del compilador end
Lo primero que se indica es el nombre de la clase y la clase de la que deriva En Objective-C si una clase no deriva de NSObject (o de Object ) no puede utilizar las ventajas del runtime de Objective-C Lo primero que se indica en la declaracioacuten de la interfaz de una clase son las variables de instancia de eacutesta Estas se ponen siempre entre llaves y su sintaxis es similar a la de C++ o Java (Lopez Hernandez 2012)
~ 132 ~
Despueacutes de cerrar las llaves aparece la declaracioacuten de los meacutetodos de la clase Los meacutetodos que empiezan por ldquo-rdquo son meacutetodos de instancia y los que empiezan por ldquo+rdquo son meacutetodos de clase El lenguaje obliga a indicar si un meacutetodo es de instancia o de clase (Loacutepez 2009)
Ilustracioacuten 62 Ejemplo declaracioacuten de meacutetodos de una clase
Fuente (Lopez Hernandez 2012)
Implementacioacuten
Lo primero que se suele hacer en la implementacioacuten de una clase es importar su interfaz y despueacutes se usan las directivas del compilador implementation y end para encerrar la implementacioacuten de la clase
~ 133 ~
Ilustracioacuten 63 Ejemplo de implementaciones de una clase
Fuente (Lopez Hernandez 2012)
~ 134 ~
Soacutelo si una clase no tiene meacutetodos se puede omitir su implementacioacuten A diferencia de la interfaz en la implementacioacuten se indica el nombre de la clase pero no se vuelve a indicar de queacute clase deriva Dentro de la implementacioacuten de una clase no se pueden declarar nuevas variables de instancia pero siacute que es posible declarar meacutetodos en la implementacioacuten de una clase que no aparezcan en la interfaz En este caso los meacutetodos son tratados como privados y soacutelo podraacuten ser llamados desde la implementacioacuten de la clase
Objetos
En Objective-C los objetos soacutelo se pueden crear en memoria dinaacutemica Esta circunstancia hace que se deba declarar los objetos mediante punteros pero que al igual que en java se indica primero el tipo o la clase de la variable y luego un nombre para referirse a esa variable asiacute
En Objective-C cuando se dice que p es un objeto de la clase Persona lo que se debe entender es que p es un puntero a un objeto de la clase Persona
Ilustracioacuten 64 Ejemplo de coacutemo crear un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
Instanciar Objetos
Para instanciar objetos en Objective-c se usan los meacutetodos alloc e init que funcionan como constructor de la clase entonces el meacutetodo alloc lo que hace es reservar memoria para el objeto y el meacutetodo init lo que hace es inicializar el objeto asiacute
Ilustracioacuten 65 Ejemplo de coacutemo instanciar un objeto en Objective-C
Fuente (Lopez Hernandez 2012)
~ 135 ~
Tipos estaacuteticos y dinaacutemicos
Ya se sabe que cuando se trabaja con objetos en Objective-C se necesita
referirse a ellos mediante punteros En C++ y en Java la uacutenica forma de
referirse a un objeto es mediante tipos estaacuteticos que son variables donde es el
compilador el que conoce el tipo de las variables En el caso de los objetos la
tipificacioacuten estaacutetica se consigue mediante variables de tipo puntero a la clase
del objeto con lo que a los tipos estaacuteticos usados para apuntar objetos tambieacuten
se les llama punteros a objetos estaacuteticos por ejemplo
Punto ps = [Punto new]
Por el contrario los tipos dinaacutemicos seriacutean variables cuyo tipo no es conocido
por el compilador soacutelo por el runtime Objective-C permite usar tipos
dinaacutemicos pero soacutelo con puntero a objetos es decir el tipo del objeto no es
conocido por el compilador pero el runtime en tiempo de ejecucioacuten siacute que
puede conocer el tipo del objeto Para indicar en Objective-C que queremos
crear un puntero a objeto dinaacutemico declaramos la variable puntero del tipo id
Por ejemplo para referirnos a un objeto Punto con un puntero a objeto
dinaacutemico hacemos
id pd = [Punto new]
Observe que id no lleva asterisco ya que por siacute mismo es un puntero Al igual
que con un puntero objeto estaacutetico con un puntero a objeto dinaacutemico tambieacuten
vamos a poder llamar a los meacutetodos el objeto pero a diferencia de los punteros
estaacuteticos el compilador no comprueba que el meacutetodo exista cuando se trate
de un puntero a objeto dinaacutemico sino que seraacute responsabilidad del runtime
comprobar que el meacutetodo exista o producir una excepcioacuten si eacuteste no existiese
Por ejemplo
Punto ps = [Punto new]
id pd = [Punto new]
[ps setX4] Correcto
[ps canta] Error de compilacioacuten (meacutetodo no existe)
[pd setX4] Correcto
[pd canta] Compila correctamente pero falla en ejecucioacuten
(Lopez Hernandez 2012)
Variables de instancia
las variables de instancia se declaran entre llaves dentro de la interfaz Ademaacutes
la interfaz es el uacutenico lugar donde se pueden declarar variables de instancia la
~ 136 ~
implementacioacuten no puede indicar nuevas variables de instancia ni aunque
sean privadas La razoacuten por la que es necesario que las variables de instancia
esteacuten soacutelo en la interfaz es para poder conocer en tiempo de compilacioacuten el
tamantildeo de los objetos
En caso de que se quiera acceder a la variable de instancia desde fuera de la
clase se usa el operador flecha por ejemplo
Punto ps = [Punto new]
ps-gtx = 3
Atributos de una clase
Los atributos de una clase van entre llaves en la interfaz de la clase ya que no se pueden declarar variables de instancia en otro lugar asiacute
Ilustracioacuten 66 Declaracioacuten de variables puacuteblicas privadas y protegidas
Fuente (Lopez Hernandez 2012)
Ilustracioacuten 67 Ejemplo declaracioacuten de atributos en Objective-C
Fuente (Lopez Hernandez 2012)
Para declarar variables puacuteblicas o privadas se hace uso de las directivas public protected o private
~ 137 ~
Meacutetodos
Los meacutetodos son operaciones asociadas con un objeto y se usan o bien
como interfaces para leer y cambiar el estado de un objeto o bien como un
mecanismo para pedir al objeto que realice una accioacuten
Un meacutetodo en Objective-C es lo que en otros lenguajes se suelen llamar funciones estos se deben definir despueacutes de las variables fuera de los corchetes pero antes de llegar al end Existen varias formas necesarias para hacer uso de ellos
cuando no devuelven nada rarr - (void)nombreMetodo
cuando devuelven alguacuten valor rarr - (NSString )nombreMetodo
cuando no devuelven nada pero recibe un paraacutemetro rarr
- (void)nombreMetodo (NSString ) paraacutemetro
cuando devuelve un valor y recibe paraacutemetros rarr
- (NSInteger)nombreMetodo(NSString)paraacutemetro
cuando recibe varios paraacutemetros rarr - (NSString)nombreMetodo(NSString)datoUno otroDatoMaacutes(NSInteger)datoDos yOtroDatoMaacutes(BOOL)datoTres
Propiedades
Las propiedades es una de las nuevas caracteriacutesticas de Objective-C 20 y donde junto con el recolector de basura fueron ingresadas para mejorar la productividad de los programadores ahorraacutendoles la necesidad de implementar los meacutetodos getter y setter de las variables de instancia
Para declarar una propiedad se hace despueacutes de las variables de instancia por fuera de las llaves y con la directiva property
(Lopez Hernandez 2012)
~ 138 ~
Ilustracioacuten 68 Como declarar propiedades en Objective-C
Fuente (Lopez Hernandez 2012)
Encapsulacioacuten
Para facilitar la encapsulacioacuten es decir para poder ocultar las partes del objeto
que otros programadores no necesitan conocer para manejar un objeto
Objective-C permite limitar el aacutembito desde el que se puede acceder a las
variables de instancia de un objeto
Para declarar los niveles de encapsulacioacuten de las variables de instancia se
usan los modificadores de acceso public protected y private Estas
directivas del compilador pueden aparecer tantas veces como sea necesario y
afectan a todas las variables de instancia desde su aparicioacuten hasta el nuevo
modificador de acceso Si no existe modificador de acceso por defecto las
variables de instancia son protected Los efectos de los modificadores de
acceso son los siguientes
1 Cuando una variable de instancia tiene el modificador de acceso
public la variable de instancia es accesible desde cualquier parte del
programa
2 Cuando una variable de instancia tiene el modificador de acceso
private entonces si se accede a la variable de instancia desde dentro
del objeto la variable de instancia es visible en cualquier otro caso la
variable de instancia no es visible
~ 139 ~
3 Cuando una variable de instancia tiene el modificador de acceso
protected las reglas de acceso son similares a las de private
excepto que tambieacuten se permite acceder a la variable de instancia desde
una clase derivada
Otra peculiaridad de Objective-C es que nos permite llamar a meacutetodos privados
(ya sean de clase o de objeto) Durante la compilacioacuten se produciraacute un warning
avisando de que el meacutetodo podriacutea no existir pero en tiempo de ejecucioacuten el
meacutetodo se encuentra y ejecuta correctamente
(Lopez Hernandez 2012)
Objetos cadena
En Objective-C ademaacutes de poder usar el tipo char de C para trabajar con
cadenas acabadas en cero se puede usar la clase NSString y
NSMutableString para trabajar con objetos cadena
La clase NSString se usa para representar cadenas invariantes lo cual permite
al compilador optimizar las operaciones de gestioacuten de cadenas Siempre que
no vaya a modificar el contenido de la cadena debe instanciar objetos de esta
clase La clase NSMutableString se usa soacutelo para representar cadenas
variables es decir cuyo contenido va a ser modificado por el programa en
tiempo de ejecucioacuten
Los objetos de tipo NSString (y de su tipo derivado NSMutableString )
internamente siempre almacenan el contenido de las cadenas en Unicode
pero se puede ejecutar sobre estos objetos meacutetodos para convertir desde y
hasta otros formatos (pe ASCII de 7 bits ISO Latin 1 UTF-8) Tambieacuten se
puede ejecutar sobre NSString el meacutetodo de clase availableStringEncodings
para obtener una lista de formatos de codificacioacuten que soporta el objeto (Lopez
Hernandez 2012) (Clarke amp Mougin 2010)
66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE
ACRONIMOS)
Con el fin de aplicar los conceptos teoacutericos ya vistos con anterioridad en este documento se construiraacute un ejercicio praacutectico que ilustra la manera de emplear los principales elementos que componen una aplicacioacuten iOS Antes de dar inicio es importante considerar la instalacioacuten previa de las
herramientas necesarias para el desarrollo de una aplicacioacuten iOS y conocer
que estas solo pueden ser instaladas en un equipo con sistema operativo Mac
OS X y que es totalmente gratis A continuacioacuten se mostrara cuaacuteles son los
pasos a seguir
~ 140 ~
PASO1 Instalacioacuten de Xcode (Entorno de desarrollo para creacioacuten de
aplicaciones iOS)
Ilustracioacuten 69 Se abre la Mac App Store
Fuente (natxoraga22 2012)
Una vez abierta la App Store se busca el Xcode y se escribe Xcode en la barra
de buacutesqueda
Ilustracioacuten 70 se busca el Xcode en la Mac App Store
Fuente (natxoraga22 2012)
~ 141 ~
Entre todos los resultados obtenidos seleccionamos el Xcode
Ilustracioacuten 71 Resultados de la buacutesqueda de Xcode
Fuente (natxoraga22 2012)
Se da click en ldquoGratisrdquo y luego en ldquoInstalar Apprdquo
Ilustracioacuten 72 Paacutegina del Xcode en la Mac App Store
Fuente (natxoraga22 2012)
Para finalizar se introduce el ID de Apple y la contrasentildea (Se debe crear esta
cuenta en el iOS developer program)
~ 142 ~
Ilustracioacuten 73 Introducir Apple ID
Fuente (natxoraga22 2012)
Se espera a que descargue el Xcode
Ilustracioacuten 74 Progreso de la descarga de Xcode
Fuente (natxoraga22 2012)
Instalacioacuten del Xcode
Con los pasos anteriores lo que se descargoacute en la carpeta Aplicaciones es un
archivo llamado Install Xcode como un exe en Windows que permite instalar
la aplicacioacuten en el equipo
~ 143 ~
Ilustracioacuten 75 Archivo Install Xcode en la carpeta Aplicaciones
Fuente (natxoraga22 2012)
Ahora se debe abrir el archivo Install Xcode con doble click para proceder
con la instalacioacuten real de la aplicacioacuten
Ilustracioacuten 76 Inicio de la instalacioacuten de Xcode
Fuente (natxoraga22 2012)
~ 144 ~
Ahora simplemente se siguen los pasos tiacutepicos para la instalacioacuten de una
aplicacioacuten y ya quedara correctamente instalado en el equipo
Cuando la instalacioacuten acabe se abriraacute la aplicacioacuten y esto es lo q se observa
Ilustracioacuten 77 Ventana inicial de Xcode
Fuente (natxoraga22 2012)
Para la creacioacuten de esta aplicacioacuten se haraacute uso de un motor de base de datos
en la que se usoacute SQLite
PASO 2 Instalacioacuten de SQLite
Para instalar SQLite se hace uso de Mozilla Firefox e ingresar en el siguiente link httpsaddonsmozillaorges-esfirefoxaddonsqlite-manager
Ilustracioacuten 78 Ventana de descarga SQLite Manager
Fuente Ilustracioacuten propia
~ 145 ~
Click en ldquo+ Antildeadir a Firefoxrdquo Luego click en permitir cuando lo solicite
Ilustracioacuten 79 Antildeadir complemento
Fuente Ilustracioacuten propia
Se confirma la instalacioacuten con un click en ldquoinstalar ahorardquo
Ilustracioacuten 80 Confirmacioacuten de la instalacioacuten
Fuente Ilustracioacuten propia
~ 146 ~
Se debe reiniciar Firefox para que el complemento se antildeada
Ilustracioacuten 81 Reiniciar Firefox
Fuente Ilustracioacuten propia
Una vez instalado se dirige al menuacute Herramientas -gt SQLite Manager
Ilustracioacuten 82 Abrir SQLite Manager
Fuente Ilustracioacuten propia
~ 147 ~
Esta es la interfaz de SQLite Manager que se observa
Ilustracioacuten 83 Interfaz de SQLite Manager
Fuente Ilustracioacuten propia
PASO 3 Creacioacuten de la base de datos Lo primero que se debe hacer es crear una nueva base de datos y se le pone un nombre En este caso acroacutenimos
Ilustracioacuten 84 Nombramiento de la BD
Fuente Ilustracioacuten propia
~ 148 ~
Una vez hecho esto se crea las tablas Esta aplicacioacuten solo llevara una llamada ldquoacroacutenimosrdquo Para crear la tabla se selecciona a la izquierda ldquoTablesrdquo y con el botoacuten derecho se elige ldquoCrear tablardquo
Ilustracioacuten 85 Crear tabla
Fuente ilustracioacuten propia
Despueacutes se procede a crear los campos definir el tipo de dato y click en OK
Ilustracioacuten 86 Crear campos
Fuente ilustracioacuten propia
~ 149 ~
Una vez creada a la tabla se procede a exportar la base de datos Click en el menuacute ldquoBase de datosrdquo Exportar Base de Datosrdquo
Ilustracioacuten 87 Exportar BD
Fuente ilustracioacuten propia
PASO 4 Abrir un proyecto nuevo en Xcode Al abrir Xcode se observa la siguiente interfaz alliacute se hace click en un proyecto de tipo Single View Application y se pulsa Next
Ilustracioacuten 88 Tipos de plantillas que se usan para un nuevo proyecto
Fuente Ilustracioacuten propia
~ 150 ~
Luego se escribe el nombre que se le va a dar al proyecto se elige el tipo de
dispositivo para el que se va a programar y finalmente click en Next
Ilustracioacuten 89 Asignacioacuten del nombre del proyecto Fuente Ilustracioacuten propia
PASO 5 Agregar fichero de la BD al proyecto nuevo
Se arrastra el fichero de base de datos al explorador de proyectos en la carpeta Supporting Files Asiacute
~ 151 ~
Ilustracioacuten 90 Agregar la BD al proyecto
Fuente Ilustracioacuten propia
Nota la casilla de copiar archivos necesarios debe estar marcada al igual que el target del proyecto porque o si no este no tendraacute acceso Asiacute
Ilustracioacuten 91 Copia de archivos de la BD
Fuente Ilustracioacuten propia
~ 152 ~
PASO 6 Construccioacuten del coacutedigo e interfaz graacutefica para agregar Datos a la BD Se empieza creando la interfaz principal se pulsa sobre MainStoryboard y se antildeaden los elementos necesarios En este caso se antildeadioacute un ldquoLabelrdquo o etiqueta de texto 1 ldquoButtonrdquo con el nombre ldquoIngresarrdquo y una imagen ldquoImage Viewrdquo con una imagen de la UCP arrastraacutendolos hasta la ventana Asiacute
Ilustracioacuten 92 Crear interfaz graacutefica
Fuente Ilustracioacuten propia
A continuacioacuten se antildeade una clase nueva UITableViewController se pulsa con el botoacuten derecho sobre el proyecto y click en New File
~ 153 ~
Ilustracioacuten 93 Menuacute para crear nueva clase
Fuente ilustracioacuten propia
Click sobre ldquoObjective-C Classrdquo despueacutes en el campo class se pone el nombre que se desee en este caso por ser ldquoagregar datos a la bdrdquo se llamoacute RHAddtaskViewController y se eligioacute como ldquosubclase derdquo UITableViewController Asiacute
Ilustracioacuten 94 Poner nombre y tipo a la nueva clase
Fuente ilustracioacuten propia
~ 154 ~
Se inserta un 4 nuevos TableViewController (nueva ventana tipo table) y 2 Navigation Controller los cuales permiten la navegacioacuten entre ventanas haciendo click en el botoacuten ldquoBackrdquo
Ilustracioacuten 95 Objeto TableViewController
Fuente Ilustracioacuten propia
Ilustracioacuten 96 Storyboards oTableViewController y Navigaton Controllers
Fuente Ilustracioacuten propia
Despueacutes al TbleViewController RHAddViewController se le agrega lo siguiente
Dos celdas estaacuteticas para ingresar en ellas el acroacutenimo y su respectiva extensioacuten asiacute
~ 155 ~
Ilustracioacuten 97 Celda estaacutetica
Fuente Ilustracioacuten propia
Una etiqueta (UILabel) para mostrar el texto ldquoAntildeadir Acroacutenimordquo Esta va
a ser solo un tiacutetulo de la ventana y 2 etiquetas maacutes con los textos
ldquoAcroacutenimo y Extensioacutenrdquo para indicar al usuario que debe poner en los
campos de texto
Por uacuteltimo se antildeaden dos Button uno para que al dar click inserte los datos correctamente y otro para cancelar la insercioacuten e ir a la vista de listar datos
Ilustracioacuten 98 Interfaz para Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 156 ~
Se le antildeade la clase a la cual pertenece el storyboard que permitiraacute antildeadir el acroacutenimo a la BD
Ilustracioacuten 99 Clase perteneciente al storyboard
Fuente Ilustracioacuten propia
Una vez hecho esto se conecta el botoacuten de ingreso de la interfaz principal con la ventana o TableViewViewController que se va a ejecutar al dar click para dar inicio a la aplicacioacuten Se da click sostenido sobre el botoacuten y cuando salga el punto azul se arrastra hasta la ventana a conectar y click en style modal y se elige la transicioacuten de la ventana que se desee Asiacute
Ilustracioacuten 100 Conexioacuten a otros View Controller
Fuente Ilustracioacuten propia
~ 157 ~
Luego en RHAddTaskViewControllerh se definen Porpertys (propiedades) e IBActions (acciones) a ejecutar
Una vez hecho esa parte del coacutedigo se enlazan los Poperty e IBActions con la interfaz Antildeadir Acroacutenimo para que cada objeto reconozca cuaacutel es su funcioacuten dentro del coacutedigo asiacute
Ilustracioacuten 101 Conexioacuten de Outlets y Actions con la interfaz
Fuente Ilustracioacuten propia
~ 158 ~
Y el IBActions del botoacuten y despueacutes click en ldquoTouch up insiderdquo asiacute
Ilustracioacuten 102 Conexioacuten objetos Button con su evento
Fuente Ilustracioacuten propia
Una vez hecho esto se empieza a escribir el coacutedigo para enlazar la base de datos Se debe crear un objeto que herede de NSObject El cual se llamara ldquoTareardquo y se le establece las propiedades similares a las de la tabla de la BD El proceso se hace como anterirormente se vio al dar click en el proyecto para crear una nueva clase con la diferencia de que la subclase es de tipo NSObject
~ 159 ~
Ilustracioacuten 103 Crear clase tipo NSObject
Fuente Ilustracioacuten propia
En Tareah se pone las siguientes propiedades
~ 160 ~
Taream
Tambieacuten se creara un objeto que herede de NSObject El cual se llamara ldquoBaseDatosrdquo el cual tendraacute los meacutetodos para los diferentes llamados a la base de datos Insert Update Delete y Select BaseDatosh
~ 161 ~
BaseDatosm Meacutetodo eliminar
Meacutetodo Insertar o guardar
~ 162 ~
Meacutetodo Actualizar o Modificar
Meacutetodo Buscar o seleccionar acroacutenimo
Un paso a la hora de utilizar un framework en Xcode es el de vincularlo al proyecto Para vincular el framework de SQLite se pulsa en el explorador del proyecto sobre el propio proyecto En la ventana que aparece click en la pestantildea ldquoBuild Phasesrdquo
~ 163 ~
Ilustracioacuten 104 Agregar Framework
Fuente Ilustracioacuten propia
Se despliega ldquoLink Binary With Librariesrdquo y click sobre ldquo+rdquo para antildeadir el framework deseado en este caso ldquolobsqlite3dylibrdquo
Ilustracioacuten 105 Agregar libsqlite3dyilib
Fuente Ilustracioacuten propia
~ 164 ~
Seguidamente abrir AppDelegateh para importar la libreariacutea del framework sqlite Y declarar unas variables necesarias para enlazar la base de datos y poderla consultar
A continuacioacuten en AppDelegatem se antildeade los synthesize necesarios
Despueacutes en DidFinishLaunching se establecen los valores para preparar la Base de Datos
Y despueacutes se implementa el meacutetodo para cargar la base de datos
~ 165 ~
Ya creado el punto de acceso a la base de datos desde cualquier ventana lo que falta es que la ventana que lo necesite enlace antes con AppDelegate para recuperarla entonces en RHAddTaskViewControllerh se importa y declara el AppDelegate
Hecho esto se implementa el meacutetodo para insertar los acroacutenimos a la base de datos haciendo un llamado al meacutetodo declarado en BaseDatos ldquoSaveAcronimordquo asiacute
~ 166 ~
Llegado a este punto la aplicacioacuten ya guarda datos en la base de datos PASO 7 Codificacioacuten y disentildeo de la interfaz graacutefica para Modificar o actualizar los Datos agregados a la BD
Lo primero que se debe hacer es crear una nueva clase tipo
UITableViewController para crear la nueva interfaz y sus respectivas funciones
Se llamara RHEdittaskViewController
Ilustracioacuten 106 Clase Modificar View Controller
Fuente Ilustracioacuten propia
Seguido esto se le antildeade a la interfaz los objetos necesarios para esta
quedando asiacute
~ 167 ~
Ilustracioacuten 107 Interfaz Modificar Acroacutenimo
Fuente Ilustracioacuten propia
Ahora se declaran las propiedades y acciones al igual que en RHaddTaskViewControllerh en RHEditTaskViewControllerh
~ 168 ~
Se procede con la implementacioacuten en RHEditTaskViewControllerm y se importan las clases a utilizar asiacute
~ 169 ~
Por medio de TableViewBackgroundColor se inserta la imagen de fondo
Meacutetodo que realiza las modificaciones a la BD y actualiza los campos ingresados
Meacutetodo que permite por medio del Button ldquoLeerrdquo escuchar la definicioacuten del acroacutenimo consultado
~ 170 ~
Para este uacuteltimo meacutetodo se agregoacute el siguiente framework
Ilustracioacuten 108 Framework para leer texto
Fuente Ilustracioacuten propia
Ya credos los meacutetodos y los objetos solo queda conectarlos con la interfaz
graacutefica igual que se mostroacute en RHaddTaskViewController
~ 171 ~
Ilustracioacuten 109 Conexioacuten de acciones y Propertys
Fuente Ilustracioacuten propia
Finalmente no olvidar relacionar la interfaz con su respectiva clase
Ilustracioacuten 110 Unioacuten de la interfaz con su respectiva clase
Fuente Ilustracioacuten propia
PASO 8 Construccioacuten del coacutedigo e interfaz graacutefica para Eliminar y listar
los Acroacutenimo de la BD
Se crea la clase nueva Se llamara ldquoRHTaskListViewControllerrdquo
~ 172 ~
Ilustracioacuten 111 Nueva clase RHTaskViewController
Fuente Ilustracioacuten propia
La UITableViewController que enlistara los acroacutenimos agregados y donde se
eliminaran queda asiacute
~ 173 ~
Ilustracioacuten 112 Interfaz eliminar
Fuente Ilustracioacuten propia
~ 174 ~
Ilustracioacuten 113 Interfaz Listado de acroacutenimos
Fuente Ilustracioacuten propia
Se relaciona el View Controller con su respectiva clase
Ilustracioacuten 114 Relacioacuten View Controller con la clase RHTaskListViewController
Fuente Ilustracioacuten propia
~ 175 ~
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllerhrdquo
Construccioacuten del coacutedigo de la interface en ldquoRHTaskListViewControllermrdquo
Coacutedigo para las conexiones que hay entre las diferentes interfaces al pasar de
una a los otros llamados como ldquoseguerdquo
~ 176 ~
Meacutetodos agregar datos de la BD a la tabla
~ 177 ~
Meacutetodo para la eliminacioacuten de los datos seleccionando la fila deseada
En esta interfaz se crea un botoacuten tipo ldquordquoAddrdquo representado por un ldquo+rdquo el cual me permite navegar hacia la ventana de antildeadir un acroacutenimo y el cual se conectoacute con el navigation controller q va directamente conectado a la ventana antildeadir Asiacute
Ilustracioacuten 115 Botoacuten que lleva hacia la ventana Antildeadir Acroacutenimo
Fuente Ilustracioacuten propia
~ 178 ~
Finalmente se conectan las Acciones y las Propiedades con los elementos de la interfaz
Ilustracioacuten 116 conexioacuten de los IBAction y Propertys con los elementos de la interfaz Listar
Fuente Ilustracioacuten propia
~ 179 ~
Ilustracioacuten 117 interfaces de todo el Diccionario de Acroacutenimos
Fuente Ilustracioacuten propia
~ 180 ~
CONCLUSIONES 7
Los dispositivos que usan iOS estaacuten muy enfocados en la parte multimedia e
interaccioacuten con el usuario a la capacidad de almacenamiento calidad del
producto y duracioacuten de la bateriacutea
Se caracterizoacute la estructura del hardware de los dispositivos moacuteviles iPod
Touch iPhone y iPad que usan iOS describiendo y mostrando mediante
imaacutegenes sus componentes externos como internos detallando sus
paraacutemetros maacutes relevantes para que otros estudiantes que tomen el
documento como referencia tengan maacutes claridad sobre la configuracioacuten teacutecnica
de cada uno de ellos
Con el paso de los antildeos el sistema operativo iOS viene siendo mejorado y
puestos a la vanguardia tecnoloacutegicamente esto se refleja en la medida que
Apple evoluciona y libera constantemente dispositivos con nuevas
caracteriacutesticas que agilizan su rendimiento y son maacutes amigables para los
usuarios
Existen varios entornos de desarrollo y lenguajes para programar aplicaciones
para dispositivos iOS permitiendo a los programadores utilizar las herramientas
que maacutes se les facilite y puedan hacer parte de Apple vendiendo sus
aplicaciones
Objective-C deriva del lenguaje C pero siendo este un lenguaje de
programacioacuten orientado a objetos convirtieacutendolo en una ventaja ya que debido
a esta caracteriacutestica su programacioacuten se hace maacutes simple potente y versaacutetil
El entorno de desarrollo usado por Apple Xcode es realmente amigable con el
programador al permitir autocompletar coacutedigo la forma de interactuar con la
interfaz y como se encuentra organizada permitiendo personalizar faacutecilmente
las interfaces a crear (View Controller) y en la ayuda para la correccioacuten de
errores de coacutedigo
iOS cuenta con una amplia y diversa libreriacutea para la programacioacuten de sus
aplicaciones y el aprovechamiento de sus grandes ventajas multimedia
Se avecina una nueva tendencia en cuanto al desarrollo de software orientado
a los dispositivos moacuteviles por lo que ha sido de gran importancia tener un
conocimiento maacutes amplio de esta plataforma
~ 181 ~
Realizar una investigacioacuten del estado del arte de una tecnologiacutea de tendencia
permite conocer la realidad en cuanto a los procesos de investigacioacuten y
desarrollo que se adelantan con esa tecnologiacutea aportando una visioacuten del
presente y futuro posibilitando el proceso de implementacioacuten con pertinencia de
la misma
Esta investigacioacuten es de gran importancia dado que sirve para que estudiantes de diversas universidades que sean lectores interesados en conocer el sistema operativo del iPhon el iPod touch y el iPad iOS se puedan documentar y asiacute obtener una ayuda para comprender y saber reconocer las caracteriacutesticas desplegadas en este sistema operativo
Dado que el tema considerado en liacuteneas anteriores es correspondiente al aacuterea de ingenieriacutea en sistemas se hace interesante y por lo tanto pertinente contemplar la estructura del SO iOS de Apple y de igual manera del hardware que utiliza el mismo dado que en la modernidad los dispositivos moacuteviles estaacuten en auge y a su vez tienen muacuteltiples caracteriacutesticas que deben ser exploradas para asiacute propiciar la incursioacuten en la programacioacuten de este sistema operativo el cual auacuten muchos no se han animado a probar
Es necesario documentarse sobre esta tesis puesto que es una cuestioacuten que apenas estaacute en indagacioacuten al interior de las universidades generando una pertinencia de que los joacutevenes universitarios se graduacuteen con una nocioacuten del hardware y software que componen los sistemas operativos moacuteviles a la hora de salir a laboral y en este caso de iOS por ser pionero en el mundo
~ 182 ~
RECOMENDACIONES 8
Para publicar una aplicacioacuten en la App Store la tienda de aplicaciones
Apple primeramente se debe inscribir en el iOS Developer Program a
traveacutes del sitio de Apple y una vez ya inscrito en el programa se puede
codificar y probar las aplicaciones en la plataforma de Apple y
publicarlas a traveacutes de la App Store donde se debes pagar una cuota de
noventa y nueve doacutelares al antildeo
Para programar aplicaciones iOS se hace muy necesario trabajar con un
equipo que tenga SO Mac OS X y maacutes auacuten para poder subir las
aplicaciones a la App Store aunque no indispensable por que
actualmente se pude trabajar con Adobe AIR y Adobe Flex sin ser
necesario ni tener Xcode ni tener un Mac aunque el Xcode si se debe
instalar en un sistema operativo OS X y la uacutenica solucioacuten es instalando
una maacutequina virtual en un pc con Windows y se corre un Mac OS X en
ella pero con la deficiencia de tener un sistema que se pausa
constantemente
Elaborar el estado del arte de una tecnologiacutea de punta presenta
dificultades debido a que la informacioacuten sobre ella generalmente se
encuentra en poder de los fabricantes y en la mayoriacutea de los casos en
una lengua extranjera en este sentido si se quiere acercar a los uacuteltimos
avances de esta tecnologiacutea es necesario mejorar las competencias con
una segunda lengua preferiblemente el ingleacutes De igual forma se hace
necesario realizar un proceso juicioso de revisioacuten de fuentes para lograr
encontrar la informacioacuten fidedigna requerida
Se les recomienda a los directivos de la universidad catoacutelica de Pereira
programar tanto para el jurado lector como para los estudiantes las
fechas correspondientes a 1 revisioacuten y entrega del documento
parcialmente terminado 2 fecha liacutemite de devolucioacuten por parte de los
lectores con las correcciones a realizar 3 fecha liacutemite de entrega del
documento corregido e informar si es o no aprobado para sustentacioacuten
y finalmente 4 fecha y hora programada para la sustentacioacuten final del
proyecto hacieacutendolas puacuteblicas para que de esta manera se tenga un
orden y una preparacioacuten maacutes oportuna por parte de los estudiantes
Realizar un taller donde se especifique la forma de entrega del
documento por parte de los estudiantes a la universidad ya sea que
~ 183 ~
deba hacerse en formato pdf digital o impreso y que otros requisitos
existen al respecto
~ 184 ~
BIBLIOGRAFIacuteA 9
Wordpress BlackBerry (2013) INSIDEBlackBerry Recuperado el 2013 de
httpblogsblackberrycom
Amartino M (7 de Noviembre de 2006) celularis Obtenido de
httpwwwcelulariscomtecnologiacambios-en-symbian-ahora-solo-el-
os
Android Blog (2012) httpwwwandroidbloges Recuperado el 08 de 2012
androidpi (2012) httpwwwandroidpites Recuperado el 2012
Apple (2012) httpwwwapplecom Recuperado el 03 de 2012 de
httpwwwapplecom
Arias Vasquez D (2012) httpsabiaticudces Recuperado el Julio de 2013
Axtro (09 de Julio de 2013) httpwwwaxtroes Recuperado el 08 de 2013
de httpwwwaxtroes201379109030como-programar-aplicaciones-
juegos-para-ios-y-android---parte-1--la-herramienta-adecuada-para-
cada-trabajo-locale=es
Ba Alonso A z amp Ferreira I (2008) Dispositivos Moviles Oviedo
Baijiang Yang P Z (2007) Professional Microsoft Smartphone Programming
Indiana Wiley Publishing inc
Ballestin A (24 de 01 de 2012) httpesengadgetcom Recuperado el 08 de
03 de 2012 de httpesengadgetcom
httpesengadgetcom20120124apple-anuncia-sus-resultados-
trimestrales-record-de-ingresos-co
Basterretche J F (2007) Dispositivos Moacuteviles Argentina
Blackberry (10 de 06 de 2012) blackberry Recuperado el 08 de 2012 de
httpcoblackberrycom
Blandoacuten Cano J E amp Jaramillo Saacutenchez D A (2010) repositorioutpeduco
Recuperado el 2012 de httphdlhandlenet110592353
Caballero J M (2003) Sistemas Operativos en Entornos Monousuario y
Multiusuario Espantildea Vision Net
Clarke A amp Mougin P (2010) BecomeAnXcoder-Espantildeol CC Atribucioacuten
~ 185 ~
Corona Labs Inc A mobile development software company (2013) coronalabs
Recuperado el 2012 de httpwwwcoronalabscom
Crawfis R (2011) wwwdummiescom Recuperado el 2013 de
httpandroide-bookshelfdeproductsreading-epubproduct-
id592058titleAndroid2B32BSDK2BProgramming2BFor2BDu
mmieshtml
Cruz Alonso R Gopar Mecinas L Loacutepez Loacutepez I amp Moya Garciacutea E (3 de
mayo de 2008) Investigacioacuten sobre ANDROID UNIVERSIDAD
TECNOLOacuteGICA DE LA MIXTECA
Desbloquear Celular (2011) celulardesbloquear Recuperado el 2012 de
httpwwwcelulardesbloquearcomDesbloqueo20de20telefono20
Blackberry
ETTS Elektronik TicTahSistemleri San ve Tic Ltd (2012)
İndirimKartimdacom Recuperado el 2012 de
httpswwwindirimkartimdacomapple-iphone-4s-8-gb-siyah-p
Gallardo R (24 de Agosto de 2011) tuexpertomovilcom Recuperado el 2013
de httpwwwtuexpertomovilcom20110824windows-phone-7-tango-
no-sera-para-todos-los-mercados
Goldstein N (2012) iPhone Application Development for Dummies (4ta edicion
ed) Jhon Wiley amp Sons Inc
GOMEZ S A amp RAMIREZ C D (2011) repositoryeaneduco Recuperado
el 2012 de httphdlhandlenet10882761
Gran Viacutea de les Corts Catalanes (30 de 07 de 2013) llibreriah Obtenido de
httpllibreriahacomblogs
Hipertextual SL (2012) appleweblo Recuperado el 10 de 2012 de
httpappleweblogcom
iFixit (2012) iFixit Recuperado el 2012 de iFixit httpwwwifixitcomGuide
Inc Apple (18 de 09 de 2012) iOS Developer Library Recuperado el 12 de 10
de 2012 de iOS Developer Library
httpsdeveloperapplecomlibraryiosdocumentation
Juan A Perez Campanero J M (2002) Conceptos de Sistemas Operativos
Espantildea Universidad Potificia Comillas
~ 186 ~
Juanjo (30 de Julio de 2012) tutocisc Recuperado el 2013 de
httptutociscbligoocomconocimientos-basicos-arquitectura-de-
windows-phone-7
Julian J Y (2011) Windows Phoe 75 Desarrollando Aplcaciones con
Silverlight Espantildea Krasis Press
knees (5 de Abril de 2013) smarphonewordpresscom Obtenido de
httpsmarphonewordpresscomcategoryuncategorized
Lopez Hernandez F (2012) Objective-C curso practico para programadores
Mac OS X iPhone y iPad Madrid RC Libros
Loacutepez F (2009) En El lenguaje Objective-C para programadores C++ y Java
(paacuteg 271) Macprogramadoresorg
Mango Life Media Inc (2012) iphonelif Recuperado el 2012 de
httpwwwiphonelifecomissuesoct08DevelopingSoftware
Manuales Apple Inc (2012) supportapplecom Recuperado el 1012 de
httpsupportapplecomes_ESmanuals
Mario (sf) youtube Recuperado el 2013 de Manzana Magica
httpswwwyoutubecomwatchv=e6BIyDJp6NU
Mikel Elorz Beraacutestegui D M (01 de Julio de 2011) httpacademica-
eunavarraes Recuperado el 2012 de httphdlhandlenet24544190
Mobile Nations (2013) Windows Phone Central Recuperado el 2013 de
httpwwwwpcentralcom
Mulero Marcos D (13 de Marzo de 2012) wwwrecercatnet Recuperado el
2012 de
httpupcommonsupcedupfcbitstream2099114097177592pdf
httpwwwrecercatnethandle2072182243
natxoraga22 (29 de 01 de 2012) Programacioacuten iOS Recuperado el 2012 de
httpwwwprogramacioniosesxcodecapitulo-0-instalacion-de-xcode
Obando C (25 de 11 de 2010) symbianparamoviles Recuperado el 2012 de
httpsymbianparamovilesblogspotcom
Pierina Loarte Bornas V (15 de 09 de 2007) Evolucioacuten de los teleacutefonos
celulares y de su precio Huaacutenuco Lima Peru
Ramirez E Q (2011) Programacion de Dispositivos Moviles
~ 187 ~
Rodriguez F (2012) wwwcocoaosxcom Recuperado el 08 de 2013 de
httpwwwcocoaosxcom20120127lenguaje-programacion-iphone
Scasso L amp Techera M (2008) wwwfingeduuy Recuperado el 2012 de
httpwwwfingeduuy~asabigueprgradoscasso_techeraIP4JVMpdf
SILVIA DE LA FUENTE TRINCADO J F (Marzo de 2011)
httpwwwuclmes Recuperado el 03 de 2012 de
httpesscribdcomdoc89679422Sistema-Operativos-en-Moviles
Traeg P (2013) smashingmagazine Recuperado el 2013 de
httpmobilesmashingmagazinecom20131017best-of-both-worlds-
mixing-html5-native-code
UIT (2011) ituin Recuperado el 2012 de
httpwwwituintnetitunewsissues20110312-esaspx
UNAD (sf) httpdatatecaunadeduco Recuperado el 2012 de
httpdatatecaunadeducocontenidos233016EXE_SAMleccin_13_de
sarrollo_de_aplicacioneshtml
Vaacutesquez L M (noviembre de 2011) ANAacuteLISIS DE PLATAFORMAS
POPULARES DE DESARROLLO DE APLICACIONES PARA
DISPOSITIVOS MOacuteVILES noviembre de Guatemala
windowsphon (2012) httpwwwwindowsphonecomes-co Recuperado el
2012
- DECLARACION DE DERECHOS DE AUTOR
- AGRADECIMIENTOS
- RESUMEN
- TABLA DE CONTENIDO
- TABLA DE ILUSTRACIONES
- LISTA DE TABLAS
- 1 INTRODUCCIOacuteN
- 2 FORMULACIOacuteN DEL PROYECTO
-
- 21 PLANTEAMIENTO DEL PROBLEMA
- 22 OBJETIVO GENERAL
- 23 OBJETIVOS ESPECIacuteFICOS
- 24 JUSTIFICACIOacuteN
- 25 VIABILIDAD
- 26 CONSECUENCIAS
-
- 3 MARCO CONTEXTUAL
-
- 31 DESCRIPCION DEL CONTEXTO
-
- 4 MARCO TEORICO
-
- 41 ANTECEDENTES
- 42 iquestQUE ES UN DIPOSITIVO MOVIL
- 43 iquestQUE ES UN CELULAR
- 44 iquestQUE ES UN SMARTPHONE
- 45 iquestQUE ES UN SISTEMA OPERATIVO
- 46 SISTEMAS OPERATIVOS MOVILES
- 47 TIPOS DE SISTEMAS OPERATIVOS EN DISPOSITIVOS MOVILES
-
- 471 Android
- 472 Symbian OS
- 473 BlackBerry
- 474 Windows Phone
- 475 iOS
-
- 48 LAS TELECOMUN ICACIONES Y LOS DIPOSITOVOS MOVILES
- 49 SOFTWARE EN DISPOSITIVOS MOVILES
-
- 5 MODELO TEORICO
-
- 51 METODOLOGIA
-
- 6 CONCREACION DEL MODELO
-
- 61 HARDWARE
-
- 611 IPod
- 612 IPhone
- 613 iPad
-
- 62 ARQUITECTURA DE IOS
-
- 621 Capa Cocoa touch
- 622 Capa media
- 623 Core Services
- 624 Core OS
-
- 63 DEBILIDADES Y FORTALEZAS DE IOS FRENTE A SUS COMPETIDORES
- 64 HERRAMIENTAS Y ENTORNOS DE DESARROLLO PARA IMPLEMENTAR APLICACIONES EN IOS
-
- 641 Otros entornos de desarrollo para iOS
- 642 Herramientas de desarrollo iOS usadas por Apple
-
- 65 DESCRIPCION DEL LENGUAJE DE PROGRAMACION DE IOS ldquoOBJECTIVE-Crdquo
- 66 CONTRUCCION DE LA APLICACIOacuteN PROTOTIPO (DICCIONARIO DE ACRONIMOS)
-
- 7 CONCLUSIONES
- 8 RECOMENDACIONES
- 9 BIBLIOGRAFIacuteA
-