iOS 5 beta 6 lanzado por Apple!

    Apple lanzó esta tarde la versión beta 6 del sistema operativo iOS 5, apenas 2 días después de las estimaciones iniciales realizadas a partir de la información descubierta en el nuevo sistema de Actualización de Software implementado por Apple. La nueva versión del sistema operativo trae naturalmente una serie de cambios que detallaré en un artículo posterior. Esta nueva versión de iOS 5 sólo se puede descargar desde el portal dedicado para desarrolladores en el sitio web de Apple. La versión delta del sistema operativo del iPhone 4 tiene solo 144 MB, por lo que si actualiza mediante Actualización de software, sabrá cuánto necesita consumir del tráfico de Internet.

ACTUALIZAR: Aquí está el registro de cambios completo de la nueva versión beta:

Cuentas

Al crear una cuenta de iCloud, puedes usar cualquier ID de Apple siempre que sea una dirección de correo electrónico completa y no una cuenta de MobileMe. Si tiene una cuenta MobileMe, puede mover esa cuenta a iCloud. Puede encontrar más información sobre iCloud en: http://developer.apple.com/icloud

CORREGIDO: Al configurar una cuenta de iCloud o MobileMe usando el asistente de configuración y dejando Buscar mi iPhone activado, es posible que en realidad se desactive Buscar mi iPhone después de la configuración. Verifique en Configuración/Correo, Contactos, Calendario/Su cuenta que Buscar mi iPhone esté activado después de salir del asistente de configuración.

CORREGIDO: Es posible que la habilitación de los servicios de iCloud en el Asistente de configuración no siempre se guarde correctamente. Después de completar el Asistente de configuración, debes visitar Configuración > iCloud para verificar el estado de la cuenta de iCloud. Si tiene varias cuentas de iCloud o MobileMe configuradas en el dispositivo, también debe visitar cada una de esas cuentas en Configuración > Correo, Contactos, Calendario para verificar cada cuenta.

CORREGIDO: Se recomienda desactivar los marcadores en varias cuentas. Si están habilitados, es posible que los resultados no estén definidos.

AirPlay

A partir de iOS 5, el contenido de vídeo de aplicaciones y sitios web está habilitado para AirPlay de forma predeterminada.

iOS 5 admite AirPlay de vídeo a través de AV Foundation.

Apple TV

La versión beta del software Apple TV permite a los usuarios reflejar el contenido de un iPad 2 en un Apple TV (segunda generación) mediante AirPlay. Este software beta también habilita Photo Stream en Apple TV para que los usuarios puedan acceder a las fotos almacenadas en iCloud. Se proporciona la versión beta del software Apple TV para probar la última funcionalidad de AirPlay con sus aplicaciones y sitios web de iOS 2. Si desea instalar la versión beta del software Apple TV en su dispositivo, primero debe registrar el UDID de su dispositivo en el Portal del programa para desarrolladores de iOS.

Apple TV puede volver al menú principal al salir de un programa de televisión reproducido a través de Home Sharing.

No se puede acceder a las listas de reproducción de música a través de Home Sharing.

Compatibilidad binaria

En las aplicaciones vinculadas al SDK de iOS 5.0, los desplazamientos del contenido de la vista de desplazamiento ya no se redondearán a píxeles integrales durante un gesto de pellizco.

Calendario

Los calendarios de cumpleaños no están disponibles actualmente a través del sitio web icloud.com ni en Windows. Estarán disponibles en una versión futura.

CORREGIDO: el calendario predeterminado sigue siendo el calendario de Mi iPhone a pesar de configurar una cuenta de iCloud durante el Asistente de configuración. Como solución alternativa, restablezca el calendario predeterminado después de finalizar el Asistente de configuración en Configuración > Correo, Contactos, Calendario > Calendario predeterminado.

CORREGIDO: Enviar datos del Calendario de iCloud no funciona en iOS. Para sincronizar su calendario de iCloud, inicie la aplicación Calendario o actualice los calendarios manualmente usando el botón Calendarios en la esquina superior izquierda.

Imagen principal

