Introducción a macOS Sierra

Con el nuevo macOS Sierra, el desarrollador puede aprovechar las nuevas API que permiten al usuario final interactuar con sus aplicaciones y sitios web de maneras no disponibles anteriormente. Por ejemplo, Apple ahora permite a los sitios web ofrecer a los clientes la opción de pagar de forma segura a través de Apple Pay y mejoras en el marco metal potencia el potencial gráfico y informático de una aplicación.

Para obtener más información sobre macOS Sierra, consulte la documentación de macOS + Apps de Apple.

Novedades de macOS Sierra

Apple ha agregado varias NUEVAS API y servicios en macOS Sierra junto con muchas mejoras en las características existentes, entre las que se incluyen:

Sistema de archivos de Apple

Con macOS Sierra, Apple ha lanzado el nuevo sistema de archivos de Apple como un sistema de archivos moderno para iOS, macOS, tvOS y watchOS. El sistema de archivos de Apple se ha optimizado para el almacenamiento Flash y SSD y proporciona las siguientes características: cifrado seguro, metadatos de copia en escritura, uso compartido de espacio, clonación de archivos y directorios, instantáneas, tamaño rápido de directorios y primitivos de guardado seguro atómico.

Para obtener más información, consulte Guía del sistema de archivos de Apple de Apple.

Mejoras de Apple Pay

Apple ha realizado varias mejoras en Apple Pay en macOS Sierra que permiten al usuario realizar pagos seguros de sitios web.

Con macOS Sierra, se han agregado varias API nuevas que funcionan con macOS Sierra, iOS y watchOS para admitir redes de pago dinámicas y un nuevo entorno de prueba de espacio aislado.

macOS Sierra incluye el nuevo marco javascript de ApplePay que permite al desarrollador incorporar Apple Pay directamente en sitios web basados en iOS y macOS Safari. Para los sitios web que admiten Apple Pay, el usuario puede autorizar el pago mediante su iPhone o Apple Watch.

Para obtener más información, consulte la referencia de ApplePay JS Framework de ApplePay .

Creación de aplicaciones modernas de macOS

Las aplicaciones modernas de macOS, como el explorador web Safari de Apple, el procesador de texto pages y la hoja de distribución de números usan muchas tecnologías nuevas para presentar una interfaz de usuario unificada y contextual que desaparece con elementos de interfaz de usuario tradicionales, como paneles flotantes y varias ventanas abiertas.

Un ejemplo de una ventana mac con pestañas

Nuestra guía Building Modern macOS Apps (Compilar aplicaciones modernas de macOS) trata varias sugerencias, características y técnicas que un desarrollador puede usar para compilar una aplicación macOS moderna en Xamarin.Mac.

Uso compartido de datos de CloudKit

El marco CloudKit se ha ampliado en macOS Sierra para permitir al usuario compartir registros o conjuntos de registros de forma rápida y sencilla desde sus bases de datos privadas de iCloud.

CloudKit proporciona una interfaz de usuario completa para enviar y aceptar invitaciones de registros compartidos y el usuario tiene un control completo de lectura y escritura sobre las personas que tienen acceso a los registros.

Para obtener más información, consulte Referencia de CloudKit Framework de Apple y Referencia del marco JS de CloudKit.

Importante

Apple proporciona herramientas para ayudar a los desarrolladores a tratar correctamente el Reglamento general de protección de datos (RGPD) de la Unión Europea.

Compatibilidad con extensiones de aplicaciones safari

Las extensiones de aplicación safari permiten que la aplicación amplíe el comportamiento del explorador web Safari mientras se integra estrechamente con macOS Sierra. Dado que las extensiones de aplicaciones safari de macOS funcionan de forma similar a las extensiones de aplicación safari de iOS, son fáciles de migrar de un sistema a otro.

Para obtener más información, consulte guía de programación de extensiones de aplicaciones Safari de Apple.

Mejoras de seguridad y privacidad

