Apple iOS 5 beta 3 Alongside iTunes 10.5 Released With Full Change Log
Apple released their iOS 5 beta 3 software for developers today. The new build is compatible for iOS devices including the iPhone 4, iPhone 3GS, iPad 2, iPad, Apple TV, and third and fourth-generation iPod touch devices. If you paid the $99/year developer access fee you can obtain the update now through Apple’s dev center site.
As expected, Apple also released the third beta of iTunes 10.5, which will be necessary for developers to install in order to utilize the new iOS 5 beta 3 software. We included the full change log below for developers and inquiring minds alike.
Notes and Known Issues
The following issues relate to using the 5.0 SDK to develop code.
Accounts
- When creating an iCloud account you can use any Apple ID provided it is a full email address and not a MobileMe account. If you have a MobileMe account, you can copy data from that account to an iCloud account to use during testing. 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.
- There is a problem finding a device using Find My iPhone on the MobileMe website (www.me.com) when switching from iCloud back to MobileMe. To workaround this issue:
- On the device go to Settings->Mail, Contacts, Calendar-><your_account>
@me.com
and Toggle Find My iPhone off and back on. Now the device should show up on MobileMe website.- It is recommended that you disable Bookmarks on multiple accounts. If they are enabled, the results might be undefined.
- NEW: In this beta the option of “Choosing a security question” is not working during an iCloud account setup.
AirPlay
- Starting in iOS 5, video content in applications and websites are AirPlay-enabled by default.
- iOS 5 supports AirPlay of video via AV Foundation.
- FIXED: The Apple TV screen saver may degrade mirroring performance over AirPlay. The screen saver can be disabled in Apple TV settings.
Apple TV
- 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.
Audio
- Using voice chat in iOS 5 requires setting the
kAudioSessionMode_VoiceChat
mode on the Audio Session, or setting theAVAudioSessionModeVoiceChat
mode on theAVAudioSession
object.CalDav
- FIXED: After creating a recurring event locally on the device, the device stops syncing after hitting an error on merge. Removing and re-adding the account acts as a workaround for this.
Calendar
- All MobileMe calendars were duplicated after turning calendar syncing off and back on.
- If you launch or manually refresh Calendars on an iPad, your calendars might disappear and you will have to tap “Show All Calendars” to display them again.
- NEW: Restoring from a Seed 1 backup or earlier will cause MobileMe/iCloud calendars not to sync. Subscribed calendars will show up in Calendars but none of your event calendars will appear in MobileCal. To workaround the problem please remove and re-add the account.
GameKit
- Match data for turn based matches is currently limited to 4 KB of data.
GameCenter
- If you have an existing Game Center account which has not yet gone through the first-time Game Center flow in iOS 5, you will encounter a crash when signing into a game’s login alert directly. The workaround for this is to launch Game Center to complete the first-time flow.
iBooks
- iBooks 1.2.2 may fail to display some text or images in books. Please update to iBooks 1.3 in the App Store.
iCloud Backup
- 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 suggest you also manually back up your device with iTunes.
- In the iOS 5 beta, support for data protection in iCloud Backup is unavailable. Apps that have protected files will not have any of their data or metadata backed up as a result.
- After restoring, you may not be able to back up again because the device still thinks it’s restoring. To workaround this issue try syncing apps or media that are missing form iTunes or try deleting your iCloud account and adding it back.
- If you delete your backup, the feature will be disabled but settings may still indicate that it is enabled and you will have to toggle the BackUp to Cloud switch in Settings.
- For compatibility reasons, this version of the iOS 5 beta requires that all files be backed up again, instead of only those files that have changed since your last backup. This may cause a warning that your account is over quota. In case the warning occurs, you can delete your oldest backup to free up space and then initiate a backup.
iCloud Storage
- 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.
- If your application is using the
NSMetadataQuery
class, you must set a predicate, even though the predicate itself is ignored.- The Foundation framework doesn’t include the team ID when looking for an app’s mobile documents container. The Team ID must be included at the beginning of the identifier string passed to the
URLForUbiquityContainerIdentifier:
method.- In this beta, the
setSortDescriptors:
method ofNSMetadataQuery
is not supported.- In this beta, if you want to use iCloud, you have 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.
- There are issues using the Cloud Storage document API in conjunction with protected data which can lead to data corruption.
- In this beta, document-based applications cannot always detect when files change, move, or are deleted out from underneath them.
- NEW: In this beta, file presenters (objects that adopt the
NSFilePresenter
protocol) do not receive some of the messages that they’re supposed to receive, especially:
presentedItemDidChange
presentedSubitemDidAppearAtURL:
presentedSubitemDidChangeAtURL:
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
NSFilePresenter
protocol.- 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
~/Library/Logs/CrashReporter/MobileDevice/DeviceName/DiagnosticLogs
.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.
iMessage
- NEW: iMessage beta 3 will be unable to communicate with iMessage users on beta 1. It works between beta 3 and beta 2.
- NEW: Modal alerts don’t appear for iMessages.
iTunes
- The version of iTunes that comes with beta 3 cannot sync devices that have the beta 2 software installed. To avoid this problem, do the following:
- Sync any devices that have beta 2 installed to the version of iTunes that came with beta 2.
- Upgrade iTunes to the version that comes with beta 3.
- Connect the device and install the beta 3 software. (Understand that you might see a failure to sync error when you first connect the device.)
- After installing the beta 3 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.
MMS
- Sending an MMS of large videos does not work.
Photo Adjustments
- 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.
Reminders
FIXED: The Reminders application does not send notifications for reminders that are based upon the entry (and/or exit) of a location if there is no date associated with the reminder.
Settings
- The “Back Up Now” button is enabled without the backup data class being enabled for the account.
- FIXED: If you bring up the keyboard of the terms in Settings->General->Software Update, you cannot dismiss it. You have to force quit Settings to get out.
- NEW: In this beta FaceTime icon is missing in Settings on the iPhones.
Simulator
- NEW: Location services are not functional in iOS 4.3 simulator running on Mac OS 10.7 with Xcode 4.2.
Springboard
- 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.
- NEW: 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.
UI Automation
- NEW: In iOS 5 beta 3, the first execution of a script after a reboot or erase install will likely fail. Subsequent attempts should succeed until the device is rebooted again.
- 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.
- 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.
- The
lock()
andunlock()
functions ofUIATarget
have been replaced with thelockForDuration(
<seconds>)
function.- Instruments overwrites the loaded automation script, even if another program is editing it.
- Starting 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:
instruments -w <device id> -t <template> <application>
UIKit
- NEW: Starting in iOS 5 beta 3, the
exclusiveTouch
property ofUIControl
has returned to its original default value ofNO
.- Returning
nil
from thetableView:viewForHeaderInSection:
method (or its footer equivalent) is no longer sufficient to hide a header. You must overridetableView:heightForHeaderInSection:
and return0.0
to hide a header.- In the iOS 5 beta, the
UITableView
class has two methods to move one cell from one row to another with defined parameters. These APIs are:
moveSection:toSection:
moveRowAtIndexPath:toIndexPath:
- Using the
UIWebView
class in Interface Builder, setting transparent background color is possible in iOS 5. Developers compiling against the new SDK can check their XIB for theUIWebView
transparent setting.- In the iOS 5 beta, the
UINavigationBar
,UIToolbar
, andUITabBar
implementations have changed so that thedrawRect:
method is not called on instances of these classes unless it is implemented in a subclass. Apps that have re-implementeddrawRect:
in a category on any of these classes will find that thedrawRect:
method isn’t called. UIKit does link-checking to keep the method from being called in apps linked before iOS 5 but does not support this design on iOS 5 or later. Apps can either:
- Use the customization API for bars that in iOS 5 and later, which is the preferred way.
- Subclass
UINavigationBar
(or the other bar classes) and overridedrawRect:
in the subclass.- The
indexPathForRow:inSection:
,section
, androw
methods ofNSIndexPath
now useNSInteger
instead ofNSUInteger
, so that these types match with methods defined onUITableView
.- There is a known issue with presenting a
UIVideoEditorController
object where it doesn’t show the selected video, which appears blank instead. In certain cases it may also crash.- Touch events are not getting forwarded to the view in the
cameraOverlayView
property ofUIImagePickerController
.- The
imagePickerController:didFinishPickingMediaWithInfo:
method ofUIImagePickerController
is not returning a URL to the video when recording is complete.- NEW: When creating a new appointment in calendar app on a device using 24 hr clock, you cannot select an hour value greater than 12. The date-time picker value sets current weekday to be the same as previous day (e.g: a An appointment on Tuesday will be set as Monday).
- FIXED: We have changed the behavior of
scrollToRowAtIndexPath:atScrollPosition:animated:
such thatUITableViewScrollPositionTop
andUITableViewScrollPositionBottom
now adjust for the top and bottom portions of thecontentInset
property.WebKit
- NEW: In iOS 5 beta 2, a new inherited CSS property,
-webkit-overflow-scrolling: value
, is available. The valuetouch
allows the web developer to opt in to native-style scrolling in anoverflow:scroll
element. The default value for this property isauto
.- The WebKit framework has picked up a newer WebKit engine, which closely matches Safari 5.1. Some areas to be aware of with the new WebKit framework on iOS:
- There is a new HTML5-compliant parser.
- Text layout width may change slightly because word-rounding behavior now has floating-point-based precision.
- There is improved validation of the
<input type=number>
form field, which includes removing leading zeros and number formatting.- Touch events are now supported on input fields.
window.onerror
is now supported.- There is a new user agent that does not have locale information in the User Agent string.
WiFi Syncing
- In iOS 5 beta 2, wireless syncing is available for the Mac. It requires iTunes 10.5 beta 2 and OS X 10.6.8 or Lion. You will see an option to enable wireless syncing when you connect your device to iTunes with the USB cable. It is recommended you perform your initial sync with a cable after restoring your device.
- Wireless syncing is triggered automatically when the device is connected to power and on the same network as the paired computer. Or, you can manually trigger a sync from iTunes or from Settings -> General -> iTunes Sync (same network as paired computer required). Be sure your device is plugged into a power source when performing wireless syncs.
- If you find issues with apps, media and/or photos synced to your device, you can reset then resync. From Settings -> General -> Reset, choose Erase all Content and Settings. Then reconnect to iTunes and sync again.
- FIXED: In this beta, iTunes may incorrectly report Photos as “Other” in the capacity bar. Photo syncing otherwise works as expected.
- NEW:In some cases, your device may fail to sync contacts, calendars and account settings, or back up to iTunes. If this happens, reboot your device and re-sync.
- NEW:In some cases, syncing photos may result in only thumbnails on your device. If this happens, unsync Photos then re-sync again.
Xcode
- In this beta, device restores using XCode are disabled. Please use iTunes only to back up and restore your device.
- In some cases, Xcode 4.2 Organizer does not display a device that is in restore mode. As a workaround you can use iTunes to restore.
- FIXED: On some desktop machines, Xcode’s memory usage inflates incredibly fast while restoring a device or copying an IPSW. As a workaround use iTunes to restore.
- FIXED: In this beta, crash logs (either unsymbolicated or symbolicated) do not appear in Xcode Organizer. To make them appear in the Xcode Organizer, you will have to rename the device.
- In iOS 5 beta 2, the iOS Simulator is not compatible with previous releases of the iCloud Developer Seed for OS X. It is highly recommended that you update to the latest iCloud Developer Seed to ensure compatibility.
iOS 5.0 SDK supports both iOS 4.3 and iOS 5.0 simulators.