ios 9 beta 4 release notes

13
iOS SDK Release Notes for iOS 9 Beta 4 Important: This is a preliminary document for an API or technology in development. Apple is supplying this information to help you plan for the adoption of the technologies and programming interfaces described herein for use on Apple-branded products. This information is subject to change, and software implemented according to this document should be tested with final operating system software and final documentation. Newer versions of this document may be provided with future betas of the API or technology. Contents: Introduction Bug Reporting Autosubmission of Diagnostic and Usage Data Notes and Known Issues Introduction iOS SDK 9.0 provides support for developing iOS apps. It is packaged with a complete set of Xcode tools, compilers, and frameworks for creating apps for iOS and OS X. These tools include the Xcode IDE and the Instruments analysis tool, among many others. With this software you can develop apps for iPhone, iPad, or iPod touch running iOS 9. You can also test your apps using the included Simulator, which supports iOS 9. iOS SDK 9.0 requires a Mac computer running OS X v10.10.3 (Yosemite) or later. This version of iOS is intended for installation only on devices registered with the Apple 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 http:// developer.apple.com/programs/ios/. Bug Reporting For issues not mentioned in the Notes and Known Issues section, please file bugs through the Apple Developer website (https://

Upload: nextsmartphone

Post on 07-Sep-2015

122 views

Category:

Documents


4 download

DESCRIPTION

IOS 9 Beta 4 Release Notes

