El registro de cambios de iOS 8.2 beta 3 revela las novedades implementadas por Apple

8.2 iOS beta

  Apple lanzó iOS beta 8.2 3 cu doar cateva zeci de minute in urma pentru posesorii de iPhone, iPad si iPod Touch, noua versiune a sistemului de operare fiind disponibila pentru dezvoltatorii de aplicatii pentru iPhone, iPad si iPod Touch. Din pacate compania Apple nu a mentionat in informatiile oferite la actualizare ce tip de modificari a implementat pentru dezvoltatori, insa a publicat un changelog detaliat in portalul dedicat acestora pe website-ul sau.

  In baza acestui changelog putem afla noutatile iOS beta 8.2 3, adica tot ceea ce a schimbat Apple la suprafata sau in interiorul sistemului de operare, majoritatea modificarilor fiind facute in ceea ce priveste codul sursa si nu functiile vizibile. iOS 8.2 beta 3 este doar una dintre versiunile beta lansate de catre compania Apple pentru iOS 8.2, cei din Cupertino oferind aceasta versiune a sistemului de operare pentru dezvoltatorii dornici sa testeze aplicatiile pentru Apple Watch.

Registro de cambios de iOS 8.2 beta 3

Notas y problemas conocidos

Los siguientes problemas se relacionan con el uso de iOS SDK 8.2 para desarrollar código.

NubeKit

Note

Un único CKAsset La instancia ya no se puede establecer como un valor en varios CKRecords.

Proveedores de documentos

Notas

  • Su aplicación necesita el derecho de iCloud para poder usarse como proveedor de documentos.

  • El com.apple.developer.icloud-container-identifiers se requiere el derecho.

Problemas conocidos

  • Después de girar el selector de documentos a horizontal, la barra de estado queda oculta.

  • Al abrir el selector de documentos en posición horizontal, la vista contenedora puede desplazarse debajo de la barra de navegación.

Extensiones de aplicaciones

Notas

  • Las extensiones de aplicaciones necesitan un segmento arm64 para ejecutarse en dispositivos de 64 bits. Si intenta ejecutar el segmento armv7 en un dispositivo de 64 bits, no funcionará.

  • Las aplicaciones deben tener un segmento arm64 si el paquete contiene un marco con el que se vinculan tanto la aplicación como la extensión de la aplicación.

Sistema de archivos

Note

El diseño del sistema de archivos de los contenedores de aplicaciones ha cambiado en el disco. En lugar de depender de una estructura de directorios codificada, utilice el NSSearchPathForDirectoriesInDomains función o la URLForDirectory:inDomain:appropriateForURL:create:error: método de la NSFileManagerclase. Ver Acceso a archivos y directorios in Guía de programación del sistema de archivos.

Fuentes

Note

La fuente del sistema tailandés ha aumentado de tamaño para mejorar la legibilidad. Esto provocará recortes en muchos lugares de su interfaz de usuario si no toma las medidas adecuadas:

  1. Uso UILabel cuanto más se pueda. Si utiliza Interface Builder, asegúrese de que Clip Subviews no esté marcado. UIKit aumentará la región de recorte según sea necesario para no recortar texto.

  2. Utilice tipo dinámico. Esto asegurará que no tenga glifos superpuestos en etiquetas de varias líneas o campos de texto.

Si no puede hacer 1 y 2 porque implementa sus propias vistas, debe implementar medidas para no recortar. Puede utilizar CoreText para determinar la región de recorte adecuada para una línea de texto llamando a:

CTLineGetBoundsWithOptions(lineRef, kCTLineBoundsIncludeLanguageExtents);

Para evitar la superposición de glifos en elementos de texto de varias líneas, ajuste la altura de la línea. Se recomienda un 30% adicional.

Esta medida también ayudará a que su aplicación funcione mejor en otros idiomas, incluidos árabe, hindi y vietnamita.

iCloud

Note

La transferencia de correo y AirDrop pueden dejar de funcionar después de cambiar su contraseña de iCloud en appleid.apple.com.

Solución del problema: Cierra sesión y vuelve a acceder a iCloud en el dispositivo.

iCloud Drive

Note

URLForUbiquityContainerIdentifier: podría volver nil al ejecutar su aplicación en Xcode. Si es así, abra Preferencias del Sistema, navegue hasta iCloud > iCloud Drive y habilite Xcode.

Mensajes

Corregido en Beta 3

Su dispositivo puede llegar a un estado en el que acceder a las conversaciones de Mensajes puede llevar mucho tiempo.

Centro de notificación

Note

El horario y uso previsto de widgetPerformUpdateWithCompletionHandler: está pensado como un hogar conveniente para toda la lógica de actualización de datos/modelos. Si se implementa, el sistema llamará en los momentos apropiados para que el widget actualice su estado, tanto cuando el Centro de notificaciones esté visible como en segundo plano. Se requiere una implementación para habilitar las actualizaciones en segundo plano. Se espera que el widget realice el trabajo de actualización de forma asincrónica y fuera del hilo principal tanto como sea posible. Los widgets deben llamar al bloque de argumentos cuando el trabajo esté completo, pasando el correspondiente NCUpdateResult. Los widgets NO deberían bloquear el regreso desde viewWillAppear: sobre los resultados de esta operación. En cambio, los widgets deberían cargar el estado en caché en viewWillAppear: para que coincida con el estado de la vista desde la última viewWillDisappear:y luego realice la transición sin problemas a los nuevos datos cuando lleguen.