Se han agregado varios filtros desde la versión beta 1. La lista actual ahora incluye los siguientes filtros: CIAditionCompositing, CIAffineTransform, CICheckerboardGenerator, CIColorBlendMode, CIColorBurnBlendMode, CIColorControls, CIColorCube, CIColorDodgeBlendMode, CIColorInvert, CIColorMatrix, CIColorMonochrome, CIConstantColorGenerator, CICrop, CIDarkenBlendMode, CIDif ferenceBlendMode, CIExclusionBlendMode, CIExposureAdjust, CIFalseColor, CIGammaAdjust, CIGaussianGradient, CIHardLightBlendMode, CIHighlightShadowAdjust, CIHueAdjust, CIHueBlendMode, CILightenBlendMode, CILinearGradient, CILuminosityBlendMode, CIMaximumCompositing, CIMinimumCompositing, CIMultiplyBlendMode, CIMultiplyCompositing, CIOver layBlendMode, CIRadialGradient, CISaturationBlendMode, CIScreenBlendMode, CISepiaTone, CISoftLightBlendMode, CISourceAtopCompositing, CISourceInCompositing, CISourceOutCompositing, CISourceOverCompositing, CIStraightenFilter, CIStripesGenerator, CITemperatureAndTint, CIToneCurve, CIVibrance, CIVignette y CIWhitePointAdjust

GameKit

Los datos de las partidas por turnos están actualmente limitados a 4 KB de datos.

NUEVO: Los eventos se pasarán al delegado cada vez que se realice un turno en una partida, en lugar de solo cuando sea el turno del jugador local.

CORREGIDO: Al iniciar sesión en Game Center, es posible que la contraseña se borre y que el inicio de sesión no se complete. Si lo intentas por segunda vez, tendrás éxito.

CORREGIDO: En esta versión beta, las invitaciones de GameKit pueden fallar. Como solución alternativa, intente reiniciar el dispositivo.

iBooks

Es posible que iBooks 1.2.2 no muestre algunos textos o imágenes de los libros. Actualice a iBooks 1.3 en la App Store.

icloud de copia de seguridad

Como se trata de un software beta, se recomienda que no utilice los servicios de iCloud para almacenar datos o información críticos. Si habilita la copia de seguridad de iCloud, se desactivará la copia de seguridad automática con iTunes cuando se sincronice. También le sugerimos que haga una copia de seguridad manual de su dispositivo con iTunes. Las copias de seguridad realizadas con versiones anteriores de iOS 5 beta pronto serán incompatibles y ya no estarán disponibles. Se recomienda encarecidamente que actualice a esta versión beta de iOS 5 para poder continuar realizando copias de seguridad de sus dispositivos. Si encuentra errores al restaurar desde una copia de seguridad o al habilitar una copia de seguridad más de una hora después de iniciar sesión en iCloud, intente eliminar su cuenta de iCloud desde Configuración y volver a agregarla. Si los errores persisten, intente borrar su dispositivo e iniciar la restauración nuevamente.

iCloud Storage

NUEVO: Si llama a stringByResolvingSymlinksInPath o stringByStandardizingPath en una ruta que desciende de su contenedor, nunca podrá usar el resultado para realizar con éxito una lectura coordinada.

NUEVO: En KVS, el límite por clave se ha elevado a 64 Kb (para igualar el límite por aplicación); y el número máximo de claves se ha elevado a 256.

Durante el período beta de iOS 5, cualquier documento almacenado en los servidores podría eliminarse periódicamente ante GM. Por lo tanto, se recomienda encarecidamente que no almacene ningún documento o información crítica en los servidores.

Ya no es necesario habilitar los perfiles de aprovisionamiento para iCloud en el portal de aprovisionamiento de iOS. Todos los perfiles de aprovisionamiento recién generados ahora se habilitan automáticamente para iCloud. Si está utilizando un perfil de aprovisionamiento de equipo administrado por Xcode, haga clic en actualizar en Xcode Organizer para obtener un nuevo perfil habilitado para iCloud. Para habilitar todos los demás perfiles de aprovisionamiento para iCloud, simplemente vuelva a generar sus perfiles en el Portal de aprovisionamiento de iOS.

Si su aplicación utiliza la clase NSMetadataQuery, debe establecer un predicado, aunque el predicado en sí se ignore.

En esta versión beta, el método setSortDescriptors: de NSMetadataQuery no es compatible.

