WWDC 2020, novedades en el mundo del desarrollo Apple. (Parte 2)

0
194
WWDC 2020

Índice de contenidos

  • 1. Introducción
  • 2. SFSymbols
  • 3. App clips
  • 4. Widgets
  • 5. Otras novedades destacadas
  • 6. Conclusiones

1. Introducción

Seguimos con la segunda parte de las principales novedades vistas en la WWDC. En la primera parte vimos como Apple está potenciando la convergencia de todos los sistemas a nivel de desarrollo, gracias a Catalyst y SwiftUI cada vez tenemos más fácil escribir una sola base de código y desplegar para múltiples plataformas (de Apple, claro). Veamos ahora algunas otras cosas interesantes que nos ha presentado Apple.

 

2. SFSymbols 2.0

En la pasada WWDC 2019 Apple nos regalo SFSymbols, una aplicación gratuita para visualizar e integrar más de 1500 iconos en nuestras apps de forma gratuita y disponibles para todas las plataformas de Apple. La forma de usar un símbolo es tan sencillo como esto:

let image = UIImage(systemName: "trash")

Con la versión 2.0 vamos a disponer de las siguientes mejoras:

  • Mas de 750 símbolos nuevos.
  • Alineación mejorada gracias a los márgenes negativos.
  • Símbolos multicolor.
  • Localización, especialmente útil en idiomas de escritura de derecha a izquierda.

 

3. App Clips

Con App clips podemos crear un versión «reducida» de nuestra app que se ejecutará con un disparador como un código QR o una etiqueta NFC. Están pensados para crear una experiencia limitada y contenida de lo que la app principal puede ofrecer, como vender algún producto o mostrar algún tipo de información. Es una forma perfecta de captación de nuevos usuarios ya que desde el propio clip puedes acceder directamente al App Store para descargar la app completa.

Cuando los clips son descargados se mantienen un tiempo en el dispositivo y son borrados al paso de unas horas de inactividad. Podemos crear tantos clips como queramos, basta con añadir un nuevo target en tu proyecto como hacemos hoy en día con las extensiones.

Limitaciones de los Clips

Los clips no pueden superar los 10 megas, su código ha de ser 100% nativo (Nada de usar tecnologías híbridas) y tienen  que ser desarrollados mediante SwiftUI ya que el propio framework ha sido creado con esa tecnología.

Los clips no pueden acceder a datos de salud y si el usuario descarga la aplicación asociada al clip, lo permisos de éste son migrados a la aplicación principal (como el permiso de acceso a la cámara o de localización).

 

4. Widgets

Con WidgetKit vamos a poder crear los nuevos widgets, que son una versión renovada de los que ya teníamos antes. No obstante las cosas han cambiado, ya que estos nuevos widgets están pensados para posicionarlos dentro del propio screenboard y su desarrollo y funcionalidades recuerdan mas a las complicaciones del Apple Watch que los antiguos widgets.

WidgetKit es el framework que vamos a usar para crearlos, está creado enteramente en SwiftUI por lo que los widget hemos de desarrollarlos mediante esta tecnología. Disponemos de varios tamaños con lo que crear el widget y podremos mostrar desde información estática relativa a nuestra app hasta el resultado de un Intent de Siri.

El propio Widget puede ser configurable para que el usuario pueda elegir qué contenido mostrar, por ejemplo el widget del tiempo puedes configurarlo para mostrar la localización concreta.

Al tener la posibilidad de ponerlos en el home screen, Apple ha proporcionado una API para que no se estén ejecutando todo el tiempo, en lugar de eso, ante la previsión de que el contenido que vayamos a mostrar cambie a lo largo del tiempo debemos configurar un proveedor de eventos con previsión de futuro, por ejemplo, el widget del calendario no consulta continuamente su store, sino que tiene una linea de tiempo en la que el propio Widget sabe que mostrar en función al momento en que se visualiza, como decía antes, es lo mismo que las complicaciones del Apple Watch. Si la naturaleza de nuestro widget no permite configurar una programación de eventos, siempre podemos hacer un único evento en nuestra linea de tiempo de forma que el sistema no pueda predecir qué se ha de mostrar, forzando una actualización del contenido.

Si configuramos una linea de tiempo en nuestro widget tenemos la posibilidad de establecer prioridades en función al momento del día, esto lo utilizará el sistema para saber qué widget es más relevante.

5. Otras novedades destacadas

Visto lo más relevante, vamos a pasar a ver las novedades que pasaron más desapercibidas pero que a los desarrolladores nos interesan especialmente:

  • Nueva API para registro de trazas con el struct Logger.
  • La app Buscar ahora tiene soporte para productos de terceros mediante el nuevo programa de Apple «Find my network«.
  • Los CollectionViews reciben una actualización en esta versión para acabar de matar a los UITableView que  ahora podemos configurar un layout de tipo lista. Además, disponemos de funciones de registro de celdas con closures para hacer la configuración de cada celda más limpia.
  • El nuevo framework NearbyInteracion hace uso del chip U1 para localizar e interactuar con dispositivos cercanos, y funciona con el simulador de Xcode!
  • En HealthKit podemos hacer consultas sobre la funcionalidad electrocardiograma mediante HKElectrocardiogramQuery.
  • En la aplicación atajos ahora puedes marcar un atajo (INIntent) como deprecado.
  • WatchOS 7 elimina el forceTouch.
  • Las complicaciones de WatchOS 7 tienen más posibilidades de personalización.
  • En MacOS tenemos una nueva guía de estilo.

En relación a la privacidad tenemos las siguientes novedades:

  • Poder compartir una ubicación aproximada en lugar de una ubicación precisa.
  • En el selector de imágenes puedes indicar permiso a ciertas imágenes en lugar de a toda la librería.
  • Nuevo indicador en la pantalla que indica si están la cámara o el micrófono activados.
  • Los usuarios ahora pueden aceptar o rechazar el seguimiento de sitios web y apps.
  • Información en la app store acerca de los datos que pide y comparte tu app.
  • En safari puedes ver y deshabilitar el rastreador de anuncios en sitios web.
  • En safari de MacOS hay un control de permisos para las extensiones que instalamos.

6. Conclusiones

Ha sido una semana intensa, a pesar de las dificultades de la pandemia, Apple ha podido liberar gran cantidad de novedades y material para tenernos todo el año entretenidos, ahora solo queda ir probando las nuevas características por nosotros mismos. ¡A por ello!

Puedes ver la primera parte aquí:

WWDC 2020, novedades en el mundo del desarrollo Apple. (1ª parte)

DEJA UNA RESPUESTA

Por favor ingrese su comentario!

He leído y acepto la política de privacidad

Por favor ingrese su nombre aquí

Información básica acerca de la protección de datos

  • Responsable:
  • Finalidad:
  • Legitimación:
  • Destinatarios:
  • Derechos:
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad