iOS 8.2 beta 2 – iata ce aduce nou

iOS 8.2 beta 2

  iOS 8.2 beta 2 a fost lansat in cursul serii trecute de catre compania Apple, noua versiune a sistemului de operare fiind in momentul de fata disponibila numai pentru dezvoltatorii de aplicatii pentru platforma iOS. Desi vorbim despre iOS 8.2 beta 2 venit la trei saptamani distanta de prima versiune lansata de catre Apple, din pacate nu avem parte de chiar atat de multe noutati pe cat ne-am fi asteptat, cei din Cupertino rezolvand doar probleme de functionare, fara a implementa alte functii noi.

  In ciuda lipsei noutatilor vizibile pentru iOS 8.2 beta 2, avem totusi un changelog cu noutati oferit de catre compania Apple in portalul dedicat dezvoltatorilor pe website-ul sau, el descriind schimbarile invizibile facute de igninerii celor din Cupertino. Mai jos aveti intreaga lista de noutati conceputa de catre compania Apple pentru a le oferi dezvoltatorilor informatiilor necesare privind schimbarile internet ale iOS 8.2 beta 2, asa ca veti sti exact ce ascunde nou in interiorul sau.

  iOS 8.2 beta 2 poate fi descarcat din portalul dedicat dezvoltatorilor daca aveti un abonament anual de dezvoltator.








iOS 8.2 beta 2 – iata ce aduce nou

Notes and Known Issues

The following issues relate to using iOS SDK 8.2 to develop code.

CloudKit

Note

A single CKAsset instance can no longer be set as a value on multiple CKRecords.

Document Providers

Notes

  • Your app needs the iCloud entitlement to be able to be used as a document provider.

  • The com.apple.developer.icloud-container-identifiers entitlement is required.

Known Issues

  • After rotating the document picker to landscape, the status bar is hidden.

  • Upon bringing up the document picker in landscape, the containing view may be shifted beneath the navigation bar.

App extensions

Notes

  • App extensions need an arm64 slice to run on 64-bit devices. If you try to run the armv7 slice on a 64-bit device it won’t work.

  • Apps need to have an arm64 slice if the bundle contains a framework that both the app and the app extension link against.

File System

Note

The file system layout of app containers has changed on disk. Rather than relying on hard-coded directory structure, use theNSSearchPathForDirectoriesInDomains function or the URLForDirectory:inDomain:appropriateForURL:create:error:method of the NSFileManager class. See Accessing Files and Directories in File System Programming Guide.

Fonts

Note

The Thai system font has increased in size to improve readability. This will cause clipping in many places in your UI if you don’t take appropriate action:

  1. Use UILabel as much as possible. If you use Interface Builder, make sure that Clip Subviews is not checked. UIKit will grow the clipping region as necessary to not clip text.

  2. Use Dynamic Type. This will ensure that you do not have overlapping glyphs in multiline labels or text fields.

If you can’t do 1 and 2 because you implement your own views, you must implement measures not to clip. You can use CoreText to figure out the appropriate clipping region for a line of text by calling:

CTLineGetBoundsWithOptions(lineRef, kCTLineBoundsIncludeLanguageExtents);

To avoid overlapping glyphs in multiline text elements, adjust the line height. An additional 30% is recommended.

This measure will also help your app perform better in other languages, including Arabic, Hindi, and Vietnamese.

iCloud

Note

Mail handoff and AirDrop may stop working after changing your iCloud password at appleid.apple.com.

Workaround: Sign out and back into iCloud on the device.

iCloud Drive

Note

URLForUbiquityContainerIdentifier: might return nil when running your application in Xcode. If so, open System Preferences, navigate to iCloud > iCloud Drive, and enable Xcode.

Keyboards

Fixed in beta 2

Additional keyboards, including 3rd party keyboards, may not appear in Safari, Maps, or 3rd party apps in iOS Simulator.

Messages

Known Issue

Your device may get into a state where tapping into Messages conversations can take a long time.

Workaround: Reboot the device.

Notification Center

Note

The schedule and intended use of widgetPerformUpdateWithCompletionHandler: is intended as a convenient home for all data/model update logic. If implemented, the system will call at opportune times for the widget to update its state, both when Notification Center is visible, as well as in the background. An implementation is required to enable background updates. It’s expected that the widget will perform the work to update asynchronously and off the main thread as much as possible. Widgets should call the argument block when the work is complete, passing the appropriate NCUpdateResult. Widgets should NOT block returning fromviewWillAppear: on the results of this operation. Instead, widgets should load cached state in viewWillAppear: in order to match the state of the view from the last viewWillDisappear:, then transition smoothly to the new data when it arrives.