CORREGIDO: Para usar iCloud antes de la versión beta 5, tenías que especificar manualmente varios identificadores de contenedor (el conjunto de visualización de tu aplicación) dentro de un archivo de derechos para tus proyectos de Mac OS X e iOS. A partir de la versión beta 5, para habilitar el almacenamiento de iCloud dentro de tu apps, simplemente haga clic en la casilla de verificación "Habilitar derechos" en el panel Resumen de su proyecto. Xcode creará un archivo de derechos personalizado para su proyecto que incluye automáticamente su ID de equipo. Puede agregar valores adicionales de iCloud Container según lo requiera su aplicación. (Tenga en cuenta que debe volver a generar sus perfiles de aprovisionamiento existentes, ya sea con Xcode o en el Portal de aprovisionamiento de iOS, para usar el almacenamiento de iCloud). Si especifica una cadena de identificación personalizada para su almacén de claves y valores de iCloud o los valores de derechos del contenedor de iCloud, ya no Debe agregar su ID de equipo al comienzo de la cadena. Xcode antepondrá su ID de equipo a estas entradas automáticamente

La cadena de identificador de contenedor que pasa al método URLForUbiquityContainerIdentifier: de NSFileManager DEBE incluir el ID del equipo al principio de la cadena. Para su comodidad, si pasa cero, Foundation usa el primer ID del contenedor de documentos especificado en los derechos de su aplicación.

Hay problemas al utilizar la API de documentos de Cloud Storage junto con datos protegidos que pueden provocar daños en los datos.

CORREGIDO: En esta versión beta, las aplicaciones basadas en documentos no siempre pueden detectar cuándo los archivos cambian, se mueven o se eliminan debajo de ellas.

En esta versión beta, los presentadores de archivos (objetos que adoptan el protocolo NSFilePresenter) no reciben algunos de los mensajes que se supone que deben recibir, especialmente:

presentadoItemDidChange

presentadoSubitemDidAppearAtURL:

presentadoSubitemDidChangeAtURL:

Puede solucionar este problema implementando el método relinquishPresentedItemToWriter: y verificando si el escritor realmente escribió cuando el presentador de archivos vuelve a adquirirlo. También puede utilizar FSEvents para observar los cambios del sistema de archivos.

En esta versión beta, los mensajes sobre cambios en archivos en un directorio no se entregan a objetos que adoptan el protocolo NSFilePresenter.

Al informar un error relacionado con las interfaces de almacenamiento de iCloud, incluya los registros recopilados durante su sesión de depuración. Para generar estos registros, debe instalar un perfil de depuración especial en su dispositivo. El perfil de depuración se puede obtener en http://connect.apple.com. Este perfil permite la generación de registros de depuración necesarios para diagnosticar cualquier problema al utilizar el almacenamiento de iCloud. Las instrucciones para recolectar los registros son:

Instale el perfil. (La forma más sencilla de hacerlo es enviártelo por correo y abrir el archivo adjunto en su dispositivo).

Reproduzca el error.

Sincroniza con iTunes para eliminar los registros de tu dispositivo.

Adjunte los registros a su informe de error. Puede encontrar los registros en ~/Library/Logs/CrashReporter/MobileDevice/DeviceName/DiagnosticLogs.

Estos registros pueden crecer muy rápidamente, por lo que debe eliminar el perfil después de haber reproducido el problema y extraído los registros para el informe de error.

Los nombres de archivos no distinguen entre mayúsculas y minúsculas en OS X, pero sí en iOS. Esto puede provocar problemas al sincronizar archivos entre ambos. Debes tomar medidas en iOS para evitar crear archivos cuyos nombres difieran sólo en mayúsculas y minúsculas.

iMessage

iMessage beta 1 no podrá comunicarse con los usuarios de iMessage en beta 2 o posterior.

NUEVO: El Asistente de configuración no ingresa la contraseña de AppleID para FaceTime o iMessage.

Interfaz del constructor

NUEVO: A las vistas de nivel superior en un documento que utiliza diseño automático no se les pueden agregar restricciones de ancho y alto. Para solucionar esto, puede agregar la restricción de ancho o alto deseado manualmente en el código.