Apple ha realizado varias mejoras tanto en seguridad como en privacidad en macOS Sierra que ayudarán a la aplicación a mejorar la seguridad de la aplicación y a garantizar la privacidad del usuario final, incluido lo siguiente:

  • La nueva NSAllowsArbitraryLoadsInWebContent clave se puede agregar al archivo de Info.plist la aplicación y permitirá que las páginas web se carguen correctamente mientras la protección de Seguridad de transporte de Apple (ATS) sigue habilitada para el resto de la aplicación.
  • La API common Data Security Architecture (CDSA) está en desuso y debe reemplazarse por secKey API para generar claves asimétricas.
  • Para todas las conexiones SSL/TLS, el cifrado simétrico RC4 ahora está deshabilitado de forma predeterminada. Además, la API de transporte seguro ya no admite SSLv3 y se recomienda que la aplicación deje de usar la criptografía SHA-1 y 3DES lo antes posible.
  • Dado que el nuevo Portapapeles de iOS 10 y macOS Sierra permite al usuario copiar y pegar entre dispositivos, la API se ha expandido para permitir que un Portapapeles se limite a un dispositivo específico y que se borre automáticamente en un momento dado. Además, los pasteboards con nombre ya no se conservan y deben reemplazarse por los contenedores compartidos del panel de pegado.
  • Si la aplicación accede a datos protegidos (como el calendario del usuario), debe declarar esa intención con la clave de valor de cadena de propósito correcta en su Info.plist archivo (NSCalendarUsageDescription en el caso del calendario).
  • Las aplicaciones firmadas por el desarrollador que no se entregan a través de mac App Store ahora pueden aprovechar las ventajas de CloudKit, llavero de iCloud, iCloud Drive, notificaciones push remotas, MapKit y derechos vpn.
  • macOS Sierra ya no admite la entrega de código externo o datos junto con la aplicación de inicio de sesión de código en su archivo ZIP o imagen de disco sin firmar, ya que la ruta de acceso en tiempo de ejecución no se conoce antes del tiempo de ejecución.

Además, las aplicaciones que se ejecutan en macOS Sierra (o posterior) deben declarar estáticamente su intención de acceder a características específicas o información del usuario escribiendo una o varias claves específicas de privacidad en sus Info.plist archivos que explican al usuario por qué la aplicación desea obtener acceso.

Dado que macOS Sierra comparte estos cambios con iOS 10, consulte nuestra guía de mejoras de seguridad y privacidad de iOS 10 para obtener más información.

Compatibilidad con la extensión del controlador de tarjeta inteligente

Con macOS Sierra, la aplicación puede crear NSExtension controladores de tarjeta inteligente basados que permiten el acceso de solo lectura al contenido de determinados tipos de tarjetas inteligentes. A continuación, esta información se presenta dentro de la cadena de claves del sistema (reemplazando el método de arquitectura de common Data Security en desuso).

para obtener más información, vea Referencia del marco CryptoTokenKit de Apple.

Registro unificado

El registro unificado proporciona a la aplicación una única API para una mensajería eficaz en todos los niveles del sistema. Con el registro unificado, la aplicación tiene un control específico sobre varios niveles de registro que incluyen controles de privacidad y seguimiento de actividades para facilitar la depuración.

El registro proporciona correlación automática de mensajes cuando el seguimiento de actividad y el registro se usan juntos.

macOS Sierra incluye una nueva aplicación de consola (en aplicaciones/utilidades) que puede mostrar datos de registro de varios orígenes, incluidos los dispositivos conectados. También admite búsquedas con tokens y guardadas y muestra conexiones entre mensajes relacionados entre varios procesos.

Además, los mensajes de registro se pueden ver y mantener mediante herramientas de línea de comandos.

Para obtener más información, consulte Referencia de registro de Apple.

Color amplio

macOS Sierra amplía la compatibilidad con formatos de píxeles de rango extendido y espacios de color de gama amplia en todo el sistema, incluidos marcos como Core Graphics, Core Image, Metal y AVFoundation. La compatibilidad con dispositivos con pantallas de color ancho se facilita aún más al proporcionar este comportamiento a lo largo de toda la pila de gráficos.

Además, AppKit se ha modificado para funcionar en el nuevo espacio de colores extendido sRGB , lo que facilita la combinación de colores en gamas de colores anchas sin una pérdida significativa de rendimiento.

Apple ofrece los siguientes procedimientos recomendados al trabajar con colores anchos:

  • NSColor ahora usa el espacio de colores sRGB y ya no sujetará los valores al 0.01.0 intervalo. Si la aplicación se basa en el comportamiento anterior de la restricción, deberá modificarse para macOS Sierra.
  • Cuando se usa una API de bajo nivel, como Core Graphics o Metal para proporcionar procesamiento de imágenes, la aplicación debe usar un espacio de colores de rango extendido y un formato de píxel que admita valores de punto flotante de 16 bits. Cuando sea necesario, la aplicación tendrá que restringir manualmente los valores de los componentes de color.
  • Los gráficos principales, los sombreadores de rendimiento de imagen principal y metal proporcionan nuevos métodos para convertir entre los dos espacios de color.

Para obtener más información, consulte nuestra guía Introduction to Wide Color (Introducción a color ancho ).

Cambios adicionales en el marco

Además de los principales cambios y adiciones del marco enumerados anteriormente, Apple ha realizado muchos cambios de marcos menores adicionales en macOS Sierra.

Para obtener más información, consulte nuestra guía de cambios adicionales del marco .

Interfaces API desusadas

Las SIGUIENTES API han quedado en desuso en macOS Sierra:

  • Ya no se admite el sistema de archivos estándar HFS.

Consulte la documentación de diferencias de API de MacOS v10.12 de Apple para obtener una lista completa de los cambios y desusos.