Introducción a iOS 9
En este artículo se presentan todas las API y características nuevas y modificadas disponibles en iOS 9 para desarrolladores de Xamarin.iOS.

Apple ha agregado varias API y servicios nuevos en iOS 9 junto con muchas mejoras en las características existentes.
Entrada táctil 3D
Como novedad de iOS 9 y iPhone 6s y iPhone 6s Plus, 3D Touch gestos sensibles a la presión a las aplicaciones iOS. Con 3D Touch, una aplicación iPhone ahora no solo puede saber que el usuario está tocándose la pantalla del dispositivo, sino que también puede saber cuánta presión está haciendo el usuario y responder a los distintos niveles de presión.
3D Touch proporciona las siguientes características a la aplicación:
- Sensibilidad a la presión: las aplicaciones ahora pueden medir la fuerza o la luz que el usuario está tocándose en la pantalla y aprovechar esa información. Por ejemplo, una aplicación de dibujo puede hacer que una línea sea más gruesa o más fina en función de la fuerza con la que el usuario toca la pantalla.
- Ver y sacar: la aplicación ahora puede permitir que el usuario interactúe con sus datos sin tener que salir de su contexto actual. Al presionar fuerte en la pantalla, pueden ver el elemento en el que están interesados (como obtener una vista previa de un mensaje). Al presionar más fuerte, pueden entrar en el elemento.
- Acciones rápidas: piense en acciones rápidas como los menús contextuales que se pueden abrir cuando un usuario hace clic con el botón derecho en un elemento de una aplicación de escritorio. Con Acciones rápidas, puede agregar accesos directos comunes, rápidos y fáciles de acceder a las funciones de la aplicación desde el icono de pantalla inicio del dispositivo iOS.
Para más información, consulte nuestra guía Introducción a 3D Touch datos.
Seguridad de transporte de aplicación
Como novedad de iOS 9, App Transport Security (ATS) aplica conexiones seguras entre los recursos de Internet (como el servidor back-end de la aplicación) y la aplicación. ATS garantiza que todas las comunicaciones de Internet se ajustan a los procedimientos recomendados de conexión segura, lo que evita la divulgación accidental de información confidencial directamente a través de la aplicación o de una biblioteca que está consumiendo.
Puesto que ATS está habilitado de forma predeterminada en las aplicaciones creadas para iOS 9 y OS X 10.11 (El Capitan), todas las conexiones que usen NSUrlConnection,CFUrl o NSUrlSession estarán sujetas a requisitos de seguridad de ATS. Si las conexiones no cumplen estos requisitos, se producirá un error con una excepción.
Para más información sobre ATS, consulte nuestra guía de Seguridad de transporte de aplicaciones.
Multitarea para iPad
Con iOS 9, Apple ha agregado compatibilidad multitarea para ejecutar dos aplicaciones al mismo tiempo en hardware iPad específico. Como resultado, las aplicaciones de Xamarin.iOS ya no pueden suponer que son la única aplicación que se ejecuta en un momento dado o que tienen acceso a la pantalla completa o a los recursos del dispositivo.
La multitarea para iPad se admite a través de las siguientes características:
- Deslizar sobre: permite al usuario ejecutar temporalmente una segunda aplicación de iOS en un panel deslizante (ya sea en el lado derecho o izquierdo de la pantalla en función de la dirección del idioma) que abarca aproximadamente el 25 % de la aplicación principal que se está ejecutando actualmente. La diapositiva solo está disponible en iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 o iPad Mini 4.
- Vista dividida: en hardware iPad compatible (solo iPad Air 2, iPad Mini 4 y iPad Pro), el usuario puede elegir una segunda aplicación y ejecutarla en paralelo con la aplicación que se está ejecutando actualmente en modo de pantalla dividida. El usuario puede controlar el porcentaje de la pantalla principal que ocupa cada aplicación.
- Imagen en imagen: en el caso de las aplicaciones que reproducen contenido de vídeo, el vídeo ahora se puede reproducir en una ventana móvil y de tamaño ajustable que flota sobre las otras aplicaciones que se ejecutan actualmente en el dispositivo iOS. El usuario tiene control total sobre el tamaño y la posición de esta ventana. Imagen en imagen solo está disponible en iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 o iPad Mini 4.
Para obtener más información sobre las nuevas capacidades de multitarea de iOS 9, consulte nuestra guía multitarea iPad tareas.
Nuevos marcos de interfaz de usuario de contactos y contactos
Con la introducción de iOS 9, Apple ha publicado dos nuevos marcos, Contacts y ContactsUI,que reemplazan a los marcos existentes de interfaz de usuario de libreta de direcciones y libreta de direcciones usados por iOS 8 y versiones anteriores.
Estos nuevos marcos orientados a objetos proporcionan lo siguiente:
- Contactos: proporciona acceso de Xamarin.iOS a la información de contacto del usuario. Dado que la mayoría de las aplicaciones solo requieren acceso de solo lectura, este marco se ha optimizado para el acceso seguro para subprocesos y de solo lectura.
- ContactsUI: proporciona elementos de interfaz de usuario de Xamarin.iOS para mostrar, editar, seleccionar y crear contactos en dispositivos iOS.
Para más información, consulte la documentación de la interfaz de usuario contactos y contactos.
Nuevas API de búsqueda
La búsqueda se ha ampliado en iOS 9 para proporcionar nuevas formas excelentes de acceder a la información dentro de la aplicación xamarin.iOS. Con las nuevas API de búsqueda, puede hacer que el contenido de la aplicación se pueda buscar a través de los resultados de búsqueda de Spotlight y Safari, Los recordatorios y sugerencias de Siri y Handoff. Esto permite a los usuarios acceder rápidamente a actividades e información en profundidad dentro de la aplicación.
Además, las nuevas API de búsqueda facilitan la integración de la búsqueda en la aplicación sin experiencia de implementación de búsqueda previa. Por este problema, Apple afirma que normalmente se tardan unas horas en hacer que el contenido de una aplicación iOS 9 se pueda buscar universalmente mediante App Search.
Para obtener más información, consulte nuestra documentación de mejoras de búsqueda.
Nueva vista de pila
El control Vista de pila (UIStackView aprovecha la potencia de las clases de diseño automático y tamaño para administrar una pila de subvistas (horizontal o verticalmente) que responde dinámicamente a la orientación y el tamaño de pantalla del dispositivo iOS.
Al usar el control Vista de pila, se reduce considerablemente la cantidad de trabajo necesario para el diseño de una interfaz de usuario. El diseño de todas las subvistas adjuntas a una vista de pila se administra automáticamente en función de las propiedades definidas por el desarrollador, como el eje, la distribución, la alineación y el espaciado.
Para obtener más información, consulte nuestra documentación introducción a Stack View.
Cambios en la vista de recopilación
En iOS 9, la Vista de colección(UICollectionView ahora admite la reordenación de arrastre de elementos de forma predeterminada mediante la adición de un nuevo reconocedor de gestos predeterminado y varios métodos auxiliares nuevos.
Con estos nuevos métodos, puede implementar fácilmente arrastrar a reordenar en la vista de colección y tener la opción de personalizar la apariencia de los elementos durante cualquier fase del proceso de reordenación.
Para obtener más información sobre los cambios de la vista de recopilación para iOS 9, consulte nuestra guía cambios en la vista de recopilación.
Mejoras en el juego
Con iOS 9, Apple ha realizado varias mejoras tecnológicas en las API de juegos que facilitan la implementación de gráficos y audio de juegos en la aplicación Xamarin.iOS. Entre ellas se incluye la facilidad de desarrollo a través de marcos de alto nivel y el aprovechamiento de la potencia de la GPU del dispositivo iOS para mejorar la velocidad y las capacidades gráficas con mejoras de bajo nivel.
Esto incluye ElKit de juego, ReplayKit, E/S de modelo, MetalKit y sombreadores de rendimiento de metal junto con nuevas características mejoradas de Metal, SceneKit y SpriteKit.
Para más información, consulte nuestra documentación sobre mejoras de juegos.
Cambios en el marco de HomeKit
El marco HomeKit, introducido en iOS 8, proporciona la capacidad de configurar y controlar diversos accesorios habilitados para HomeKit (como luces automatizadas, llaves de puertas y puertas de puertas de aparcamiento) desde una aplicación xamarin.iOS. Además de ser fáciles de configurar y configurar, los accesorios de HomeKit se pueden controlar mediante comandos de Siri hablados.
En iOS 9, Apple ha facilitado la configuración, ampliado los tipos de accesorios admitidos y proporcionado más interacciones de accesorios (por ejemplo, controlar un accesorio de forma remota a través de iCloud).
Para más información, consulte nuestra introducción a HomeKit,la aplicación de ejemplo HomeKitIntro iOS y la documentación de HomeKit de Apple.
Cambios en el marco de entrega
Apple introdujo Handoff (también conocido como continuidad) en iOS 8 y OS X Yosemite (10.10) como una manera de que el usuario inicie una actividad en uno de sus dispositivos (ya sea iOS o Mac) y continúe con esa misma actividad en otro de sus dispositivos (como se identifica en la cuenta de iCloud del usuario).
Handoff se expandió en iOS 9 para admitir también nuevas funcionalidades de búsqueda mejoradas. Para obtener más información, consulte nuestra documentación de mejoras de búsqueda. Para obtener más información sobre el uso de Handoff, consulte nuestra documentación introducción a Handoff.
Nuevos puntos de extensión
En iOS 8, Apple introdujo extensiones: bibliotecas que presenta el sistema operativo en contextos estándar, como dentro del Centro de notificaciones, cuando el usuario solicita un teclado o cuando edita una foto.
Con iOS 9, Apple amplía la compatibilidad con extensiones proporcionando varios nuevos puntos de extensión que definen directivas de uso y proporcionan API para trabajar dentro de un área determinada de la siguiente manera:
- Nuevo punto de extensión de unidad de audio: use este punto de extensión para proporcionar efectos de audio, instrumentoes de música, generadores de sonido, etc. para su uso en otras aplicaciones host de unidad de audio (comoBandBand). Este punto de extensión también permite vender unidades de audio (complementos de audio) en el App Store.
- Nuevo punto de extensión de mantenimiento de índice: use este punto de extensión para admitir la reindexación de los datos de la aplicación sin necesidad de volver a iniciar la aplicación.
- Nuevos puntos de extensión de red (requieren un permiso especial de Apple):
- Extensión del proveedor de proxy de aplicación: use este punto de extensión para implementar un proxy de red transparente del lado cliente personalizado.
- Filtrar proveedor de datos/Extensión del proveedor de control de filtros: use estos puntos de extensión para implementar el filtrado dinámico de contenido de red en el dispositivo.
- Extensión Tunnel proveedor de paquetes: use este punto de extensión para implementar un protocolo de túnel VPN personalizado en el lado cliente.
- Nuevos puntos de extensión safari:
- Extensión de bloqueo de contenido: use este punto de extensión para definir una lista de contenido bloqueado que no se mostrará cuando el usuario esté explorando la web.
- Extensión de vínculos compartidos: use este punto de extensión para habilitar la visualización del contenido de la aplicación en vínculos compartidos de Safari.
Para obtener más información, consulte nuestra documentación Introduction to Extensions (Introducción a las extensiones) y App Extension Programming Guide (Guía de programación de extensiones de aplicaciones) de Apple.
Mejoras de cadena de claves
En iOS 9, Apple ha mejorado la cadena de claves para proporcionar un nuevo tipo de clave de cifrado para el enclave seguro y más opciones de protección de elementos como se muestra a continuación:
- Nueva restricción Touch ID que invalida los elementos de cadena de claves cuando se modifica la base de datos de huellas digitales.
- Nuevas restricciones que permiten crear Access Control list solo con Touch ID o código de acceso.
- Nuevo contexto de autenticación que permite invocar la autenticación independiente de las
SecItemllamadas. - Access Control enumerar la entropía (mediante la opción Contraseña de aplicación) para el cifrado de elementos de cadena de claves proporcionados por la aplicación.
- Compatibilidad con la generación y el uso de claves dentro del enclave seguro (a través del
kSecAttrTokenIDSecureEnclaveatributo ).
Para obtener más información, vea Touch ID y Face ID en Xamarin.iOS.
Compatibilidad con idiomas de derecha a izquierda
En iOS 9, Apple ha hecho que presentar una interfaz de usuario volteado sea más fácil que nunca al proporcionar compatibilidad total con idiomas de derecha a izquierda. Entre estas estructuras se incluyen las siguientes:
- Los controles UIKit estándar se voltearán automáticamente de derecha a izquierda en función de la configuración regional de los dispositivos iOS y la configuración de idioma.
- La clase UIView proporciona atributos que permiten definir cómo debe aparecer una vista determinada cuando se voltear de derecha a izquierda.
- La capacidad de voltear una imagen mediante programación mediante la propiedad FlipsForRightToLeftLayoutDirection de la clase UIImage.
Para más información, consulte la documentación de idiomas de derecha a izquierda de Soporte técnico de Apple.
Cambios adicionales en el marco
Además de los principales cambios que hemos descrito anteriormente, Apple ha realizado modificaciones y mejoras en varios marcos existentes para iOS 9, incluidos los siguientes:
- AV Foundation Framework
- AVKit Framework
- CloudKit Framework
- Foundation Framework
- Handoff Framework
- HealthKit Framework
- HomeKit Framework
- Marco de autenticación local
- Marco de MapKit
- PassKit Framework
- Marco de servicios de Safari
- UIKit Framework
Para obtener más información, consulte nuestra documentación sobre cambios adicionales en el marco de trabajo de iOS 9.
FUNCIONES y API en desuso
Apple ha dejado en desuso las siguientes API y funciones en iOS 9:
- Libreta de direcciones Interfaz de usuario de la libreta de direcciones: estas API se han reemplazado por los marcos de contacto y contacto de la interfaz de usuario. Para más información, consulte la documentación de la interfaz de usuario contactos y contactos.
- CBCentralManager: los
RetrieveConnectedPeripheralsmétodos y de laCBCentralManagerclase se han quitado en iOS 9. Llamar a estos métodos hará que una aplicación se bloquea al emparejar un accesorios o al iniciar la aplicación. - FetchAllChanges: el de la
CKFetchRecordChangesOperationclase se ha depreciado y se quitará en iOS 9. - Media Player: el marco Media Player ha quedado en desuso en iOS 9. Use AVKit o AV Foundation API en su lugar.
Para obtener una lista completa de los desusos de API específicos, consulte la documentación de diferencias de API de iOS 9.0 de Apple.
Aplicaciones de ejemplo de iOS 9
Tenemos algunos ejemplos específicos de iOS 9 para empezar:
- AstroLayout
- CollectionView
- MetalPerformanceShadersHelloWorld
- MusicMotion
- PhotoProgress
- SegueCatalog
- StackView
- StickyCorners
Consulte también las partes de iOS de estos ejemplos (versiones complementarias Mac OS X próximamente):
Vínculos relacionados
- Ejemplos de iOS 9
- Introducción a 3D Touch
- Seguridad de transporte de aplicación
- Multitarea para iPad
- Interfaz de usuario contactos y contactos
- Nuevas API de búsqueda
- Introducción a la vista de pila
- Cambios en la vista de recopilación
- Mejoras de juegos
- Introducción a HomeKit
- Introducción a Handoff
- Cambios adicionales en la plataforma iOS 9
- Solución de problemas
- iOS 9 para desarrolladores
- Novedades de iOS 9.0
- Actualización de aplicaciones de Xamarin.iOS a iOS9 (vídeo)