NUEVO: En Interface Builder, los documentos que utilizan diseño automático y las restricciones que genera Xcode no se pueden eliminar. Puede "eliminar" estas restricciones creando una restricción de usuario para el comportamiento que espera. Por ejemplo, si arrastra un botón y Xcode genera una restricción inicial para la supervisión del botón, y desea un borde posterior para la restricción de supervisión, crear uno manualmente usando "Agregar restricción => Restricción final a la supervisión" eliminaría el borde anterior para supervisar la restricción.

NUEVO: Se sabe que las restricciones de ancho/alto iguales se pueden romper en vistas que llenan un contenedor al cambiar el tamaño de la ventana. Si cambia el tamaño de la ventana y se rompe una restricción de ancho/alto igual, volver a agregarla ajustará correctamente la ventana para adaptarse a la restricción.

NUEVO: Al editar el valor de una restricción en el inspector, la restricción permanece seleccionada y la vista de esquema continúa mostrándola como seleccionada.

NUEVO: En XCode 4.2, al copiar vistas (ya sea una vista única o varias vistas), tanto las restricciones definidas por el usuario directamente en la vista seleccionada como las restricciones definidas por el usuario entre las vistas que se copian se copian en el tablero.

NUEVO: En Xcode 4.2 para un documento que usa Cocoa Auto Layout, "Seleccionar todo" en el lienzo ya no selecciona las restricciones y subvistas de la vista editada. Si se selecciona una vista, solo seleccionará vistas. Si se selecciona una restricción, "Seleccionar todo" seleccionará todas las restricciones.

NUEVO: Cambiar el estilo de segmento de un NSSegmentedControl a "Automático" puede fallar en los documentos que usan Cocoa Auto Layout. Para solucionar el problema, utilice un estilo de segmento explícito, como Redondo o Texturizado, y en tiempo de ejecución, cambie el estilo del segmento a automático usando -[NSSegmentedCell setSegmentStyle:]

iPod

CORREGIDO: Al usar los botones de volumen en el dispositivo o en los auriculares, es posible que el control deslizante de volumen en la interfaz de usuario de las aplicaciones no se actualice aunque el nivel de volumen haya cambiado.

iTunes

La versión de iTunes que viene con la beta 5 no puede sincronizar dispositivos que tengan instalado el software beta 4. Para evitar este problema, haga lo siguiente:

Sincroniza cualquier dispositivo que tenga instalada la versión beta 4 con la versión de iTunes que viene con la versión beta 4.

Actualice iTunes a la versión que viene con la beta 5.

Conecte el dispositivo e instale el software beta 5. (Comprenda que es posible que vea un error de sincronización cuando conecte el dispositivo por primera vez).

Después de instalar el software beta 5, restaure desde su copia de seguridad que realizó en el paso 1.

Los vídeos comprados en iTunes Store no se reproducen en un AppleTV de segunda generación a través de AirPlay con iTunes 2.

Correo

Al cambiar el nombre de host de una cuenta de correo electrónico en la configuración, es posible que se vean mensajes en blanco en la bandeja de entrada unificada. Como solución alternativa, elimine y vuelva a agregar la cuenta en lugar de cambiar su nombre de host.

Actualización de software OTA

Si estás realizando una actualización de software OTA, necesitarás volver a sincronizar tus fotos con iTunes."

Fotos

CORREGIDO: Al restaurar bibliotecas de fotos desde una copia de seguridad de iTunes, es posible que algunas fotos no aparezcan en la aplicación Fotos después de la restauración. Haga una copia de seguridad de sus fotos antes de actualizar a iOS Beta 5.

Recordatorios

NUEVO: Si la sincronización de recordatorios está habilitada para una cuenta de Yahoo y no hay una recopilación de recordatorios en el servidor, el teléfono los recreará continuamente. Debido a un error del servidor de Yahoo, esa colección aparecerá como un calendario de eventos.

Simulador

Los servicios de ubicación no funcionan en el simulador de iOS 4.3 que se ejecuta en Mac OS 10.7 con Xcode 4.2.

trampolín

