iOS 10 beta 4 a fost lansat cu doar cateva momente in urma de catre compania Apple, aceasta versiune a sistemului de operare fiind oferita dezvoltatorilor de aplicatii pentru platforma iOS la doua saptamani distanta de cea anterioara, deci Apple isi pastreaza cursul standard de lansare a actualizarilor pentru iOS.
Avand in vedere ca vorbim despre un update lansat prin sistemul Software Update, Actualizare Software, dezvoltatorii sau utilizatorii care au instalat versiunea anterioara, o pot instala si pe cea noua folosind aplicatia Settings, Configurari, asa ca nu trebuie sa descarcati vreun ipsw, insa daca aveti versiunea public beta, va trebui sa asteptati.
In versiunea anterioara a iOS 10, compania Apple a implementat foarte multe schimbari pentru sistemul sau de operare, asa ca ne putem astepta ca inclusiv acum sa avem parte de surprize placute, iar in acest articol va voi detalia toate noutatile pe care cei din Cupertino le-au pregatit pentru noi.
Noutatile iOS 10 beta 4
Deocamdata o lista de schimbari nu a fost publicata de catre compania Apple pentru iOS 10 beta 4, insa sunt sigur ca in urmatoarele cateva zeci de minute o vom avea disponibila si vom afla inclusiv ce fel de schimbari interne sunt oferite, cei din Cupertino rezolvand in principal buguri si imbunatatind performantele.
Iata ce noutati include iOS 10 beta 4 :
- iOS 10 are acum o pagina cu informatii privind functiile pe care le ofera Control Center.
- O serie de wallpaper-uri au fost sterse de catre compania Apple, iar cel standard al iOS 8 este disponibil pentru cei interesati.
- Aplicatia Health, Sanatate, are modificata usor interfata pentru vizualizarea clipurilor video recomandate.
- Animatiile pentru deschiderea folderelor sunt mai rapide.
- Noi caractere emoji au fost implementate.
- A fost eliminata vibratia rulata la blocarea terminalelor.
UPDATE: watchOS 3.0 beta 4 si tvOS 10 beta 4 au fost lansate.
UPDATE 2: macOS Sierra beta 4 a fost deasemenea lansat.
Functionality not in iOS 10 beta 4
• Faces in the Photos app do not sync across your devices.
• Functionality that requires adoption from App Store apps, such as iMessage apps, SiriKit, and
Maps extensions, will not be available until those apps are able to adopt and submit to the Store.
Fixed in this Release
Audio apps in CarPlay no longer display a black screen.
Upgrading an audio call to a FaceTime video call will now route audio to the built-in speaker.
• Tapping on the name in Now Playing now takes you to the album page.
• Music app will now remember where you were or what was playing if the app was force quit.
• Music on CarPlay will now update the current song while listening to Apple Music radio stations.
Call Handoff to iPhone from a secondary device such as Mac or iPad now behaves as expected.
Thumbnails of screenshots taken on 9.7-inch iPad Pro will no longer display with inverted colors.
• Siri will now make emergency calls when asked.
• When using US English Siri voices, street numbers at the beginning of phrases will now be read
Passes in Wallet will no longer display graphical artifacts.
Widgets will now work in the Simulator on subsequent installs.
Notes and Known Issues
Devices may panic when using iPhone 6s Smart Battery Case.
While testing In-App Purchases in the sandbox, the first authentication dialog may appear twice.
Workaround: Fill each of the authentication dialogs.
When setting up an Apple TV using Tap to Setup on an iOS device, you may not be able to proceed
beyond the Network Connected screen.
Workaround: Tap the Menu button to go back, then proceed forward through the setup process again.
In iOS 10 beta 3, the names of the optional AVCapturePhotoCaptureDelegate methods
didFinishProcessingPhoto and didFinishProcessingRawPhoto were changed to
s:bracketSettings:error:, respectively. Code that uses the previous names (such as the WWDC
version of the AVCamManual sample project) will continue to compile, but the older delegate callbacks
will not execute.
• Apple reserves two-letter prefixes for use in framework classes. When naming your own classes,
please use a three-letter prefix. The guidelines can be reviewed here:
Failure to follow these guidelines could result in your app crashing during beta software releases.
• Upon recompiling with iOS 10.0, calling [NSObject valueForKey:] with a nil key throws an
exception. Previously, this led to undefined behavior; now, it causes your app to crash.
• Referencing a system font by name in a call to +[UIFont fontWithName:size:] causes a
crash. For more information, see https://developer.apple.com/videos/play/wwdc2015/804/
• To improve customer privacy, https:// URLs, NSURLSession, and NSURLConnection no
longer support RC4 cipher suites during the TLS handshake. Affected apps and services should
upgrade web servers to use more modern cipher suites.
• Apps may hang if they change a superview’s geometry in viewWillLayoutSubviews or
• NSURLConnection disallows connections that use TLS protocol versions lower than the protocol
version specified by an ATS policy via the NSExceptionMinimumTLSVersion or
NSThirdPartyExceptionMinimumTLSVersion keys. Affected apps and services should
upgrade web servers to use more modern TLS protocol versions.
• Third party apps may not be able to play back Music if the Music app has been removed.
Workaround: Restore the Music app from the App Store.
Some customers using Bluetooth Low Energy-based hearing aids with an iPhone that is also connected
to an Apple Watch may hear occasional audio dropouts or skips.
• You may experience disconnects while connected to CarPlay.
• Siri audio may cut out while reading Messages.
The NSMutableURLRequest class requires that the HTTPBodyStream property be an unopened
stream, and the NSURLConnection and NSURLSession classes now strictly enforce this unopened
stream requirement. Affected apps should ensure that any NSInputStream that is provided has not yet
When building and running from Xcode repeatedly, long-lived operations can fail with a “You don’t have
permission to save the file” error because the container path is changing repeatedly.
FaceTime calls between this beta and older iOS and macOS betas is not supported. Please update your
Mac and iPhone to the latest version.
Adding WAC HomeKit accessories might fail using the Home app if the network credentials are not first
provided using the Settings > Wi-Fi > Set Up New Device option.
Workaround: If adding such a HomeKit accessory fails, provide the network credentials using Settings >
Wi-Fi > Set Up New Device. After the accessory has joined the network, the accessory can be added
using the Home app.
Libdispatch asserts if there is a hang detected due to a deadlock in dispatch_barrier_sync.
• When UISearchController and UITableViewController are used in Messages extensions,
their content can be hidden below the top bar.
Workaround: Use insets of around 80px on top and 40px on the bottom.
• In Simulator only, when localizedChangeDescription in the insertMessage:
localizedChangeDescription:completionHandler: method is set to
$localParticipantIdentifier.UUIDString is not replaced with the user’s Messages ID,
and the UUIDString is printed as-is.
• When the Messages app in Simulator is force quit, message history is lost.
• When a UIAlertController object is presented in a Messages extension, it is truncated by the
bottom bar of the extension.
• If a sign-in dialog is displayed while performing an in-app purchase or attempting to buy content
from the store, or the store or the extension will be dismissed.
• Search hints in iOS 10 beta 2 continue to show hints from the iTunes Store, but returned search
results are for the Messages Store.
• When launching an iMessage app extension from iOS Simulator, the app extension may be blank
and stop responding to touch input.
• When using a hardware keyboard, you may be unable to enter text for the poll creation plug-in.
Workaround: Use the on-screen keyboard.
• The local participant UUID is the same for both conversation participants in the Simulator only.
Workaround: Use a device to test UUID comparisons.
• Photo thumbnails in Messages may draw with incorrect zoom, resulting in gray padding
• When reading messages, Siri does not accurately describe new message types or features.
Mobile Device Management
Starting in iOS 10, SCEP payloads no longer default to MD5 if a SCEP server fails to return a CACaps or
does not claim capability for SHA-1, SHA-256, or SHA-512 in CACaps.
If a SCEP server does not respond to GetCACaps, SHA-1 will be assumed and used for the SCEP attempt.
If the SCEP servers respond to GetCACaps, the server needs to note they have SHA-1, SHA-256, or
SHA-512 capability or the SCEP enrollment request is failed due to insufficient capabilities.
See the WWDC 2016 session What’s New in Managing Apple Devices for more information.
Notes about Apple Music in iOS 10 beta 4:
• Recently Played in For You may not refresh instantly.
• MPMediaPickerController may not display as expected.
• Deleting Apple Music may prevent certain accessories from playing audiobooks, podcasts, and
more. Download Apple Music from the App Store to restore playback.
• The today widget for music may not show all recently played music.
When connected to a car, certain features may not work as expected:
• Editing Up Next may unexpectedly disrupt playback.
• While using CarPlay, View All Stations does not yet display all stations.
Notes may quit unexpectedly.
Workaround: Toggle Notes off, then on, in Settings > General > iCloud.
An NSUserActivity object may not have any userInfo after handoff.
Workaround: Explicitly call becomeCurrent on the activity object.
Some devices may experience performance issues, such as hangs and frame drops.
• Voicemail transcription (beta) is available on iPhone 6s, iPhone 6s Plus, and iPhone SE with Siri
language set to English (United States).
• After enabling speaker during a call, subsequent calls will use speaker by default.
Workaround: disable speaker during an active call.
• When making back-to-back Emergency CS 911calls, the Dialer UI displays ” 911 calling” instead of
“911 Emergency call-calling”.
• Face data will be reprocessed in iOS 10 beta 4, resulting in any named, favorited, or merged face
data being reset.
• People syncing is not enabled via iCloud Photo Library in iOS 10.
• Memories, Related, People, and Scene are not supported on 32-bit devices.
• WebGeolocation now requires a secure (HTTPS) website to work on both iOS and macOS to
prevent malicious use of location data.
• WKWebView now defaults to respecting user-scalable=no from a viewport. Clients of WKWebView
can improve accessibility and allow users to pinch-to-zoom on all pages by setting the
WKWebViewConfiguration property ignoresViewportScaleLimits to YES.
• The SFSafariViewControllerConfiguration and -[SFSafariViewController
initWithURL:configuration:] APIs have been removed, and –
[SFSafariViewController initWithURL:entersReaderIfAvailable:] is no longer
marked as deprecated. The preferredBarTintColor property has been moved to
SFSafariViewController, along with a new property preferredControlTintColor
which clients should use instead of setting tintColor directly on the view. Apps linked on iOS
10 or later will no longer forward their view’s tint color to SFSafariViewController.
In Settings > Cellular Data, per-app settings may not persist after enabling/disabling.
Siri may not provide the desired response when a request requires a removed app.
• The identifier property on INIntent may not change between Siri requests.
• needsMoreDetails(for:) resolution result does not currently work.
Swift Playgrounds is a brand new app designed to help people learn to code with Swift 3.
It offers downloadable content, including Learn to Code Part 1—which teaches the fundamentals of
coding in Swift—and additional challenges you can explore. You can also experiment on your own
by creating playgrounds based on the templates, create a blank playground, or
open playgrounds created in Xcode.
Swift Playgrounds is included with iOS 10 beta 4.
Swift Playgrounds beta 4 contains Learn to Code Part 1. Learn to Code Part 2 is coming in later releases.
• Playgrounds that are not stored in iCloud are not available after upgrading to the production
version of Swift Playgrounds. To keep your playgrounds, either turn on iCloud or AirDrop, Message,
or email your playgrounds for backup on another computer or device before moving to the final
release Swift Playgrounds.
• Swift Playgrounds beta 4 uses Swift 3 preview 3 (swiftlang-800.0.34.6). Code written using
other versions of Swift may not work in Swift Playgrounds beta 4.
• Playgrounds created with Swift Playgrounds beta 1 through 3 do not execute correctly in Swift
Playgrounds beta 4. Similarly, playgrounds made available for Swift Playgrounds beta 4 do not
execute correctly when run on Swift Playgrounds beta 1 through 3. This limitation includes the
playgrounds in Learn to Code.
• Swift Playgrounds on iPad does not keep track of whether you’ve expanded an inline Quick Look
for values in the editor. For example, if you edit a Swift 3 playground that had an expanded Quick
Look, Quick Looks are collapsed when you save.
• AVFoundation is available, but input capture returns nothing.
For example, AVCapturePreviewLayer is always a blank transparent layer.
• GameController framework is available and appears to successfully connect to controllers, but
button handler blocks are never called.
• Prior to iOS 10, it was possible to override [UIStackView initWithArrangedSubviews:],
but this was intended as a convenience initializer and implemented as such. We have now
enforced this in the headers. As a result, Swift clients can no longer override this method, because
Swift initializer rules prevent the override of a convenience initializer.
• In iOS 10, UIKit has updated and unified background management for UINavigationBar,
UITabBar, and UIToolbar. In particular, changes to background properties of these views (such
as background or shadow images, or setting the bar style) may kick off a layout pass for the bar to
resolve the new background appearance.
In particular, this means that attempts to change the background appearance of these bars inside
of -[UIView layoutSubviews], -[UIView updateConstraints], -[UIViewController
willLayoutSubviews], -[UIViewController didLayoutSubviews], –
[UIViewController updateViewConstraints], or any other method that is called in
response to layout may result in a layout loop.
In some cases you can break these layout loops by ensuring that you always use the same object
instance when objects (such as UIImage or UIColor) are required. But in general you should
avoid doing this.
Because all appearance parameters are now resolved at one time, there may be some cases where
your bar’s appearance has changed. In general, best results are obtained by specifying as little as
possible for customizing your bar. For example, if you are specifying a barTintColor value and
specifying an empty UIImage object for the backgroundImage property (as is the case when
you call [UIImage new], for example) then you should get better results by specifying only the
barTintColor. Any changes you make to resolve these issues in iOS 10 should also work
correctly in iOS 9—if this is not the case, please report bugs with a sample project and a
screenshot indicating what the bars should look like.
• In iOS 10, there is a slight UIGestureRecognizer behavior change when removing a currently
recognizing (that is, midflight) gesture recognizer from its UIView. Previously, removing the
gesture recognizer midflight would not explicitly cancel the gesture recognizer, allowing you to
re-add the gesture recognizer back to the same view or to a different view. In iOS 10, calling –
[UIView removeGestureRecognizer:] on the view of a midflight gesture recognizer
explicitly cancels the gesture recognizer. If a user desires to change the view of a midflight gesture
recognizer, you can simply call -[UIView addGestureRecognizer:] on the view you wish to
move the gesture recognizer to.
• Presented view controllers can now affect the status bar appearance even if they were presented
from a view controller that did not affect the status bar (for example, a popover). By default,
custom view controller presentations are assumed to not affect the status bar; use the
modalPresentationCapturesStatusBarAppearance property on UIViewController to
allow a presented view controller to participate in status bar appearance.
• It has always been a requirement that UIViewController subclasses call super’s
implementation of -awakeFromNib from their own overrides. Starting in iOS 10, –
awakeFromNib is correctly annotated with the NS_REQUIRES_SUPER attribute to detect
implementations that fail to obey this requirement. To fix this warning, ensure that all code paths
of your override call [super awakeFromNib].
• When running on iPad, the background color set for a UITableViewCell in a Storyboard is now
• Starting in iOS 10, UITableViewHeaderFooterView supports NSCoding so if a view with this
class is in a XIB, it now decodes correctly. The consequence is that apps may exhibit some extra
content for these views which did not appear before due to the bug that was fixed.
• For very wide table views where cell layout margins have been automatically increased to follow
the readable width, separator insets are now interpreted relative to these left and right margins
instead of from the edges of the table view.
• The coalescing of UITouch delivery has been significantly improved, especially in cases where
users would both touch the screen and use Apple Pencil at the same time on iPad Pro and the
app wasn’t able to process them at the incoming rate. In certain scenarios, events still can come in
at a higher rate than the display refreshes. This is expected, and your app should anticipate this
and handle accordingly.
• In iOS 10, windows that are not full screen do not affect status bar appearance.
• Sending -layoutIfNeeded to a view is not expected to move the view, but in earlier releases, if
the view had translatesAutoresizingMaskIntoConstraints == false, and if it was
being positioned by constraints, -layoutIfNeeded would move the view to match the layout
engine before sending layout to the subtree.
These changes correct this behavior, and the receiver’s position and usually its size won’t be
affected by -layoutIfNeeded.
Some existing code may be relying on this incorrect behavior that is now corrected. There is no
behavior change for binaries linked before iOS 10, but when building on iOS 10 you may need to
correct some situations by sending -layoutIfNeeded to a superview of the
translatesAutoresizingMaskIntoConstraints == false view that was the previous
receiver, or else positioning and sizing it before (or after, depending on your desired behavior) –
• Third party apps with custom UIView subclasses using Auto Layout that override
layoutSubviews and dirty layout on self before calling super are at risk of triggering a layout
feedback loop when they rebuild on iOS 10. When they are correctly sent subsequent –
layoutSubviews calls they must be sure to stop dirtying layout on self at some point (note that
this call was skipped in release prior to iOS 10).
• Flippable images work by having two images in an asset, each with a different directionality trait.
When you create a derived UIImage object using the -imageWith… methods, it is no longer
associated with the image asset it came from. To create a flippable template image at runtime, use
• The source of the UIContentSizeCategoryDidChangeNotification notification is now
UIScreen.main() instead of UIApplication.shared().
• There are two properties in the UIViewPropertyAnimator class and one method in the
UIViewAnimating protocol that are unavailable in iOS 10 beta 1.
@property(nonatomic, getter=isManualHitTestingEnabled) BOOL
@property(nonatomic, readonly) NSTimeInterval delay;
• When running in the iPad Pro (9.7 inch) Simulator, the trait collection of UIScreen.mainScreen
has a displayGamut of sRGB instead of P3, and image assets with wide-gamut content are
missing. This affects image assets with images in the P3 slot as well as images with just an Any slot
that contains wide-gamut content. These issues do not affect apps running on device.
• 3D Touch haptics do not play unless Keyboard Clicks are turned on in Settings > Sounds.
• A UIPreviewActionItem object created with UIPreviewActionStyleSelected do not
appear with the selected style.
• The didReceiveLocalNotification: and didReceiveRemoteNotification methods are
not called for default action if the app is already running.
• When UITextField.adjustsFontSizeToFitWidth is set to true, UITextField now scales
different fonts inside an attributed string set in attributedText instead of scaling the font and
applying it to the whole string. This means font information is no longer lost when auto-scaling.
• The -[UIImage imageWithHorizontallyFlippedOrientation] method is missing from
the UIImage interface in iOS 10 beta 1.
• Flippable or direction-specific images assigned to a UIButton object’s image do not flip.
Workaround: For images in asset catalogs, set the image asset’s Render As setting to Original
Image. For images created in code, set the image’s renderingMode property
to .AlwaysOriginal before adding it to the UIImageAsset.
• Defaults to NO. Set if you need to manage the hit testing of animating view hierarchies
@property(nonatomic, getter=isManualHitTestingEnabled) BOOL
• The changeCount does not update for pasteboardWithName and
• In iOS 10, when you set the borderStyle property on a UITextField object to .none,
clipsToBounds is also set to false, to accommodate text with extended diacritics such as
Hindi and Arabic.
If you need your text field to clip and use no border style, set clipsToBounds to true after
Setting any of the other border styles does not affect the value of clipsToBounds.
Pass update banners will not show unless previous pass notifications are first cleared from Notification
The first time you debug a widget (that is, a Today extension) on a device, it does not show as a possible
Workaround: Debug again for the extension to show up.
• Setting the DYLD_PRINT_STATISTICS environment variable in Xcode does not work for iOS
devices in iOS 10 beta 1.
• On the first launch after a device settings erase, the hardware keyboard appears to be toggled
and the menu state does not appear to be correct.
Workaround: Select and then deselect the hardware keyboard menu.
• If there is a space in the name of the Xcode app or any ancestor folder, the Simulator fails to
launch and asset catalogs fail to compile.
Workaround: Avoid using spaces in Xcode app names. Additionally, Xcode should reside in a path
with no spaces.
• If a StickerSequence is added to a sticker pack and left blank, or if frames of different sizes are
added, the sticker pack app is blank when deployed.
Workaround: Add sticker frames of the same size.
• If a messages extension in Swift is re-deployed, the code changes are not reflected and a debug
session is not established.
Workaround: Delete extensions on the device before each re-deploy.
• Date pickers created in Storyboards may not lay out properly.
• Occasionally, using Command-Shift-HH from the Home screen does not invoke the app switcher.
Workaround: Launch any app before using Command-Shift-HH.