NSURLSession

Note

The NSURLSessionTask class provides a new “priority” property with three associated constants: NSURLSessionTaskPriorityDefault,NSURLSessionTaskPriorityLow, and NSURLSessionTaskPriorityHigh. NSURLSessionTask priorities can be used to specify how multiple requests and responses to the same host should be prioritized. Note that the priority is a hint and not a strict guarantee ofNSURLSessionTask performance.

For complete usage details of NSURLSessionTask priorities, refer to the NSURLSession.h header file, which is provided by the Foundation framework.

Phone

Note

To activate Wi-Fi Calling functionality for T-Mobile (U.S. only), follow these steps:

  • Go to Settings > Phone > Wi-Fi Calling.

  • Toggle the Wi-Fi Calling switch to ON.

  • If the carrier does not have the user’s registered emergency address, you will be asked to add it before the feature is activated.

Photos

Notes

  • Maintain a backup of your photo library before enabling and while using iCloud Photo Library beta by:

    • Importing to your Mac using iPhoto

    • Importing to your Mac using Image Capture

  • iCloud Photo Library beta will not download photos and videos that were synced to your device from iTunes. Any photos and videos synced to your device from iTunes will be removed when you enable iCloud Photo Library beta.

  • iPhoto for iOS will not launch on iOS 8 beta. Launching Photos.app will migrate your iPhoto edits to the iOS 8 Photo Library. Make sure your iPhoto for iOS data is included in your device backup.

  • The ability to automatically optimize device space is enabled for all accounts larger than 5GB.

  • When using iCloud Family Sharing, both iCloud Photo Sharing and My Photo Stream are enabled.

Provisioning Profiles

Known Issue

If you have upgraded to the 8.2 beta from previous iOS 8 betas you may see your apps crashing due to provisioning profile issues.

Workaround:

  1. Connect the device via USB to your Mac.

  2. Launch Xcode.

  3. Choose Window > Devices.

  4. Right click on the device in left column, choose “Show Provisioning Profiles”.

  5. Click on the provisioning profile in question.

  6. Press the “-” button.

  7. Continue to removing all affected profiles.

  8. Re-install the app.

Siri

Fixed in beta 2

Siri support for Singapore English was disabled in the previous beta.

UIKit

Notes

  • UILabel has a default value of YES for clipsToBounds. This differs from the normal UIView default of NO.

  • The leftLayoutGuide and rightLayoutGuide APIs have been removed. Please use the layoutMargins property instead.

WatchKit

Notes

  • The WKInterfaceMap API has changed. Specifically, setMapRect: and setCoordinateRegion: have been replaced bysetVisibleMapRect: and setRegion: respectively.

  • The WKInterfaceController method initWithContext: has been deprecated. Please use awakeWithContext: instead. The designated initializer for WKInterfaceController is now init.

  • A WatchKit app can ask its containing iOS app to perform functionality using the WKInterfaceController APIopenParentApplication:reply:. The app delegate of the containing app must implementapplication:handleWatchKitExtensionRequest:reply:.

  • A page-based WatchKit app can dynamically resequence the pages at the root level usingreloadRootControllersWithNames:contexts:.

  • Rows in a WKInterfaceTable now have a default appearance. This appearance can be overridden by specifying the values for background color, margin, corner radius, and height for the row in Interface Builder.

Fixed in beta 2

  • Clicking on a notification’s icon/body in the watch window does not launch the main app in iOS Simulator.

  • When you click Build and Run it doesn’t launch the watch window.

  • The custom sash color for notification controllers does not currently appear in Interface Builder but does in iOS Simulator.

  • Installing WatchKit apps may stop working in iOS Simulator.

  • The WKInterfaceController method addMenuItemWithImage:title:action: does not work in iOS Simulator.

Known Issues

  • In iOS Simulator, the Emoji button is always visible, regardless of the selected input mode.

  • The WKInterfaceController method presentTextInputControllerWithSuggestions:completion: is not fully supported in iOS Simulator. Text suggestions work, but Dictation and Emoji do not.

Wi-Fi Calling (T-Mobile US only)

Note

The carrier name in the status bar will show “T-Mobile Wi-Fi” when the device is able to make and receive Wi-Fi calls.