NSURLSesión

Note

El NSURLSessionTask La clase proporciona una nueva propiedad de "prioridad" con tres constantes asociadas: NSURLSessionTaskPriorityDefault, NSURLSessionTaskPriorityLowy NSURLSessionTaskPriorityHigh. NSURLSessionTask Las prioridades se pueden utilizar para especificar cómo se deben priorizar múltiples solicitudes y respuestas al mismo host. Tenga en cuenta que la prioridad es una pista y no una garantía estricta de NSURLSessionTask rendimiento.

Para obtener detalles completos sobre el uso de NSURLSessionTask prioridades, consulte la NSURLSession.h archivo de encabezado, que es proporcionado por el marco Foundation.

Teléfono

Note

Para activar la funcionalidad de llamadas Wi-Fi para T-Mobile (solo EE. UU.), siga estos pasos:

  • Vaya a Configuración > Teléfono > Llamadas Wi-Fi.

  • Mueva el interruptor de Llamadas Wi-Fi a ON.

  • Si el operador no tiene la dirección de emergencia registrada del usuario, se le pedirá que la agregue antes de activar la función.

Fotos

Notas

  • Mantenga una copia de seguridad de su biblioteca de fotos antes de habilitarla y mientras usa la versión beta de la biblioteca de fotos de iCloud:

    • Importar a tu Mac usando iPhoto

    • Importar a su Mac usando Image Capture

  • La versión beta de iCloud Photo Library no descargará fotos y videos que se sincronizaron con su dispositivo desde iTunes. Todas las fotos y videos sincronizados con su dispositivo desde iTunes se eliminarán cuando habilite la versión beta de iCloud Photo Library.

  • iPhoto para iOS no se iniciará en iOS 8 beta. Al iniciar Photos.app, se migrarán las ediciones de iPhoto a la biblioteca de fotos de iOS 8. Asegúrese de que los datos de iPhoto para iOS estén incluidos en la copia de seguridad de su dispositivo.

  • La capacidad de optimizar automáticamente el espacio del dispositivo está habilitada para todas las cuentas de más de 5 GB.

  • Cuando se utiliza iCloud Family Sharing, tanto iCloud Photo Sharing como My Photo Stream están habilitados.

Perfiles de aprovisionamiento

Problema conocido

Si actualizó a la versión beta 8.2 desde versiones beta anteriores de iOS 8, es posible que vea que sus aplicaciones fallan debido a problemas con el perfil de aprovisionamiento.

Solución del problema:

  1. Conecte el dispositivo mediante USB a su Mac.

  2. Inicie Xcode.

  3. Elija Ventana > Dispositivos.

  4. Haga clic derecho en el dispositivo en la columna de la izquierda, elija "Mostrar perfiles de aprovisionamiento".

  5. Haga clic en el perfil de aprovisionamiento en cuestión.

  6. Presiona el botón.

  7. Continúe eliminando todos los perfiles afectados.

  8. Vuelva a instalar la aplicación.

kit de interfaz de usuario

Notas

  • UILabel tiene un valor predeterminado de SÍ para clipsToBounds. Esto difiere de lo normal. UIView defecto de NO.

  • El leftLayoutGuide y rightLayoutGuide Se han eliminado las API. Por favor use el layoutMargins propiedad en su lugar.

relojero

Notas

  • El WKInterfaceMap La API ha cambiado. Específicamente, setMapRect: y setCoordinateRegion: han sido reemplazados por setVisibleMapRect: y setRegion: respectivamente.

  • El WKInterfaceController Método initWithContext: ha quedado obsoleto. Por favor use awakeWithContext: en cambio. El inicializador designado para WKInterfaceController es ahora init.

  • El WKInterfaceDevice La API ha cambiado. Específicamente, addCachedImage:name: y addCachedImageWithData:name: ahora regresa BOOL to indicate the success or failure of adding an image to the cache. Note that these methods return NO if the cache size has reached its limit. Delete images from the cache by calling removeCachedImageWithName: or removeAllCachedImages.

  • Una aplicación WatchKit basada en páginas puede volver a secuenciar dinámicamente las páginas en el nivel raíz usando reloadRootControllersWithNames:contexts:.

  • Filas en un WKInterfaceTable ahora tiene una apariencia predeterminada. Esta apariencia se puede anular especificando los valores de color de fondo, margen, radio de esquina y altura de la fila en Interface Builder.

Corregido en Beta 3

  • In iOS Simulator, the Emoji button should now be visible, regardless of the selected input mode.

  • El WKInterfaceController Método openParentApplication:reply: now launches the containing app in the background when the iPhone (or iOS Simulator) is unlocked or locked.

  • El WKInterfaceController Método presentTextInputControllerWithSuggestions:completion: is now fully supported in iOS Simulator.

Problema conocido

  • Inserting, deleting, or updating rows of a WKInterfaceTable may cause the table to temporarily size incorrectly. Scrolling your interface controller should restore the table to the proper size.

Llamadas Wi-Fi (solo T-Mobile EE. UU.)

Note

El nombre del operador en la barra de estado mostrará "T-Mobile Wi-Fi" cuando el dispositivo pueda realizar y recibir llamadas Wi-Fi.