Las notificaciones push y locales para aplicaciones aparecen en el nuevo Centro de notificaciones de iOS 5. El Centro de notificaciones muestra notificaciones que se consideran "no leídas". Para dar cabida a las notificaciones push y locales que no tienen estado "no leído", los desarrolladores pueden usar el recuento de credenciales de su aplicación para activar una eliminación de notificaciones del Centro de notificaciones. Cuando una aplicación borra su recuento de credenciales (estableciéndola en cero), iOS 5 borrará sus notificaciones del Centro de notificaciones.

CORREGIDO: La clave UIPrerenderedIcon (en el archivo Info.plist) no se respeta en esta versión beta.

TiendaKit

CORREGIDO: la compra dentro de la aplicación no funcionará para los desarrolladores que prueban sus aplicaciones con iTunes Sandbox.

Automatización de UI

NUEVO: Existe un problema conocido al utilizar la API performTaskOnHost en un script de automatización de la interfaz de usuario. Si la tarea que se realiza con la API genera excesivamente (digamos, miles de líneas de texto) una salida estándar o un error estándar, la tarea puede bloquearse hasta que se alcance el tiempo de espera, momento en el cual se generará una excepción de JavaScript.

Las funciones lock() y unlock() de UIATarget han sido reemplazadas por lockForDuration( ) función.

A partir de iOS 5 beta 2, ahora puede activar la ejecución de un script de automatización de la interfaz de usuario en un dispositivo iOS desde el terminal host mediante la herramienta de instrumentos. El comando es:

instrumentos -w t

Al utilizar los instrumentos cli para la automatización de la interfaz de usuario, ahora puede apuntar a la plantilla de automatización predeterminada y pasar el script y la ruta de los resultados a la herramienta como opciones de variables de entorno. Por ejemplo:

instrumentos -w -t /Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate -es UIASCRIPT -e UIARESULTSPATH

kit de interfaz de usuario

A partir de iOS 5 beta 3, la propiedad exclusiva Touch de UIControl ha vuelto a su valor predeterminado original de NO.

Devolver nil desde el método tableView:viewForHeaderInSection: (o su equivalente en el pie de página) ya no es suficiente para ocultar un encabezado. Debe anular tableView:heightForHeaderInSection: y devolver 0.0 para ocultar un encabezado.

En la versión beta de iOS 5, la clase UITableView tiene dos métodos para mover una celda de una fila a otra con parámetros definidos. Estas API tienen:

moverSección:aSección:

moveRowAtIndexPath:aIndexPath:

Usando la clase UIWebView en Interface Builder, es posible configurar un color de fondo transparente en iOS 5. Los desarrolladores que compilan con el nuevo SDK pueden verificar en su XIB la configuración transparente de UIWebView.

En iOS 5 beta, las implementaciones de UINavigationBar, UIToolbar y UITabBar han cambiado para que el método drawRect: no se llame en instancias de estas clases a menos que esté implementado en una subclase. Las aplicaciones que han vuelto a implementar drawRect: en una categoría de cualquiera de estas clases encontrarán que no se llama al método drawRect:. UIKit verifica los enlaces para evitar que se llame al método en aplicaciones vinculadas antes de iOS 5, pero no admite este diseño en iOS 5 o posterior. Las aplicaciones pueden:

Utilice la API de personalización para barras en iOS 5 y posteriores, que es la forma preferida.

Subclase UINavigationBar (o las otras clases de barra) y anule drawRect: en la subclase.

Los métodos indexPathForRow:inSection:, sección y fila de NSIndexPath ahora usan NSInteger en lugar de NSUInteger, de modo que estos tipos coincidan con los métodos definidos en UITableView.

Los eventos táctiles no se reenvían a la vista en la propiedad cameraOverlayView de UIImagePickerController.

Hemos cambiado el comportamiento de scrollToRowAtIndexPath:atScrollPosition:animated: de modo que UITableViewScrollPositionTop y UITableViewScrollPositionBottom ahora se ajustan para las partes superior e inferior de la propiedad contentInset.

NUEVO: En versiones anteriores a iOS 5.0, la clase UIPopoverController establecería incondicionalmente las máscaras de tamaño automático de los controladores de vista que eran el controlador de vista de contenido del controlador emergente. También establecería incondicionalmente las máscaras de tamaño automático de las vistas de los controladores de vista insertados en un objeto UINavigationController que era el controlador de vista de contenido del controlador emergente. En iOS 5.0, la clase UIPopoverController ya no hará esto para aplicaciones vinculadas en iOS 5.0 o más tarde. Los desarrolladores deben asegurarse de que las máscaras de tamaño automático de las vistas estén configuradas correctamente para permitir un cambio de tamaño arbitrario dentro de cualquier contenedor, no solo los elementos emergentes. Una máscara de (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight) no sería descabellada.