TRANSCRIPT

  • iOS SDK Release Notes for iOS 9 Beta 4Important:This is a preliminary document for an API or technology in development. Apple is supplying this information to help you plan for the adoption of the technologies and programming interfaces described herein for use on Apple-branded products. This information is subject to change, and software implemented according to this document should be tested with final operating system software and final documentation. Newer versions of this document may be provided with future betas of the API or technology.

    Contents: Introduction Bug Reporting Autosubmission of Diagnostic and Usage Data Notes and Known Issues

    IntroductioniOS SDK 9.0 provides support for developing iOS apps. It is packaged with a complete set of Xcode tools, compilers, and frameworks for creating apps for iOS and OS X. These tools include the Xcode IDE and the Instruments analysis tool, among many others.With this software you can develop apps for iPhone, iPad, or iPod touch running iOS 9. You can also test your apps using the included Simulator, which supports iOS 9. iOS SDK 9.0 requires a Mac computer running OS X v10.10.3 (Yosemite) or later.This version of iOS is intended for installation only on devices registered with the Apple 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 http://developer.apple.com/programs/ios/.

    Bug ReportingFor issues not mentioned in the Notes and Known Issues section, please file bugs through the Apple Developer website (https://

  • developer.apple.com/bug-reporting/ios/). Additionally, you may discuss these issues and iOS SDK 9.0 in the Apple Developer Forums: https://forums.developer.apple.com/community/pre-release/ios-9-beta. To get more information about iCloud for Developers, go to http://developer.apple.com/icloud.

    Autosubmission of Diagnostic and Usage DataBy default, the iOS 9 beta automatically sends anonymous diagnostic and usage data back to Apple. This includes information about crashes, freezes, kernel panics, and information about how you use Apple and third-party software, hardware, and services. This information is used to help Apple improve the quality and performance of its products and services. You can stop autosubmission of diagnostics and usage data by going to Settings > Privacy > Diagnostics and Usage > Dont Send.

    Notes and Known IssuesThe following issues relate to using iOS SDK 9.0 to develop code.AccessoriesKnown IssueLightning video dongles dont work with this beta.App ExtensionsFixed in Beta 4Debugging an action or sharing extension can cause the extension to be missing in the UIActivityViewController object.App StoreNoteiOS 9 enforces the UILaunchImages requirement; apps can no longer declare the same launch image to support different interface orientations.Known IssueUsers might be prompted twice for credentials on the first In-App Purchase.Apple IDNoteSome users will be offered the option to upgrade their Apple ID to use two-factor authentication. For more information about two-factor

  • authentication seedeveloper.apple.com/support/two-factor-authentication. Two-factor authentication is not supported on iOS 9 betas prior to beta 3.Fixed in Beta 4

    Attempting to create a new Apple ID via Game Center may cause a crash.

    If you enter an incorrect verification code for a two-factor authentication account in Setup Assistant, it may hang.

    During Setup Assistant, tapping Cancel on the prompt that prompts you to enter the code for two-factor authentication will result in getting stuck at the login screen.

    Apps that use app-specific passwords cause multiple notifications if your account uses two-factor authentication.

    Known Issues You may not be able to create a new Apple ID in Settings or

    Setup Assistant.Workaround: Create a new iCloud account on iCloud.com.

    iForgot links may work intermittently.Workaround: Please try again.

    If you upgrade your Apple ID to use two-factor authentication, iTunes purchases on Mac and Windows and store purchases on Apple TV will require you to append a six-digit verification code to the end of your password on every purchase. The six-digit code will display automatically on your iOS 9 or OS X El Capitan devices, or can be sent to your trusted phone number via a text message or phone call.

    If your Apple ID uses two-factor authentication, you may not be able to sign in to services that use Apple ID on iOS 9 and OS X El Capitan beta installations earlier than beta 3.

    If you disable two-factor authentication and set a new password at iForgot.apple.com, the password requirements are not indicated so your password may not be accepted.Workaround: Make sure your password meets these requirements: Have at least one lowercase letter Have at least one uppercase letter Have at least one number Your password must not contain more than two

    consecutive identical characters Not be the same as the account name Be at least 8 characters Not be a common password

  • You cannot manage your two-factor authentication trusted devices at appleid.apple.com.Workaround: You can find and manage trusted devices in Settings > iCloud > yourName > Devices.

    Removing a device from your account removes it as a trusted device for two-factor authentication, but will not sign out of any services or permanently remove it from the device list.Workaround: To fully remove a device, click Remove From Account then sign out of iCloud in device Settings of the device you want to remove.

    AudioFixed in Beta 4The OpenAL framework is not available.AVFoundationNotes

    The canUseNetworkResourcesForLiveStreamingWhilePaused property has been added to AVPlayerItem. The default value is NO for apps linked on or after iOS 9.0 or OS X 10.11, but YES for apps that were linked earlier.To minimize power usage, set this property to NO if you do not need playback state to stay up to date while paused.

    AVQueuePlayer now supports a mixture of file-based media and HTTP Live Streaming media in its queue. Prior to this, you had to ensure that all items in the queue were of the same type.

    For apps linked against iOS 9 or later, the media interruption behavior for AV(Queue)Player has changed.Before iOS 9, apps could interrupt other media-playing clients by associating or adding AVPlayerItem to AVPlayer or by modifying the time or date of the current AVPlayerItem(using the seekToTime: or seekToDate: methods). In iOS 9, these operations interrupt only when AVPlayer objects playback rate is changed to a non-zero value through the rateproperty or play method.

    Picture in Picture playback might stop and the Picture in Picture button might disappear when using AVPlayerViewController for video playback and replacing the underlyingAVPlayer objects current item using replaceCurrentItemWithPlayerItem:.

    The AVPictureInPictureController interface and the

  • cancelPictureInPicture method are deprecated.CalendarKnown IssueCalendar may hang if you tap Ignore on a suggested event.CameraFixed in Beta 4You cant take photos in the Camera app using the side volume buttons with this beta.CarPlayKnown IssueThe Home button may not always work.CBCentralManagerNoteThe retrievePeripherals: and retrieveConnectedPeripherals methods were deprecated in iOS 7.0 and removed in iOS 9.0. Apps that use these methods will crash on launch or upon pairing an accessory.DictationFixed in Beta 4Dictation works the first time, but not subsequent times.Family SharingFixed in Beta 4

    Adding a family member inline fails.Workaround: Use invite to add family members.

    Ask To Buy notifications dont respond when tapped.File ProvidersFixed in Beta 4On certain devices, the Document Picker is not displayed. Instead, you just see a white screen.FoundationNotes

    There is new Foundation API that can be used to detect if the device is in Low Power Mode. See the updated Energy Efficiency Guide for iOS Apps for details.

    Horizontal location constraints should consistently reference

  • either left/right or leading/trailing attributes. For apps linked against the iOS 9 SDK, NSLayoutConstraint will throw an exception if you attempt to create a constraint between a leading/trailing attribute and a left/right attribute.

    GLKitFixed in Beta 4GLKMesh and GLKMeshBuffer objects initialize incorrectly in this beta, which limits the use of GLKit with Model I/O.HandoffFixed in Beta 4Handoff does not work with an iOS 9 device that does not have a passcode set.HealthKitKnown IssueIn rare circumstances, it is possible for the health database to be deleted during an upgrade to a beta build.Workaround: To make sure the health database is not lost, make an encrypted iTunes backup prior to installing this beta.Although keeping the device unlocked for the duration of the upgrade process reduces the risk of the database being destroyed, its recommended that you create a backup so that you can recover the database if you encounter this issue.Home SharingKnown Issues

    If you have an empty music library, you will be unable to enable or disable Home Sharing in Music.

    The Home Sharing option doesn't always appear in My Music.iCloud BackupFixed in Beta 4In rare cases, restoring from an iCloud backup will not restore your applications.iCloud DriveNoteThe fetchAllChanges property on CKFetchRecordChangesOperation has been deprecated, and will be

  • removed in iOS 9.KeyboardsNoteRussian, Turkish, and Korean QuickType keyboards require iOS 9 beta 2 or later.Known IssueIf you use a complex passcode on an iPad, some panes in Settings will now show the keyboard.KeychainKnown Issues

    iCloud Keychain will not sync passwords & credit cards with previous betas of iOS 9 and OS X El Capitan.

    You may not be able to accept a Suggested Password when creating a new account.Workaround: You need to designate a password yourself.

    You may be unable to join an existing iCloud Keychain circle using iCloud Security Code and SMS Verification Code.Workaround: Approve from another device.

    After changing your iCloud password, you may see an iCloud Keychain Reset prompt.Workaround: Re-enable iCloud Keychain.

    If you have two-step verification enabled on your AppleID and then change your iCloud Keychain or iCloud Security Code on a non-trusted device, you see a Verification Failed error.Workaround: Log out of iCloud, log back into the account, and enable iCloud Keychain.

    If your iCloud account uses two-factor authentication, you will get a sign-in alert on all logged-in iOS 9 or OS X El Capitan devices whenever there is a change in the phone number in Settings > iCloud > Keychain > Advanced.

    MailKnown IssueA Yahoo mail account may periodically display Cannot get mail.Maps

  • Known IssueIf you use Siri to get driving, walking, or transit directions, you may see a failure with a dialog that says Current Location not Available.Workaround: Toggle Wi-Fi and then try again. Alternatively, get directions in Maps directly without using Siri.MessagesKnown Issues

    When recording audio messages, the audio glyphs are not shown. This occurs in both quick reply and in the Messages app.

    When you send an audio message, it may be difficult to begin playback.

    MetalKitFixed in Beta 4MTKMesh and MTKMeshBuffer objects initialize incorrectly in this beta, which limits the use of MetalKit with Model I/O.MusicFixed in Beta 4

    The Apple Music signup screen may not display correctly. It may not be possible to Love an album or playlist.

    NoteWhen users plug in headphones or connect to Bluetooth or CarPlay in their car, their favorite music app appears on the lock screen or the car display.For your app to be eligible for this, it must publish to Now Playing upon launch and consistently maintain a Now Playing state. A common practice upon launch is to continue playing the track from when the app was last exited.Known Issues

    The share sheet may not appear when sharing tracks from Apple Music.

    The New tab may not load if you are not signed into Apple Music.NetworkingNoteWhen negotiating a TLS/SSL connection with Diffie-Hellman key exchange, iOS 9 requires a 1024-bit group or larger. These connections include:

    Secure Web (HTTPS)

  • Enterprise Wi-Fi (802.1X) Secure e-mail (IMAP, POP, SMTP) Printing servers (IPPS)

    PhoneFixed in Beta 4

    Call history may be lost upon upgrade to this beta. Voicemail may be unavailable after an erase install.Workaround:

    Reboot the device.

    Photo BoothKnown IssuePhotos taken with Photo Booth are not saved.ReplayKitFixed in Beta 4YouTube.framework is missing from ReplayKit.SafariFixed in Beta 4If you use Autofill on iPad, passwords may not be automatically entered into login fields.Notes

    Find on Page is now available both from the share sheet as well as in the Completions List.

    Request Desktop Site has moved; its now in the Share sheet instead of Favorites.

    Web BrowsertoNative App Handoff does not work with your app if the apple-app-site-association file isnt correctly formatted and signed. For more information, see Handoff Programming Guide and Shared Web Credentials Reference.

    SiriKnown Issues

    Siri cannot change Settings options. Siri Eyes Free may not work. You are unable to create, view, or edit notes using Siri.

    SpotlightFixed in Beta 4Tapping a Mail message, Maps favorites, Note, or Message in search results does not open the app on some devices.

  • Known IssueAfter upgrading to this beta, some contacts are not searchable in Spotlight.TelephonyFixed in Beta 4After purchasing a cellular data plan on an iPad, it may display an alert that indicates the plan has expired.Workaround: Wait a few minutes, then toggle airplane mode.UIKitNotes

    If initialized with a nil nibName value, UIViewController.nibName has always looked for a nib with a similar name as the view controllers class, and defaulted to that value ifloadView is not overridden.Prior to iOS 9, subclasses of UIViewController that were written in Swift would require that their corresponding nib file name include the module prefix.To improve flexibility in the event of refactoring, you can omit the module name from the nib file name in code that runs in iOS 9 beta 4 and later. UIViewController.nibName still prefers a name that contains the module prefix, but falls back to an unqualified name if a nib with the fully-qualified name is not found.

    In iOS 9, when layoutIfNeeded is sent to a view and all of the following conditions are satisfied (which is not common), we apply fitting-size constraints (width/height = 0 atUILayoutPriorityFittingSizeLevel) instead of required size constraints (width/height required to match current size):

    1. The receiver is not yet in the subtree of a view that hosts a layout engine, such as window, view controller view (unless you have settranslatesAutoresizingMaskIntoConstraints to NO on that viewor created constraints that have one item in its subtree and one item outside it), table view cell content view, and so on.

    2. The final ancestor (that is, top-level view) of the receiver has translatesAutoresizingMaskIntoConstraints set to NO.

    3. The top-level view has a subview that is not a UIViewController-owned layout guide that also has

  • translatesAutoresizingMaskIntoConstraints set to NO.

    Under condition 1, we create a temporary layout engine from the top-level view and add all the constraints from the subtree to it. The problem is that we need to add some constraints that make the size of the top-level view unambiguous in the layout engine. The old behavior (prior to iOS 9) was that we would add constraints to restrict the size of the top-level view to its current bounds for any situation under condition 1. This really doesnt make sense when you add conditions 2 and 3 and can result in unsatisfiable-constraints logging and broken layout.So in iOS 9, for this special case only, we use fitting-size constraints instead.This means that if you are sending layoutIfNeeded to a view under these conditions in iOS 9, you must be sure that either you have sufficient constraints to establish a size for the top-level view (which usually, though not always, is the receiver) or you must add temporary size constraints to the top-level view of layout size you desire before sendinglayoutIfNeeded, and remove them afterward.

    For apps linked on iOS 9 or later, UITextView will now always correctly constrict its NSTextContainer to the fit inside the view when scrolling is disabled. Overflowing lines that lie outside of an NSTextContainer, even partially, are not rendered.In previous iOS releases, the NSTextContainer sometimes was not constricted in size. This meant that logically overflowing lines were erroneously rendered. If you are seeing previously rendered lines at the end of your text view no longer rendered after linking your app against iOS 9, this behavior change is the likely cause. You can remedy this by making your UITextView larger, or perhaps by adjusting the bottom value of the text view's textContainerInset property.

    There is a redesigned UI for printing that includes a print preview (presented from UIPrintInteractionController or UIActivityViewController). For apps that provide printing items or use only built-in UIPrintFormatter objects (such as UISimpleTextPrintFormatter, UIMarkupTextPrintFormatter, UIWebViewPrintFormatter, or theUIViewPrintFormatter of any system-provided view), nothing additional is needed for the print preview to display.Apps that subclass UIPrintPageRenderer or UIPrintFormatter to draw content for printing must be built with the iOS 9 SDK for the preview to display. The behavior

  • ofUIPrintPageRenderer has been updated to call drawPageAtIndex:inRect: multiple times with potentially different page sizes and margins. Various methods onUIPrintPageRenderer may be called from a non-main thread, but never from multiple threads concurrently.

    UIPickerView and UIDatePicker are now resizable and adaptivepreviously, these views would enforce a default size even if you attempted to resize them. These views also now default to a width of 320 points on all devices, instead of to the device width on iPhone.Interfaces that rely on the old enforcement of the default size will likely look wrong when compiled for iOS 9. Any problems encountered can be resolved by fully constraining or sizing picker views to the desired size instead of relying on implicit behavior.

    Known Issues Instances of UIViewController classes that are defined in the

    UIKit library and are created with a nil nibBundle attempt to find their nib inside the UIKit framework instead of the app's main bundle.Workaround: Pass [NSBundle mainBundle] for the nibBundle argument instead of nil.

    Apps linked to versions of iOS earlier than iOS 8 may display incorrectly. Symptoms include cropping and displaying only in a small section of the screen.

    Volume Purchase ProgramKnown IssueApps that are distributed through VPP and are licensed to a device won't launch.Watch AppFixed in Beta 4Tapping Cancel does not work in the iForgot work flows in Watch Setup Assistant.Known IssuePairing iOS 9 beta 3 or 4 with watchOS 2 beta 1 or 2 requires you to sign out of your AppleID in Messages prior to pairing and to skip iCloud sign-in during pairing. Pairing with watchOS 2 beta 3 and watchOS 1 is not impacted.Webkit

  • NoteThe if-domain and unless-domain value strings only match the exact domain. To match the domain and any subdomains, begin the string with the asterisk character (*).