With iOS 9 set to launch on September 16th, Apple has actually launched the final beta construct, the Golden Master, to designers. Along with this beta is an all new preview build of iOS 9.1. The precise changes in iOS 9.1 aren’t yet understood, but we’ll keep this post updated with any modifications we discover in either build.
The GM construct of watchOS 2 has likewise been pushed out on the Designer Center.
The last beta variation of OS X El Capitan was likewise released. Update: Apple has pulled the El Capitan GM that was previously offered for download, altered the construct number listed on the Developer Center from 15A263e to 15A282b, and listed the download as “coming quickly.” The last beta release was build 15A279b.
Update 2: Apple has sent an email to Public Beta users providing directions on ways to download the El Capitan GM Prospect. The designer develop is offered on the Developer Center now too.
The iOS 9 GM change log points out no recognized concerns. The portion including the relevant changes is below. The iOS 9.1 includes assistance for the Live Photos, the Apple Pencil, and 3D Touch APIs.
Notes and Understood Issues
The following issues associate with utilizing iOS SDK 9.0 to establish code.
iOS 9 implements the UILaunchImages requirement; apps can not proclaim the very same launch image to support different interface orientations.
Users might be triggered twice for credentials on the very first In-App Purchase.
Some users will certainly be offered to turn on two-factor authentication on their Apple ID. For additional information about two-factor authentication see developer.apple.com/support/two-factor-authentication.
If you turn on two-factor authentication on your Apple ID, iTunes purchases on Mac and Windows and store purchases on Apple TELEVISION will require you to append a six-digit confirmation code to the end of your password the first time you use that device. The six-digit code will certainly show instantly on your iOS 9 or OS X El Capitan devices, or can be sent out to your trusted telephone number by means of a text message or telephone call.
The format of the postcode that is returned prior to full authorization has actually altered from iOS 8. Sometimes, it may be truncated from what was formerly being returned.
The canUseNetworkResourcesForLiveStreamingWhilePaused building has actually been included to AVPlayerItem. The default value is NO for apps linked on or after iOS 9.0 or OS X 10.11, however YES for apps that were connected earlier.
To lessen power usage, set this building to NO if you do not require playback state to remain up to date while stopped briefly.
AVQueuePlayer now supports a mixture of file-based media and HTTP Live Streaming media in its line up. Prior to this, you had to guarantee that all products in the line up were of the very same type.
For apps connected against iOS 9 or later on, the media disruption habits for AV(Queue)Player has altered.
Before iOS 9, apps could interrupt other media-playing customers by associating or adding AVPlayerItem to AVPlayer or by customizing the time or date of the present AVPlayerItem (utilizing the seekToTime: or seekToDate: methods). In iOS 9, these operations interrupt only when AVPlayer object’s playback rate is altered to a non-zero value through the rate property or play method.
Photo in Photo playback may stop and the Image in Picture button may vanish when using AVPlayerViewController for video playback and replacing the underlying AVPlayer item’s existing product making use of replaceCurrentItemWithPlayerItem:.
The cancelPictureInPicture method is deprecated.
Keep in mind
The retrievePeripherals: and retrieveConnectedPeripherals approaches were deprecated in iOS 7.0 and removed in iOS 9.0. Apps that use these methods will crash on launch or upon matching a device.
There is new Structure API that can be made use of to discover if the device remains in Low Power Mode. See the upgraded Energy Effectiveness Guide for iOS Apps for information.
Horizontal location constraints must regularly reference either left/right or leading/trailing characteristics. For apps linked versus the iOS 9 SDK, NSLayoutConstraint will certainly throw an exception if you attempt to produce a restraint between a leading/trailing characteristic and a left/right characteristic.
The fetchAllChanges home on CKFetchRecordChangesOperation has actually been deprecated, and will be gotten rid of in iOS 9.
The setting to make use of a third-party keyboard as the default keyboard for text input is not constantly respected.
iCloud Keychain will certainly not sync passwords and charge card with betas of iOS 9 and OS X El Capitan.
Keep in mind
When users plug in headphones or connect to Bluetooth or CarPlay in their automobile, their favorite music app appears on the lock screen or the vehicle display screen.
For your app to be eligible for this, it must release to Now Playing upon launch and consistently keep a Now Playing state. A typical practice upon launch is to continue playing the track from when the app was last left.
Some tracks you have actually formerly purchased will not play.
Workaround: Sign from the Store and then sign back in.
When working out a TLS/SSL connection with Diffie-Hellman crucial exchange, iOS 9 requires a 1024-bit group or bigger. These connections include:
Protect Web (HTTPS)
Enterprise Wi-Fi (802.1 X)
Safe and secure e-mail (IMAP, POP, SMTP)
Printing servers (IPPS)
DHE_RSA cipher suites are now disabled by defaults in Secure Transport for TLS clients. This might trigger failure to connect to TLS servers that only support DHE_RSA cipher suites. Applications that explicitly allow cipher suites utilizing SSLSetEnabledCiphers are not affected and will still use DHE_RSA cipher suites if explicitly made it possible for.
Safari might see a “Safari cannot develop a safe connection to the server” error page. Safari and other customers of CFNetwork API (NSURLSession, NSURLConnection, CFHTTPStream, CFSocketStream and Cocoa equivalent) will reveal “CFNetwork SSLHandshake failed” mistake in Console.
Playing a video while ReplayKit recording is ON stops the ongoing recording session and the video fails to play.
If you have actually set a region that doesn’t match your language, brings back from iCloud Backup might not progress.
Workaround: Throughout recover, alter your region to match your language. You can alter it back after the restore is over.
When Done is tapped in a SFSafariViewController, it is immediately dismissed. You not need to dismiss it in the delegate technique safariViewControllerDidFinish:.
“Discover on Page” is now offered both from the Share sheet along with in the Completions List.
Request Desktop Website has actually moved; it’s now in the Share sheet instead of Favorites.
Web Browser– to– Native App Handoff does not work with your app if the apple-app-site-association file isn’t really correctly formatted and signed. For more info, see Handoff Programs Guide and Shared Web Qualifications Reference.
Keep in mind
DHE_RSA cipher suites are now disabled by default in Secure Transport for TLS clients. This may trigger failure to connect to TLS servers that only support DHE_RSA cipher suites. Applications that clearly enable cipher suites making use of SSLSetEnabledCiphers are not influenced and will certainly still make use of DHE_RSA cipher suites if clearly made it possible for.
If initialized with a nil nibName value, UIViewController.nibName has actually constantly searched for a nib with a similar name as the view controller’s class, and defaulted to that value if loadView is not overridden.
Prior to iOS 9, subclasses of UIViewController that were written in Swift would need that their corresponding nib file name include the module prefix.
To improve flexibility in the occasion of refactoring, you can leave out the module name from the nib filename in code that runs in iOS 9. UIViewController.nibName still prefers a name which 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 typical), we apply fitting-size restrictions (width/height = 0 at UILayoutPriorityFittingSizeLevel) instead of required size restrictions (width/height required to match current size):
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 set translatesAutoresizingMaskIntoConstraints to NO on that view– or created constraints that have one product in its subtree and one product outside it), table view cell material view, and so on.
The last ancestor (that is, top-level view) of the receiver has actually translatesAutoresizingMaskIntoConstraints set to NO.
The top-level view has a subview that is not a UIViewController-owned design guide that also has actually translatesAutoresizingMaskIntoConstraints set to NO.
Under condition 1, we create a temporary design engine from the high-level view and include all the constraints from the subtree to it. The issue is that we have to include some constraints that make the size of the top-level view unambiguous in the layout engine. The old habits (prior to iOS 9) was that we would add restraints to limit the size of the high-level view to its existing bounds for any circumstance under condition 1. This truly does not make sense when you include conditions 2 and 3 and can result in unsatisfiable-constraints logging and broken layout.
So in iOS 9, for this unique case just, we utilize fitting-size restrictions instead.
This suggests that if you are sending out layoutIfNeeded to a view under these conditions in iOS 9, you should make sure that either you have adequate restrictions to establish a size for the high-level view (which usually, though not always, is the receiver) or you need to add short-term size constraints to the high-level view of design size you want before sending layoutIfNeeded, and eliminate them later.
For apps linked on iOS 9 or later on, UITextView will certainly now constantly properly constrict its NSTextContainer to the fit inside the view when scrolling is disabled. Overflowing lines that lie beyond an NSTextContainer, even partly, are not rendered.
In previous iOS releases, the NSTextContainer sometimes was not restricted in size. This implied that logically overruning lines were erroneously rendered. If you are seeing formerly rendered lines at the end of your text view no longer rendered after connecting your app against iOS 9, this behavior modification is the likely cause. You can correct this by making your UITextView bigger, or perhaps by adjusting the bottom value of the text view’s textContainerInset home.
There is a redesigned UI for printing that consists of a print preview (provided from UIPrintInteractionController or UIActivityViewController). For apps that supply printing products or use just built-in UIPrintFormatter things (such as UISimpleTextPrintFormatter, UIMarkupTextPrintFormatter, UIWebViewPrintFormatter, or the UIViewPrintFormatter of any system-provided view), nothing added is needed for the print preview to show.
Apps that subclass UIPrintPageRenderer or UIPrintFormatter to draw material for printing should be developed with the iOS 9 SDK for the preview to show. The behavior of UIPrintPageRenderer has actually been upgraded to call drawPageAtIndex: inRect: multiple times with possibly different page sizes and margins. Different methods on UIPrintPageRenderer may be called from a non-main thread, however never ever from several threads concurrently.
UIPickerView and UIDatePicker are now resizable and adaptive– previously, these views would implement 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.
User interfaces that count on the old enforcement of the default size will likely look wrong when put together for iOS 9. Any problems encountered can be dealt with by totally constraining or sizing picker views to the desired size instead of depending on implicit habits.
Keep in mind
The if-domain and unless-domain value strings only match the specific domain. To match the domain and any subdomains, begin the string with the asterisk character (*).
Filed under: Apple Watch, iOS, Mac Tagged: Apple watch, beta, iOS, iOS 9, iOS 9.1, iPad, Watch
For additional information about iPad, iOS, and iOS continue reading at 9to5Mac.
What do you think? Go over “Apple releases iOS 9, watchOS 2, El Capitan GM seeds, disperses first beta of iOS 9.1” with our community.