El controlador de finalización para saveToURL:forSaveOperation:completionHandler: ahora se llama fuera del bloque de escritura coordinado, donde solía llamarse dentro.

NUEVO: El método autosaveWithCompletionHandler: ahora se llama solo para guardados basados ​​en períodos y es seguro regresar sin guardar. Sin embargo, los documentos deben guardarse si se invoca el método saveToURL:forSaveOperation:completionHandler:.

Safari y WebKit

En iOS 5, está disponible una nueva propiedad CSS heredada, -webkit-overflow-scrolling. El toque de valor permite al desarrollador web optar por el desplazamiento de estilo nativo en un elemento overflow:scroll. El valor predeterminado para esta propiedad es automático, que permite el desplazamiento con un solo dedo sin impulso.

CORREGIDO: En la versión beta 5, el acceso a sitios que utilizan certificados SSL del lado del cliente no funciona y puede provocar que la aplicación falle.

El marco WebKit ha adoptado un motor WebKit más nuevo, que se asemeja mucho a Safari 5.1. Algunas áreas a tener en cuenta con el nuevo marco WebKit en iOS:

Hay un nuevo analizador compatible con HTML5.

El ancho del diseño del texto puede cambiar ligeramente porque el comportamiento de redondeo de palabras ahora tiene una precisión basada en punto flotante.

Hay una validación mejorada de la campo de formulario, que incluye la eliminación de ceros a la izquierda y el formato de números.

Los eventos táctiles ahora son compatibles con los campos de entrada.

window.onerror ahora es compatible.

Hay un nuevo agente de usuario que no tiene información local en la cadena del Agente de usuario.

CORREGIDO: las URL ahora se canonizan haciendo que el esquema esté todo en minúsculas. Si se utiliza una URL falsa para pasar información de UIWebView al código nativo, asegúrese de que el esquema esté siempre en minúsculas o que el código nativo compare el esquema sin distinguir entre mayúsculas y minúsculas.

sincronización wifi

En iOS 5 beta 4 y posteriores, la sincronización inalámbrica ahora está disponible tanto en Windows como en Mac. (Este soporte requiere OS X 10.6.8 o Lion). Verá una opción para habilitar la sincronización inalámbrica cuando conecte su dispositivo a iTunes con el cable USB. Se recomienda que realice su sincronización inicial con un cable después de restaurar su dispositivo.

La sincronización inalámbrica se activa automáticamente cuando el dispositivo está conectado a la corriente y en la misma red que la computadora emparejada. O puede activar manualmente una sincronización desde iTunes o desde Configuración > General > Sincronización de iTunes (se requiere la misma red que la computadora emparejada).

Si encuentra problemas con las aplicaciones, los medios y/o las fotos sincronizadas con su dispositivo, puede restablecer y volver a sincronizar. En Configuración > General > Restablecer, elija Borrar todo el contenido y la configuración. Luego vuelva a conectarse a iTunes y sincronice nuevamente.

CORREGIDO: En algunos casos, es posible que su dispositivo no sincronice contactos, calendarios y configuraciones de cuentas, o no pueda realizar copias de seguridad en iTunes. Si esto sucede, reinicie su dispositivo y vuelva a sincronizarlo.

Xcode

En algunos casos, Xcode 4.2 Organizer no muestra un dispositivo que está en modo de restauración. Como solución alternativa, puedes utilizar iTunes para restaurar.

En iOS 5 beta 5, iOS Simulator no es compatible con versiones anteriores de iCloud Developer Seed para OS X. Se recomienda encarecidamente que actualice a la última versión de iCloud Developer Seed para garantizar la compatibilidad.

iOS 5.0 SDK admite simuladores de iOS 4.3 y iOS 5.0.

CORREGIDO: Xcode no puede crear una plantilla basada en páginas. Puede solucionar este problema agregando el marco Core Graphics a su proyecto.