iOS 12 nueva actualización: instalación y dispositivos compatibles

¿Cuándo está disponible iOS 12?

¡Ya está aquí la primera versión de iOS 12! El pasado miércoles 12, entre otras presentaciones, se enseñó a todos los públicos el mejor sistema operativo para iPhone, iPad y iPod Touch, jamás creado por Apple. Desde luego, que no dirás que no han sabido escoger bien el día del mes, jaja.

En este acto se anunció que la fecha de lanzamiento es el lunes 17 de septiembre de 2018. Aquí todos tendremos disponible la nueva actualización de iOS. ¡Por fin se acabaron las versiones beta!

 

Hacer una copia de seguridad para más tranquilidad

Para evitar un mal rato o disgustos siempre haz una copia de seguridad de tu iPhone o iPad antes de la instalación.

Tienes dos opciones. Una usando iTunes conectando tu dispositivo a tu Mac u otra directamente desde el dispositivo para hacerla en iCloud.

En este vídeo puedes ver cómo se puede hacer la copia usando iTunes. En tu Mac puedes elegir entre guardarlo en iCloud o en el disco duro.

La mejor Copia de Seguridad en iTunes con Mac

 

O aquí tienes la segunda forma de hacerlo, por ejemplo, en un iPhone utilizando iCloud y habilitando esta opción:

La mejor Copia de Seguridad en iCloud para iPhone iPad

 

¿Cómo instalar iOS 12?

El proceso es sencillo. Ve a Ajustes, luego a General, a continuación, pulsa en Actualización de software y finalmente te aparecerá para instalarlo. En el siguiente vídeo puedes ver el proceso súper rápido.

Tutorial completo para instalar iOS 12 paso a paso desde cero

 

¡Cuidado! Cuando vayas a actualizarlo, recuerda estas dos cosas muy importantes:

◎ Ten a mano el cargador por si te dice que no tienes suficiente nivel de batería.
◎ Si esperas una llamada o mensaje urgente, puedes descargar la actualización, pero no la instales, ya que durante unos minutos estará apagado el dispositivo. Serán pocos o muchos minutos, según el modelo.

¿Merece la pena invertir tiempo en instalarlo?

Un ¡Sí! rotundo. Sobre todo, vas a tener una mejor usabilidad, y una mayor seguridad en tu dispositivo y aplicaciones. Por ejemplo, entre otras novedades, cuando tu app favorita accede a un servidor que está en internet ahora con iOS 12, gracias a un nuevo framework para networking, la capa de seguridad se ha incrementado de forma significativa en comparación con iOS 11. Por esa razón, te animo a que actualices ahora, y sino en cuanto llegues a casa.

iPhone, iPad y iPod touch compatibles

Este es el listado de dispositivos que soportan la nueva versión de iOS 12:

iPhone
• iPhone X
• iPhone 8
• iPhone 8 Plus
• iPhone 7
• iPhone 7 Plus
• iPhone 6s
• iPhone 6s Plus
• iPhone 6
• iPhone 6 Plus
• iPhone SE
• iPhone 5s

iPad
• iPad Pro de 12,9 pulgadas (2.ª generación)
• iPad Pro de 12,9 pulgadas (1.ª generación)
• iPad Pro (10,5 pulgadas)
• iPad Pro (9,7 pulgadas)
• iPad Air 2
• iPad Air
• iPad (6.ª generación)
• iPad (5.ª generación)
• iPad mini 4
• iPad mini 3
• iPad mini 2

iPod Touch
• iPod touch (6.ª generación)

¿Cuáles son los porcentajes de actualización?

Las estadísticas nos muestran que el año pasado el 85% actualizó sus móviles y tabletas a iOS 11. Además, cada año son más las personas que disfrutan de las increíbles mejoras en el uso de sus dispositivos actualizados. Como resultado, a fecha 3 de septiembre de 2018 mira las cifras: 85% con iOS 11, 10% con iOS 10 y el 5% restante con versiones anteriores.

 

¿Te gustaría ser un desarrollador o desarrolladora de iOS 12?

¿Quieres aprender más?

 

TITULO DE EXPERTO UNIVERSITARIO. Innovación usando la tecnología iOS con programación Swift: Proyectos Europeos.

 

TITULO DE EXPERTO PROFESIONAL. Desarrollo Profesional de Aplicaciones iOS con Swift para Dispositivos Móviles.

 

PROGRAMACIÓN SWIFT Y SUS NUEVOS PARADIGMAS. Certificado de Enseñanza Abierta.

 

DESARROLLADOR DE ELEMENTOS iOS. Certificado de Enseñanza Abierta.

 

CREACIÓN PROFESIONAL DE APLICACIONES DESDE LA IDEA HASTA EL APP STORE. Certificado de Enseñanza Abierta.

