iOS 8.2 – de volledige lijst met wijzigingen gepubliceerd door Apple

  iOS 8.2 werd vanavond gelanceerd door het bedrijf Apple voor applicatieontwikkelaars voor het iOS-platform, waarbij de nieuwe versie van het besturingssysteem beschikbaar is voor iPhone, iPad en iPod Touch. De release van deze update komt tot stand met het idee om applicatieontwikkelaars de kans te geven de nieuwe versie van het besturingssysteem te testen met applicaties die geproduceerd kunnen worden met behulp van de nieuwe Xcode 6.2. Deze versie van XCode bevat WatchKit, een speciale SDK die de ontwikkeling van applicaties voor de Apple Watch mogelijk maakt, zodat ontwikkelaars hun titels kunnen voorbereiden op de lancering van het nieuwe Apple-product.

  iOS 8.2 het brengt geen noemenswaardig nieuws voor onze iDevices, maar alleen functies gerelateerd aan WatchKit of OS X, dus het is voorlopig niet nodig om het te installeren.

Wijzigingenlogboek voor iOS 8.2

Opmerkingen en bekende problemen

De volgende problemen hebben betrekking op het gebruik van iOS SDK 8.2 om code te ontwikkelen.

CloudKit

Note

Een CKAsset instance kan niet langer worden ingesteld als waarde op meerdere CKRecords.

Documentaanbieders

Opmerkingen

  • Uw app heeft het iCloud-recht nodig om als documentprovider te kunnen worden gebruikt.

  • De com.apple.developer.icloud-container-identifiers recht is vereist.

bekende problemen

  • Nadat u de documentkiezer naar liggend hebt gedraaid, is de statusbalk verborgen.

  • Wanneer u de documentkiezer in landschapsmodus opent, kan de bevattende weergave onder de navigatiebalk worden verschoven.

App-extensies

Opmerkingen

  • App-extensies hebben een arm64-segment nodig om op 64-bits apparaten te kunnen werken. Als u de armv7-slice op een 64-bits apparaat probeert uit te voeren, zal dit niet werken.

  • Apps moeten een arm64-segment hebben als de bundel een raamwerk bevat waar zowel de app als de app-extensie tegenaan linken.

File System

Note

De indeling van het bestandssysteem van app-containers is op schijf gewijzigd. In plaats van te vertrouwen op een hardgecodeerde mapstructuur, gebruikt u de NSSearchPathForDirectoriesInDomains functie of de URLForDirectory:inDomain:appropriateForURL:create:error: methode van de NSFileManagerklasse. Zien Toegang tot bestanden en mappen in Programmeerhandleiding voor bestandssysteem.

fonts

Note

Het Thaise systeemlettertype is groter geworden om de leesbaarheid te verbeteren. Dit zal op veel plaatsen in uw gebruikersinterface leiden tot clipping als u niet de juiste actie onderneemt:

  1. Te gebruiken UILabel zo veel mogelijk. Als u Interface Builder gebruikt, zorg er dan voor dat Clip Subviews niet is aangevinkt. UIKit vergroot het uitknipgebied indien nodig om tekst niet af te knippen.

  2. Gebruik dynamisch type. Dit zorgt ervoor dat er geen overlappende glyphs voorkomen in labels met meerdere regels of tekstvelden.

Als u 1 en 2 niet kunt doen omdat u uw eigen opvattingen implementeert, moet u maatregelen implementeren om niet te clippen. U kunt CoreText gebruiken om het juiste uitknipgebied voor een tekstregel te bepalen door het volgende aan te roepen:

CTLineGetBoundsWithOptions(lineRef, kCTLineBoundsIncludeLanguageExtents);

Pas de regelhoogte aan om overlappende glyphs in tekstelementen met meerdere regels te voorkomen. Een extra 30% wordt aanbevolen.

Deze maatregel zorgt er ook voor dat uw app beter presteert in andere talen, waaronder Arabisch, Hindi en Vietnamees.

iCloud

Note

Mailoverdracht en AirDrop werken mogelijk niet meer nadat u uw iCloud-wachtwoord op appleid.apple.com hebt gewijzigd.

Oplossing: Meld u af en weer aan bij iCloud op het apparaat.

iCloud Drive

Note

URLForUbiquityContainerIdentifier: zou kunnen terugkeren nil wanneer u uw toepassing in Xcode uitvoert. Als dat het geval is, opent u Systeemvoorkeuren, navigeert u naar iCloud > iCloud Drive en schakelt u Xcode in.

Toetsenborden

Bekend probleem

Extra toetsenborden, inclusief toetsenborden van derden, verschijnen mogelijk niet in Safari, Maps of apps van derden in de Simulator.

Oplossing: Toetsenborden moeten testbaar zijn in Agenda, Spotlight, Contacten en Foto's.

Notification Center

Note

Het schema en het beoogde gebruik van widgetPerformUpdateWithCompletionHandler: is bedoeld als een handig onderkomen voor alle logica voor het bijwerken van gegevens/modellen. Indien geïmplementeerd, zal het systeem op geschikte tijdstippen de widget vragen om de status ervan bij te werken, zowel wanneer het Berichtencentrum zichtbaar is, als op de achtergrond. Er is een implementatie vereist om achtergrondupdates mogelijk te maken. Er wordt verwacht dat de widget het werk zal doen om zoveel mogelijk asynchroon en buiten de hoofdthread bij te werken. Widgets moeten het argumentblok aanroepen wanneer het werk voltooid is, waarbij de juiste waarde wordt doorgegeven NCUpdateResult. Widgets mogen het terugkeren van NIET blokkeren viewWillAppear: over de resultaten van deze operatie. In plaats daarvan moeten widgets de cachestatus laden viewWillAppear: om de staat van het uitzicht van de vorige te evenaren viewWillDisappear:, en ga vervolgens soepel over naar de nieuwe gegevens wanneer deze binnenkomen.

