iOS SDK Release Notes for iOS 5.0 beta 5
iOS SDK 5.0 provides support for developing iOS applications and includes the complete set of Xcode tools, compilers, and frameworks for creating applications for iOS and Mac OS X. These tools include the Xcode IDE and the Instruments analysis tool among many others.
With this software you can develop applications that run on iPhone, iPad, or iPod touch running iOS 5.0. You can also test your applications using the included iOS Simulator, which supports iOS 5.0. There are two Xcode iOS SDK 5.0 images, one for installing on a Macintosh computer running Mac OS X 10.6.7 (Snow Leopard) or later, the other for installing on a Macintosh computer running Mac OS X 10.7 (Lion).
This version of iOS is intended only for installation on devices registered with Apple’s developer program. Attempting to install this version of iOS in an unauthorized manner could put your device in an unusable state.
For more information and additional support resources, visit:
Please report any bugs not mentioned in the “Notes and Known Issues” section using the Apple Bug Reporter on the Apple Developer website (http://developer.apple.com/bugreporter/). Additionally, you may discuss these issues and iOS SDK 5.0 in the Apple Developer Forums: http://devforums.apple.com. You can also access more information about iCloud Beta for Developers at: http://developer.apple.com/icloud
Notes and Known Issues
The following issues relate to using the 5.0 SDK to develop code.
- When creating an iCloud account, you can use any Apple ID as long as it is a full email address and not a MobileMe account. If you have a MobileMe account, you can move that account to iCloud. You can find more information on iCloud at: http://developer.apple.com/icloud
- When setting up an iCloud or MobileMe account using the setup assistant and leaving Find My iPhone on, it might actually turn Find my iPhone off after the setup. Please verify in Settings/Mail, Contacts, Calendar/YourAccount that Find my iPhone is toggled On after leaving the setup assistant.
- NEW: Enabling iCloud services in Setup Assistant may not always be saved correctly. After completing Setup Assistant you should visit Settings > iCloud to verify the state of the iCloud account. If you have multiple iCloud or MobileMe accounts configured on the device you should also visit each of those accounts in Settings > Mail, Contacts, Calendar to verify each account.
- It is recommended that you disable Bookmarks on multiple accounts. If they are enabled, the results might be undefined.
- Starting in iOS 5, video content in applications and websites are AirPlay-enabled by default.
- iOS 5 supports AirPlay of video via AV Foundation.
- Apple TV Software beta enables users to mirror the contents of an iPad 2 to an Apple TV (2nd generation) using AirPlay. This beta software also enables Photo Stream on Apple TV so users can access photos stored in iCloud. Apple TV Software beta is being provided to test the latest AirPlay functionality with your iOS 5 apps and web sites. If you wish to install Apple TV Software beta on your device, you must first register your device UDID in the iOS Developer Program Portal.
- Birthday calendars are not currently available via the
icloud.comwebsite or in Windows. They will be available in a future release.
- NEW: The default calendar is still the On My iPhone calendar despite setting up an iCloud account during Setup Assistant. As a workaround, reset the default Calendar after finishing Setup Assistant in Settings > Mail, Contacts, Calendar > Default Calendar.
- NEW: Pushing iCloud Calendar data is not working in iOS. To sync your iCloud Calendar, launch the Calendar app or refresh the calendars manually using the Calendars button in the top left corner.
- Several filters have been added since beta 1. The current list now includes the following filters:
- Match data for turn based matches is currently limited to 4 KB of data.
- NEW: When logging in to Game Center, the password may clear and login may not complete. Trying a second time will succeed.
- NEW: In this beta, GameKit Invites may fail. As a workaround, try restarting the device.
- iBooks 1.2.2 may fail to display some text or images in books. Please update to iBooks 1.3 in the App Store.
- As this is beta software, it is recommended that you do not use the iCloud services to store any critical data or information. If you enable iCloud Backup, automatic backup with iTunes when syncing will be disabled. We also suggest that you manually back up your device with iTunes. Backups made with earlier versions of iOS 5 beta will soon become incompatible, and will no longer be available. It is strongly advised you upgrade to this version of the iOS 5 beta in order to continue backing up your devices. If you encounter errors restoring from a backup, or enabling a backup more than one hour after signing into iCloud, try deleting your iCloud account from Settings and adding it back. If errors persist, please try erasing your device and initiating the restore again.
- During the iOS 5 beta period, any documents stored on the servers might be purged periodically before GM. Therefore, it is highly recommended that you do not store any critical documents or information on the servers.
- NEW: Provisioning Profiles no longer need to be enabled for iCloud in the iOS Provisioning Portal. All newly generated provisioning profiles are now automatically enabled for iCloud. If you are using an Xcode managed Team Provisioning Profile, click refresh in the Xcode Organizer to obtain a new iCloud-enabled profile. To enable all other provisioning profiles for iCloud, simply regenerate your profiles in the iOS Provisioning Portal.
- If your application is using the
NSMetadataQueryclass, you must set a predicate, even though the predicate itself is ignored.
- In this beta, the
NSMetadataQueryis not supported.
- FIXED: To use iCloud prior to beta 5, you had to manually specify various container identifiers (your application’s Display set) within an Entitlements file for both of your Mac OS X and iOS projects.Starting in beta 5, to enable iCloud storage within your apps, simply click the “Enable Entitlements” checkbox in the Summary pane of your project. Xcode will create a custom entitlements file for your project that automatically includes your Team ID. You can add additional iCloud Container values as required by your application. (Note that you must regenerate your existing provisioning profiles, either with Xcode or in the iOS Provisioning Portal, to use iCloud storage.)If you specify a custom identifier string for your iCloud Key-Value Store or iCloud Container entitlement values, you no longer need to prepend your Team ID to the beginning of the string. Xcode will prepend your Team ID to these entries automatically
- The container identifier string you pass to the
NSFileManagerMUST include the team ID at the beginning of the string. As a convenience, if you pass
nil, Foundation uses the first document container ID specified in your app’s entitlements.
- There are issues using the Cloud Storage document API in conjunction with protected data which can lead to data corruption.
- FIXED: In this beta, document-based applications cannot always detect when files change, move, or are deleted out from underneath them.
- In this beta, file presenters (objects that adopt the
NSFilePresenterprotocol) do not receive some of the messages that they’re supposed to receive, especially:
You can workaround this by implementing the
relinquishPresentedItemToWriter:method and checking to see if the writer actually wrote when your file presenter reacquires. You can also use FSEvents to observe file system changes
- In this beta, messages about changes to files in a directory are not getting delivered to objects that adopt the
- While reporting a bug related to the iCloud storage interfaces, please include the logs collected during your debugging session. To generate these logs, you must install a special debug profile on your device.The debug profile can be obtained from http://connect.apple.com. This profile enables the generation of debug logs that are needed to diagnose any problems using iCloud storage. The instructions to collect the logs are:
- Install the profile. (The easiest way to do this is to mail it to yourself and open the attachment on their device.)
- Reproduce the bug.
- Sync with iTunes to pull the logs off your device.
- Attach the logs to your bug report. You can find the logs in
These logs can grow large very quickly, so you should remove the profile after you have reproduced the problem and pulled the logs for the bug report.
- NEW: File names are case-insensitive in OS X but case-sensitive in iOS. This can lead to problems when syncing files between the two. You should take steps on iOS to avoid creating files whose names differ only by case.
- iMessage beta 1 will be unable to communicate with iMessage users on beta 2 or later.
- NEW: When using the volume buttons on the device, or on headphones, the volume slider in the UI of applications may not update even though the volume level has changed.
- The version of iTunes that comes with beta 5 cannot sync devices that have the beta 4 software installed. To avoid this problem, do the following:
- Sync any devices that have beta 4 installed to the version of iTunes that came with beta 4.
- Upgrade iTunes to the version that comes with beta 5.
- Connect the device and install the beta 5 software. (Understand that you might see a failure to sync error when you first connect the device.)
- After installing the beta 5 software, restore from your the backup you made in step 1.
- Videos purchased from the iTunes Store do not play on a 2nd generation AppleTV over AirPlay with iTunes 10.5.
- FIXED: The
CLLocationManagerdoes not cause applications to be resumed or launched in the background for significant location change updates. However, if a backup from a previous software version (where an application was monitoring significant location changes) is restored to the device, significant location change monitoring will continue to cause that application to be resumed or launched in the background.
- FIXED: Forwarding a message with attachments included does not attach the file and the message compose screen does not change from “Loading….”
- NEW: When changing the host name of an email account in settings, blank messages may be seen in the unified inbox. As a workaround, delete and re-add the account instead of changing its host name.
- FIXED: Some songs are missing their album artwork after changing the device library via syncing.
- FIXED: In iOS 5.0 beta 4, several OpenGL ES extensions have been moved from the APPLE namespace to the EXT namespace, causing some API to be renamed. The altered extensions are EXT_color_buffer_half_float, EXT_occlusion_query_boolean, EXT_separate_shader_objects, EXT_shadow_samplers,EXT_texture_rg, EXT_debug_label, and EXT_debug_marker.
OTA Software Update
- If you are doing an OTA software update, you will need to re-sync your photos with iTunes.”
- FIXED: In this beta, iPhone 4 device cannot join personal hotspot even if it is on due to a non functional Wi-Fi tethering on these devices.
- FIXED: If you apply red-eye adjustments in iOS, and import your image into the iPhoto seed build, the red-eye adjustments will not appear on that image in iPhoto. As a result, subsequent syncing of your image back to the iOS device from iPhoto will not show the red-eye adjustments.
- NEW: When restoring photo libraries from an iTunes backup, some photos may not appear in the Photos application after restore. Please back up your photos before updating to iOS Beta 5.
- Location services are not functional in iOS 4.3 simulator running on Mac OS 10.7 with Xcode 4.2.
- Push and local notifications for apps appear in the new Notification Center in iOS 5. Notification Center displays notifications that are considered “unread.” In order to accommodate push and local notifications that have no “unread” status, developers can use their application badge count to trigger a clearing of notifications from Notification Center. When an application clears its badge count (by setting it to zero), iOS 5 will clear its notifications from Notification Center.
- FIXED: iOS 5.0 terminates VoIP applications that are resumed in the background for incoming network traffic with extreme frequency. Developers are encouraged to make sure all incoming data is read from VoIP sockets to avoid this condition.
- NEW: The
UIPrerenderedIconkey (in the
Info.plistfile) is not honored in this build.
- NEW: In-App purchase will not work for developers testing their apps with the iTunes Sandbox.
- FIXED: When tweeting your location from Safari and exiting before the location can be established, the location arrow will stay in the status bar. The arrow can be removed by killing Safari from the task switcher.
- FIXED: Instruments overwrites the loaded automation script, even if another program is editing it.
- FIXED: The play and record buttons in the Automation instrument script editor may not work properly after targeting an application that was launched by a trace session and has ended. They may also not work if you target an application that was suspended. If you run into this problem and it persists, you may need to close and reopen the trace document to get back into a functional state.
- FIXED: When capturing actions into a script using the Automation instrument, interfaces with web views or table cells that contain a high number of off screen elements may take an extremely long time before returning with an expression.
UIATargethave been replaced with the
- Starting in iOS 5 beta 2, you can now trigger the execution of an UI Automation script on an iOS device from the host terminal by using the instruments tool. The command is:
- When using the cli instruments for UI Automation you can now target the default Automation Template and pass the script and results path into the tool as environment variable options. For example:
-t /Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate -e UIASCRIPT