Autor: Pedro Hernández

Bibliografía:
◦ Soporte Apple: iOS 12 es compatible con estos dispositivos
◦ Support Apple Developer: Devices are using iOS 11. As measured by the App Store.
◦ Soporte Apple: Cómo hacer una copia de seguridad del iPhone, iPad y iPod touch

Los Gestos iOS en iPhone e iPad (Parte 2)

En Los Gestos iOS en iPhone e iPad (Parte 1) se profundizó en los gestos disponibles en iOS, desde un punto de vista como usuario y se creó el contexto para programar estos gestos. Así que, una vez escrita la base para un developer, o como en castellano nos gusta llamar un programador o programadora, aquí empieza la segunda parte que se centrará en el código a escribir. Comprenderás qué código Swift necesitas para habilitar en una bola naranja los gestos de tocar y arrastrar. Para ello, se utilizará Xcode 10 con Swift 4.2 en un Playground, que es la forma más eficaz para aprender el lenguaje de programación Swift.

 

El objetivo por alcanzar es crear una Live View con una bola, como lo que puedes ver en este vídeo:

 

Como has visto, si solo pulsas la bola naranja se vuelve de color verde y aumenta de tamaño, mientras que si la arrastras, aumenta el diámetro de la bola y al soltarla vuelve a tu tamaño original.

 

Paso a paso

 

En este artículo te explicaré línea a línea el código que necesitarás escribir en el Playground.

 

Antes de empezar a escribir, siempre debes tener claro que es lo que vas a hacer y con qué objetivo. En el vídeo anterior has visto la finalidad, y con el siguiente vídeo deseo que visualices la estructura que tendrá el Playground para que así sepas qué clases necesitarás para conseguirlo. Dentro del Playground Gestos habrá dos clases en la carpeta Sources: FondoView y BolaGestosView. Estas dos clases serán utilizadas por el Playground. FondoView es una clase auxiliar que he creado para la visualización de la Live View.

 

En el siguiente enlace puedes descargarte de GitHub el Playground para poder iniciar el ejemplo: gestos-playground-blog-inicio

¡Empieza la acción!

En primer lugar, crea el playground Gestos en Xcode 10, importando los frameworks UIKit y PlaygroundSupport. A continuación, escribe el código para crear un rectángulo blanco para mostrarlo en la Live View del playground, como si fuese el fondo de una pantalla del iPhone.

 

En la carpeta Sources crea el archivo Swift llamado BolaGestosView. Importa el framework UIKit y escribe la clase BolaGestosView que heredará de la clase UIView. Tendrá un nivel de acceso open para que el Playground pueda usarla.

 

En esta clase escribe el código para crear las funciones para escalar y mover. La función escalar se activará cuando pulses sobre la bola o inicies el arrastre. La función mover se iniciará al arrastrar la bola.

 

Escalar recibirá un número para saber el factor de escala. Recuerda que 1.0 deja a la bola en su mismo tamaño, mientras que un número mayor a 1 aumentará el tamaño de la bola. La animación tiene una duración de 0.1 segundos, con un movimiento en la animación de inicio lento y finalización lenta, tal y como especifica curveEaseInOut. En la animación se le asignará a la bola una transformación de escala.

 

Mover recibe el punto de translación en el que se está arrastrando la bola. Ese punto se lo asigna al centro de la bola. De esta forma, hace que se mueva la bola acorde al movimiento de arrastre. Una vez terminado dicho movimiento se reinicia a cero la translación. Esto evitará un valor incremental en los movimientos de arrastre.

 

Ahora llega el momento de crear las funciones que se activarán cuando se inicien los gestos de pulsar y el de arrastrar.

 

Lo primero es añadirle la palabra clave @objc, debido a que será llamada desde una variable que utiliza un selector, que internamente todavía utiliza elementos creados con el lenguaje de programación Objective-C.

 

La función manejarPulsar recibirá el gesto de pulsar para que así se pueda imprimir el punto exacto que se ha pulsado. Como puedes observar, están comentadas las dos primeras líneas para que decidas si quieres que se imprima por consola el punto pulsado. Entonces, las puedes descomentar eliminando las dos barras. Dentro de esta función hay otra animación con una duración de 0.1 segundos y dicha animación será más lenta al terminar. Esta animación cambiará el color de la bola a verde y aumentará su escala al doble de su tamaño. Una vez terminada esta primera acción, empezará la segunda. Le he añadido un pequeño retraso de otro 0.1 para que permanezca el color verde un poco más, y luego volverá la bola a su color naranja y a su tamaño original mediante la escala con valor 1.

 