NSURLSessie

Note

De NSURLSessionTask class biedt een nieuwe eigenschap "prioriteit" met drie bijbehorende constanten: NSURLSessionTaskPriorityDefault, NSURLSessionTaskPriorityLow en NSURLSessionTaskPriorityHigh. NSURLSessionTask Prioriteiten kunnen worden gebruikt om aan te geven hoe meerdere verzoeken en antwoorden aan dezelfde host prioriteit moeten krijgen. Houd er rekening mee dat de prioriteit een hint is en geen strikte garantie NSURLSessionTask prestaties.

Voor volledige gebruiksdetails van NSURLSessionTask prioriteiten, zie de NSURLSession.h header-bestand, dat wordt geleverd door het Foundation-framework.

Telefoonnummer

Opmerkingen

Volg deze stappen om de Wi-Fi Calling-functionaliteit voor T-Mobile (alleen VS) te activeren:

  • Ga naar Instellingen > Telefoon > Bellen via wifi.

  • Zet de schakelaar voor bellen via Wi-Fi op AAN.

  • Als de vervoerder niet over het geregistreerde noodadres van de gebruiker beschikt, wordt u gevraagd dit adres toe te voegen voordat de functie wordt geactiveerd.

Foto's

Opmerkingen

  • Maak een back-up van uw fotobibliotheek voordat u de bètaversie van iCloud-fotobibliotheek inschakelt en gebruikt door:

    • Importeren naar uw Mac met iPhoto

    • Importeren naar uw Mac met behulp van Image Capture

  • De bètaversie van iCloud-fotobibliotheek downloadt geen foto's en video's die vanuit iTunes met uw apparaat zijn gesynchroniseerd. Alle foto's en video's die vanuit iTunes met uw apparaat zijn gesynchroniseerd, worden verwijderd wanneer u de bètaversie van iCloud-fotobibliotheek inschakelt.

  • iPhoto voor iOS start niet op iOS 8 Bèta. Als u Photos.app start, worden uw iPhoto-bewerkingen naar de iOS 8-fotobibliotheek gemigreerd. Zorg ervoor dat uw iPhoto voor iOS-gegevens zijn opgenomen in de reservekopie van uw apparaat.

  • De mogelijkheid om de apparaatruimte automatisch te optimaliseren is ingeschakeld voor alle accounts groter dan 5 GB.

  • Wanneer u iCloud Family Sharing gebruikt, zijn zowel iCloud Photo Sharing als Mijn fotostream ingeschakeld.

Voorzieningenprofielen

Bekend probleem

Als u een upgrade naar de bètaversie 8.2 van eerdere iOS 8-bèta's heeft uitgevoerd, ziet u mogelijk dat uw apps crashen vanwege problemen met het inrichtingsprofiel.

Oplossing:

  1. Sluit het apparaat via USB aan op uw Mac.

  2. Start Xcode.

  3. Kies Venster > Apparaten.

  4. Klik met de rechtermuisknop op het apparaat in de linkerkolom en kies "Toon inrichtingsprofielen".

  5. Klik op het betreffende inrichtingsprofiel.

  6. Druk op de knop.

  7. Ga door met het verwijderen van alle betrokken profielen.

  8. Installeer de app opnieuw.

Siri

Bekend probleem

  • Siri-ondersteuning voor Singapore English is uitgeschakeld in deze bèta, hoewel deze nog steeds selecteerbaar is in het Siri-taalselectievenster.

UIKit

Opmerkingen

  • UILabel heeft de standaardwaarde JA voor clipsToBounds. Dit wijkt af van normaal UIView standaard van NO.

  • De leftLayoutGuide en rightLayoutGuide API's zijn verwijderd. Gebruik alstublieft de layoutMargins eigendom in plaats daarvan.

Watchkit

bekende problemen

  • Wanneer u een melding in de iOS-simulator bekijkt, wordt door het klikken op het meldingspictogram of de hoofdtekst niet de bijbehorende Watch-app gestart.

  • Wanneer u Build and Run kiest, wordt het Watch-venster niet geopend.

    Oplossing: Open het Watch-venster onder Hardware > Externe beeldschermen en kies vervolgens opnieuw Build and Run.

  • De aangepaste vleugelkleur voor meldingscontrollers verschijnt momenteel niet in Interface Builder, maar wel in iOS Simulator.

  • De presentTextInputControllerWithSuggestions:completion: methode van WKInterfaceController wordt momenteel niet ondersteund in iOS Simulator.

  • Het installeren van Watch-apps werkt mogelijk niet meer in iOS Simulator.

    Oplossing: Reset de simulator en probeer het opnieuw.

  • De addMenuItemWithImage:title:action: methode van WKInterfaceController werkt niet in iOS Simulator.

    Oplossing: Te gebruiken addMenuItemWithImageNamed:title:action:.

Bellen via Wi-Fi (alleen T-Mobile VS)

Note

De naam van de provider in de statusbalk toont "T-Mobile Wi-Fi" wanneer het apparaat Wi-Fi-oproepen kan plaatsen en ontvangen.