La función manejarArrastrar recibe el gesto de arrastrar. De esta forma se puede obtener los diferentes estados del gesto mediante los casos del switch. El primero se produce cuando se inicia el arrastre, aumentando un poco la bola. A continuación, cuando el estado cambia, inicia el movimiento de la bola. Finalmente, cuando termina, se le asigna la escala a 1 para que vuelva la bola a su tamaño inicial.

 

En la parte superior de esta clase se crearán las propiedades que le asignan la función a ejecutar cuando se activa el gesto de pulsar o Tap Gesture, así como el gesto de arrastrar o Pan Gesture. Puedes observar como cada variable, usando los selectores, llama a las funciones que has escrito anteriormente. Estas variables vienen precedidas por lazy, debido a que no se inicializarán hasta que no sean llamadas por el código en tiempo de ejecución.

 

El siguiente diagrama muestra la estructura de estas variables:

 

La variable gesto pulsar mediante el selector activará las acciones que se producirán en la función manejarPulsar(sender:), que a su vez iniciará la función de escalar la bola.

 

Por otra parte, la variable gesto arrastrar iniciará la acción del selector llamando la función manejarArrastrar(sender:). Y como recordarás, los casos del switch llamarán las funciones escalar o mover, según corresponda.

 

Ha llegado la hora de escribir los inicializadores de la clase.

 

El primer init será público para poder usarlo en el Playground. Dentro de él se creará un array constante con las variables de los gestos que creaste antes. A continuación, se realizarán iteraciones sobre el array gestos para añadirlos a la vista, o sea, a la bola.

 

Luego viene un init de conveniencia para poder crear la bola con las dimensiones de un rectángulo. La primera línea establecerá el tamaño recibido para asignárselo a la vista de la bola. En la segunda línea crea un radio del rectángulo, o en este playground un cuadrado. El radio será la mitad del ancho del cuadrado, de esta forma se convertirá en un círculo. La tercera línea activa el radio en la vista.

 

Finalmente se declarará el init requerido para que así se cumpla con los requisitos de los inicializadores de esta clase.

 

A continuación, escribe el código en el Playground para crear la instancia de la bola. Crearás una constante conforme a la clase BolaGestosView.

 

Al ir entre llaves, la inicialización de la bola puede personalizar la creación de la vista. En la primera línea estableces que será un cuadrado de 100 puntos, en la segunda línea defines que el punto sobre el que se aplicarán las transformaciones está en el centro geométrico de la bola. Luego le asignas el color naranja. Finalmente, mediante el return asignas la vista creada a la bola.

 

Seguidamente en la inicialización de la bola, para simplificar, se mostrará el centro de la bola en el centro de la vista blanca del fondo. Por esa razón, la última línea añade la bola al fondo para que sea visible en la Live View.

 

En el siguiente enlace puedes descargarte el Playground terminado desde GitHub, por si deseas compararlo con el tuyo: gestos-playground-blog-terminado

Tutorial completo en: https://theemotionapps.com/tutorial-gesture-recognizer-en-ios-swift-4-2/

 

¿Quieres aprender más?

 

TITULO DE EXPERTO UNIVERSITARIO. Innovación usando la tecnología iOS con programación Swift: Proyectos Europeos.

 

TITULO DE EXPERTO PROFESIONAL. Desarrollo Profesional de Aplicaciones iOS con Swift para Dispositivos Móviles.

 

PROGRAMACIÓN SWIFT Y SUS NUEVOS PARADIGMAS. Certificado de Enseñanza Abierta.

 

DESARROLLADOR DE ELEMENTOS iOS. Certificado de Enseñanza Abierta.

 

CREACIÓN PROFESIONAL DE APLICACIONES DESDE LA IDEA HASTA EL APP STORE. Certificado de Enseñanza Abierta.

¿DESDE CUÁNDO HAY METADATOS?

El término metadato nace con el advenimiento de la tecnología informática. Algunos atribuyen el primer uso de este término a Jack Myers (finales de los 60) para describir conjuntos de datos (Senso & de la Rosa Piñero, 2003: 97). Sin embargo, otros autores atribuyen este primer uso a Stuart McIntosh y David Griffel en 1967 (Steiner, 2017: 52), y otros (Solntseff & Yezerski, 1974) defienden que el término fue acuñado por Bagley en 1968 su libro Extension of Programming Language Concepts (Bagley et al., 1968). Como vemos, diferentes autores, pero fechas muy similares. En cualquier caso, lo que queda claro es que el término surge ligado a los sistemas informáticos y a los nuevos retos en la identificación de la información.

escriba-medieval

Sin embargo, lo que hoy consideramos metadatos es extensible a cualquier catálogo bibliotecario, por lo que podríamos remontarnos a varios siglos antes de Cristo. La mayoría de textos señalan el catálogo de la Gran Biblioteca de Alejandría llamado Pinakes, del siglo III a.C., como el primer ejemplo de uso de metadatos. El sistema de la biblioteca consistía, principalmente, en una etiqueta colgando al final de cada rollo. Esta etiqueta contenía información sobre el autor, título y tema de cada obra, para que los materiales puedan devolverse fácilmente a la zona de la cual habían sido sacados, pero también para que los usuarios no tuvieran que desenrollar cada rollo para ver qué contenía. El nombre original del catálogo era Tablas de personas eminentes en cada una de las ramas del aprendizaje, junto con una lista de sus escritos. El catálogo era un conjunto de índices utilizados en la Biblioteca de Alejandría en Egipto, de la que parece que no sobrevivió ninguna parte del catálogo, pero podemos saber de él gracias a citas que nos dan una aproximación a la organización del conjunto de las tablas (Casson, 2002). Por su parte Voutssás Márquez (2006:154) señala que en 1975 se descubrieron cerca de Aleppo, en Siria, los restos de la biblioteca de Ebla, dentro del palacio del rey Aghrish, y dice:

Transmissions-bandeau

Ebla, la Ciudad de las Piedras Blancas, llegó a tener 260,000 habitantes, floreció en la Edad de Bronce temprana y fue destruida alrededor del año 2,300 a.C. Su biblioteca contenía más de 17,000 documentos sobre tabletas de arcilla que fueron datados a la mitad del tercer milenio a.C., por lo que muchos la consideran la biblioteca más antigua del mundo.64 Algunas de las tablillas contenían un “listado” de las obras que se encontraban en la colección y por tanto se consideran, hasta ahora, como el metadato más antiguo que haya sido descubierto y datado; las tabletas habían sido originalmente ordenadas en sus anaqueles por temas; todo ello veinte siglos antes de la Biblioteca de Alejandría. (Voutssás Márquez, 2006: 154-155).

Durante la Edad Media (catálogos medievales de autores cristianos) y, sobre todo en el Renacimiento, podemos encontrar muchos ejemplos de metadatos, como la Bibliotheca Universalis de Konrad de 1545, que se considera la primera lista universal y verdaderamente exhaustiva de todos los libros del primer siglo de la imprenta. Era una bibliografía alfabética que enumeraba todos los libros conocidos impresos en latín, griego o hebreo (Eisenstein, 1980: 97).

REFERENCIAS BIBLIOGRÁFICAS

Bagley, P. R., United States, Air Force, Office of Scientific Research, United States, Air Force, & Office of Aerospace Research. (1968). Extension of programming language concepts. Philadelphia: University City Science Center.

Casson, L. (2002). Libraries in the Ancient World. Yale University Press.

Eisenstein, E. L. (1980). The Printing Press as an Agent of Change. Cambridge University Press.

Senso, J. A., & de la Rosa Piñero, A. (2003). El concepto de metadato. Algo más que descripción de recursos electrónicos. Ciência da Informação32(2), 95-106.

Solntseff, N., & Yezerski, A. (1974). A survey of extensible programming languages. Annual Review in Automatic Programming7, 267-307. https://doi.org/10.1016/0066-4138(74)90001-9

Steiner, T. (2017). Metadaten und OER: Geschichte einer Beziehung. Synergie. Fachmagazin für Digitalisierung in der Lehre4, 51–55.

Voutssás Márquez, J. (2006). Bibliotecas y publicaciones digitales. México: UNAM.

Autor:

Clara I. Martínez Cantón

Nuevo programa de radio de presentación de LINHD

Hace ya un par de semanas, el equipo de LINHD grabó un programa…

HD y latín medieval

¡El espíritu de las Humanidades Digitales llegó también al…

Presentacion de proyectos

Hola  a tod@s: Os animamos a que os paséis mañana, a partir…

IV Semana Complutense de las Letras

Del 22 al 25 de abril se ha celebrado la IV Semana Complutense…

Mucho más que un gestor bibliográfico

En el clásico trabajo de Vannevar Bush As We May Think el visionario…

Al fin, un centro HD

Al fin tendremos a nuestra disposición un centro en Humanidades…
Hypotheses

Hypotheses: blogging académico en un plataforma especializada

Hypotheses.org es una plataforma de carácter internacional de…

Homeward Bound

El próximo miércoles, 30 de abril, se celebrará un THATCamp…
,

HASTAC Perú

/
Del 24 al 27 de abril se celebrará en Lima, Perú el HASTAC…
,

Dayof DH 2014

/
El día 8 de abril de 2014 se celebró el Día de las Humanidades…

Asociación Argentina de Humanidades Digitales (AAHD)

/
La Asociación Argentina de Humanidades Digitales (AAHD) fue…
,

THATCamp LINHD UNED 2014

/
  Celebramos nuestro primer THATCamp el día miércoles…