iOS 7 bèta 5, hier is de volledige changelog

  iOS beta 7 5 werd vanavond gelanceerd door het bedrijf Apple, en nu hebben we de volledige changelog van deze versie van het besturingssysteem beschikbaar. Natuurlijk vinden we daarin vooral heronderzoek van eerdere problemen en prestatieverbeteringen, maar de ontwerpers van het bedrijf bleven verschillende subtiele veranderingen in de gebruikersinterface doorvoeren.

Opmerkingen en bekende problemen

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

Opmerkingen

De klassen in het AddressBookUI-framework staan ​​nu expliciet subklassen niet toe. Voor apps die zijn gekoppeld aan de iOS 7 SDK, levert een poging om een ​​subklasse van een van deze klassen te initialiseren nul op. Voor apps die zijn gekoppeld aan oudere SDK's is de enige gedragsverandering een waarschuwing die in de console wordt geregistreerd.

Vanaf Seed 4 wordt privacyondersteuning voor het AddressBookUI-framework opnieuw ingeschakeld voor apps die zijn gekoppeld aan de iOS 7 SDK. Apps die zijn gekoppeld aan oudere SDK's worden niet gewijzigd. Als uw app een van de adresboekweergavecontrollers gebruikt, moet u controleren of deze zich nog steeds naar verwachting gedraagt.

AirDrop

Opmerkingen

AirDrop in iOS 7 Seed 2 of hoger is niet compatibel met AirDrop in iOS 7 Seed 1.

Contacten Alleen ondersteuning vereist dat:

U bent ingelogd bij iCloud.

De afzender en ontvanger hebben elkaars Apple ID-e-mailadressen in Contacten op hun apparaten.

Opgelost in zaad 5

Contact Only vereist momenteel dat je een actieve internetverbinding hebt.

De App Store zou de mogelijkheid moeten ondersteunen om een ​​app te vinden die een ontvangen document kan openen op basis van de Uniform Type Identifier (UTI) van het document. Momenteel wordt alleen een leeg scherm weergegeven.

Stichting AV

Opmerkingen

AVCaptureSession gebruikt nu standaard de AVAudioSession van uw app.

Kernanimatie

Opmerkingen

Als de UIViewGroupOpacity-sleutel niet aanwezig is, is de standaardwaarde nu JA. De standaardwaarde was voorheen NEE.

Dit betekent dat deelaanzichten van een transparant aanzicht eerst op dat transparante aanzicht worden samengevoegd en vervolgens de vooraf samengestelde subboom als geheel op de achtergrond wordt getekend. Een NEE-instelling resulteert in een goedkopere, maar ook minder nauwkeurige compositie: elke weergave in de transparante subboom wordt samengesteld op wat zich eronder bevindt, volgens de dekking van de ouder, in de normale volgorde van het schilderalgoritme.

Opmerkingen

In Seed 4 en hoger is de Exchange DeviceIdentifier terug gewijzigd naar het gedrag van iOS 6, waarbij het serienummer wordt gebruikt.

fonts

Opmerkingen

In Seed 4 zijn nieuwe lettertypelijnhoogten geïntroduceerd. Als u uw lettertype in eerdere Seeds handmatig had uitgelijnd, kan het in latere Seeds iets verticaal omhoog bewegen.

Foundation

Opmerkingen

Een NSMetadataQuery met een alomtegenwoordig bereik kan nu kMDItemContentTypeTree in predikaten gebruiken.

Bijvoorbeeld:

NSPredicaat *p = [NSVergelijkingsPredicaat

predicateWithLeftExpression:[NSExpressie

expressionForKeyPath:@”kMDItemContentTypeTree”]

rightExpressie:[NSExpressie

expressionForConstantValue:@”public.rtf”]

modifier: NSAnyPredicateModifier

type:NSLikePredicateOperatorType

opties:0];

Wanneer een beroep wordt gedaan op resultaten die worden geretourneerd door query's met een alomtegenwoordig bereik, wordt -[NSMetadataItem

valueForAttribute:NSMetadataItemDisplayNameKey] produceert nu dezelfde waarde als –

[NSURL getResourceValue: forKey: NSURLLocalizedNameKey], overeenkomend met niet-alomtegenwoordige

queries.

iCloud

Opmerkingen

Als u iCloud-sleutelhanger met herstel gebruikt, ziet u mogelijk een dialoogvenster waarin wordt aangegeven dat het herstel is uitgeschakeld vanwege een serverwijziging. Dit is opzettelijk. Volg de instructies in de melding om de functionaliteit opnieuw in te schakelen. Als u meerdere waarschuwingen ziet of problemen opmerkt bij het opnieuw inschakelen van het herstel, dient u een bugrapport in.

iCloud-sleutelhanger in iOS 7 Seed 3 of hoger is niet achterwaarts compatibel met iOS 7 Seed 2 of OS X

Mavericks-zaad 2.

Als u iCloud-sleutelhanger en/of sleutelhangerherstel had ingeschakeld vanaf iOS 7 Seed 2, worden beide functies uitgeschakeld bij het updaten naar iOS 7 Seed 3 of later.

Ga na het updaten naar iOS 7 Seed 3 of hoger naar Instellingen > iCloud > Sleutelhanger en schakel iCloudKeychain opnieuw in op uw apparaten.

Zie OS X v10.9 Release-opmerkingen voor meer details.

Activatieslot, een nieuwe functie van Zoek mijn iPhone, wordt automatisch ingeschakeld wanneer Zoek mijn iPhone is ingeschakeld op elk apparaat met iOS 7. Activatieslot vereist dat gebruikers hun Apple ID en wachtwoord invoeren om Zoek mijn iPhone in te schakelen en uit te loggen bij iCloud , wis het apparaat of activeer het apparaat opnieuw na het wissen. Het is belangrijk om een ​​van de volgende handelingen uit te voeren voordat u een apparaat overdraagt ​​aan een nieuwe gebruiker:

Meld u af bij iCloud.

Schakel het activeringsslot in via Instellingen > iCloud > Zoek mijn iPhone.

Opgelost in zaad 5

Spraakmemo's worden niet hersteld vanuit iCloud-back-ups.

Gebruikers in Zwitserland, Frankrijk, Spanje, Duitsland, Polen, Finland en mogelijk enkele andere landen kunnen hun sleutelhangers niet herstellen met behulp van telefoonnummervalidatie.

bekende problemen

Wachtwoordvelden worden niet weergegeven in waarschuwingsweergaven voor apps in liggende modus (bijvoorbeeld Game Center-authenticatie of in-app-aankoop). Tekstinvoer werkt nog steeds, hoewel u niet kunt zien wat u typt.

MAPK

Opmerkingen

Als de aanroepen om renderInContext op de laag die een MKMapView ondersteunt, vanuit de hoofdthread worden gedaan, moeten ze worden geëlimineerd of naar de hoofdthread worden verplaatst. Als u dit niet doet, kan dit een app-crash veroorzaken.

Gebruik in plaats van renderInContext de nieuwe MKMapSnapshotter API's.

Media

Opmerkingen

iOS onthoudt nu de laatst gebruikte media-app tijdens het opnieuw opstarten en crashen van de app. Media-apps die afstandsbedieningsgebeurtenissen kunnen ontvangen, moeten voorbereid zijn om op de achtergrond te worden gestart en mogelijk een afstandsbedieningsgebeurtenis te ontvangen om het afspelen te starten. Bovendien is het belangrijk dat media-apps de resetgebeurtenis van de mediaserver controleren en afhandelen, omdat de media-app mogelijk een extern verzoek ontvangt om het afspelen te hervatten na een reset. Meldingen om deze mediaservergebeurtenissen te monitoren zijn beschikbaar in

AVAudioSession en de juiste behandeling worden beschreven in Algemene aanbevelingen voor gebruik

kAudioSessionProperty_ServerDied.

Multipeer-connectiviteit

Opmerkingen

In deze Seed zijn veel updates van de MCSession API's opgenomen. De API's functioneren nu zoals ze werden gepresenteerd op WWDC. Belangrijke veranderingen en verbeteringen zijn onder meer: ​​De volgende nieuwe methode op MCSession is geïmplementeerd:

– (NSOutputStream *)startStreamWithName:(NSString *)streamName toPeer:(MCPeerID

*)peerID-fout:(NSError **)fout

Deze gedelegeerde methode is geïmplementeerd:

– (nietig)sessie:(MCSession *)sessie didReceiveStream:(NSInputStream *)stream

withName:(NSString *)streamName van Peer:(MCPeerID *)peerID

De volgende nieuwe methode op MCSession is geïmplementeerd:

– (NSProgress *)sendResourceAtURL:(NSURL *)resourceURL metNaam:(NSString

*)resourceName toPeer:(MCPeerID *)peerID withCompletionHandler:(void(^)(NSError

*fout))completionHandler

De gedelegeerde methode om te beginnen met het ontvangen van een bron van een externe peer is geïmplementeerd als:

– (void)session:(MCSession *)session didStartReceivingResourceWithName:(NSString

*)bronnaam vanPeer:(MCPeerID *)peerID withProgress:(NSProgress *)voortgang

De gedelegeerde methode om het ontvangen van een bron van een externe peer te voltooien en de inhoud op te slaan in een

tijdelijke locatie wordt geïmplementeerd als:

– (void)session:(MCSession *)session didFinishReceivingResourceWithName:(NSString

*)bronnaam vanPeer:(MCPeerID *)peerID atURL:(NSURL *)lokaleURL met fout:

(NSError *)fout

Opmerkingen: De app is verantwoordelijk voor het verplaatsen van het bestand naar een permanente locatie binnen de sandbox.

MCAdvertiserAssistant is een gemaksklasse voor het implementeren van een adverteerder, die uitnodigingen en verbindingen met een MCSession afhandelt.

MCSession heeft een nieuwe initWithPeer: methode.

sendResource heeft "with" toegevoegd aan de completeringHandler.

De time-out is verwijderd uit connectPeer:withNearbyConnectionData.

Bekijk voor meer informatie over deze API's de video voor WWDC 2013 Session 708, “Nearby

Netwerken met Multipeer-connectiviteit.”

multitasking

Opmerkingen

AVAudioSession kan niet meer actief worden door apps op de achtergrond die wakker worden vanwege

Ophalen op de achtergrond, achtergrondoverdrachten en gebeurtenissen voor externe meldingen.

Het beleid voor de taakvoltooiings-API is weer gewijzigd om overeen te komen met het iOS 6-gedrag, maar de tijdslimiet voor het voltooien van taken is verlaagd van 10 minuten in iOS 6.

NetwerkOpmerkingen

De cellulaire fallback-technologie die aanwezig was in eerdere zaden is verwijderd vanaf Seed 5.

Twee low-level netwerk-API's die vroeger een MAC-adres retourneerden, retourneren nu de vaste waarde

02:00:00:00:00:00. De betreffende API's zijn sysctl (NET_RT_IFLIST) en ioctl

(SIOCGIFCONF). Ontwikkelaars die de waarde van het MAC-adres gebruiken, moeten naar dergelijke identificatiegegevens migreren

as -[UIDevice identifierForVendor]. Deze wijziging is van invloed op alle apps die op iOS 7 draaien.

Doelstelling-C Runtime

Opmerkingen

Als gevolg van veranderingen in de manier waarop het isa-veld wordt geïmplementeerd, kan *zelf veranderen tijdens de opsomming (want Apple heeft zojuist iOS 7 beta 5 uitgebracht voor de iPhone, iPad, iPad mini en iPod touch en nu is ook het volledige wijzigingslogboek beschikbaar gemaakt). De nieuwste iOS 7-bèta werd eerst vrijgegeven voor ontwikkelaars als een OTA-update (over the air), zoals altijd het geval is, maar we hebben vernomen dat de nieuwe besturingssysteembestanden nu beschikbaar zijn om te downloaden op de online ontwikkelaarsportal van Apple. Apple heeft ook het volledige wijzigingslogboek voor iOS 7 bèta 5 gepost, met een lijst van alle software-updates die het bedrijf in zijn nieuwste bèta-besturingssysteem heeft weten te verwerken. BGR heeft een kopie ontvangen van Apple's wijzigingslogboek voor iOS 7 bèta 5, en alle details volgen hieronder.

Opmerkingen en bekende problemen

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

Opmerkingen

De klassen in het AddressBookUI-framework staan ​​nu expliciet subklassen niet toe. Voor apps die zijn gekoppeld aan de iOS 7 SDK, levert een poging om een ​​subklasse van een van deze klassen te initialiseren nul op. Voor apps die zijn gekoppeld aan oudere SDK's is de enige gedragsverandering een waarschuwing die in de console wordt geregistreerd.

Vanaf Seed 4 wordt privacyondersteuning voor het AddressBookUI-framework opnieuw ingeschakeld voor apps die zijn gekoppeld aan de iOS 7 SDK. Apps die zijn gekoppeld aan oudere SDK's worden niet gewijzigd. Als uw app een van de adresboekweergavecontrollers gebruikt, moet u controleren of deze zich nog steeds naar verwachting gedraagt.

AirDrop

Opmerkingen

AirDrop in iOS 7 Seed 2 of hoger is niet compatibel met AirDrop in iOS 7 Seed 1.

Contacten Alleen ondersteuning vereist dat:

U bent ingelogd bij iCloud.

De afzender en ontvanger hebben elkaars Apple ID-e-mailadressen in Contacten op hun apparaten.

Opgelost in zaad 5

Contact Only vereist momenteel dat je een actieve internetverbinding hebt.

De App Store zou de mogelijkheid moeten ondersteunen om een ​​app te vinden die een ontvangen document kan openen op basis van de Uniform Type Identifier (UTI) van het document. Momenteel wordt alleen een leeg scherm weergegeven.

Stichting AV

Opmerkingen

AVCaptureSession gebruikt nu standaard de AVAudioSession van uw app.

Kernanimatie

Opmerkingen

Als de UIViewGroupOpacity-sleutel niet aanwezig is, is de standaardwaarde nu JA. De standaardwaarde was voorheen NEE.

Dit betekent dat deelaanzichten van een transparant aanzicht eerst op dat transparante aanzicht worden samengevoegd en vervolgens de vooraf samengestelde subboom als geheel op de achtergrond wordt getekend. Een NEE-instelling resulteert in een goedkopere, maar ook minder nauwkeurige compositie: elke weergave in de transparante subboom wordt samengesteld op wat zich eronder bevindt, volgens de dekking van de ouder, in de normale volgorde van het schilderalgoritme.

Opmerkingen

In Seed 4 en hoger is de Exchange DeviceIdentifier terug gewijzigd naar het gedrag van iOS 6, waarbij het serienummer wordt gebruikt.

fonts

Opmerkingen

In Seed 4 zijn nieuwe lettertypelijnhoogten geïntroduceerd. Als u uw lettertype in eerdere Seeds handmatig had uitgelijnd, kan het in latere Seeds iets verticaal omhoog bewegen.

Foundation

Opmerkingen

Een NSMetadataQuery met een alomtegenwoordig bereik kan nu kMDItemContentTypeTree in predikaten gebruiken.

Bijvoorbeeld:

NSPredicaat *p = [NSVergelijkingsPredicaat

predicateWithLeftExpression:[NSExpressie

expressionForKeyPath:@”kMDItemContentTypeTree”]

rightExpressie:[NSExpressie

expressionForConstantValue:@”public.rtf”]

modifier: NSAnyPredicateModifier

type:NSLikePredicateOperatorType

opties:0];

Wanneer een beroep wordt gedaan op resultaten die worden geretourneerd door query's met een alomtegenwoordig bereik, wordt -[NSMetadataItem

valueForAttribute:NSMetadataItemDisplayNameKey] produceert nu dezelfde waarde als –

[NSURL getResourceValue: forKey: NSURLLocalizedNameKey], overeenkomend met niet-alomtegenwoordige

queries.

iCloud

Opmerkingen

Als u iCloud-sleutelhanger met herstel gebruikt, ziet u mogelijk een dialoogvenster waarin wordt aangegeven dat het herstel is uitgeschakeld vanwege een serverwijziging. Dit is opzettelijk. Volg de instructies in de melding om de functionaliteit opnieuw in te schakelen. Als u meerdere waarschuwingen ziet of problemen opmerkt bij het opnieuw inschakelen van het herstel, dient u een bugrapport in.

iCloud-sleutelhanger in iOS 7 Seed 3 of hoger is niet achterwaarts compatibel met iOS 7 Seed 2 of OS X

Mavericks-zaad 2.

Als u iCloud-sleutelhanger en/of sleutelhangerherstel had ingeschakeld vanaf iOS 7 Seed 2, worden beide functies uitgeschakeld bij het updaten naar iOS 7 Seed 3 of later.

Ga na het updaten naar iOS 7 Seed 3 of hoger naar Instellingen > iCloud > Sleutelhanger en schakel iCloudKeychain opnieuw in op uw apparaten.

Zie OS X v10.9 Release-opmerkingen voor meer details.

Activatieslot, een nieuwe functie van Zoek mijn iPhone, wordt automatisch ingeschakeld wanneer Zoek mijn iPhone is ingeschakeld op elk apparaat met iOS 7. Activatieslot vereist dat gebruikers hun Apple ID en wachtwoord invoeren om Zoek mijn iPhone in te schakelen en uit te loggen bij iCloud , wis het apparaat of activeer het apparaat opnieuw na het wissen. Het is belangrijk om een ​​van de volgende handelingen uit te voeren voordat u een apparaat overdraagt ​​aan een nieuwe gebruiker:

Meld u af bij iCloud.

Schakel het activeringsslot in via Instellingen > iCloud > Zoek mijn iPhone.

Opgelost in zaad 5

Spraakmemo's worden niet hersteld vanuit iCloud-back-ups.

Gebruikers in Zwitserland, Frankrijk, Spanje, Duitsland, Polen, Finland en mogelijk enkele andere landen kunnen hun sleutelhangers niet herstellen met behulp van telefoonnummervalidatie.

bekende problemen

Wachtwoordvelden worden niet weergegeven in waarschuwingsweergaven voor apps in liggende modus (bijvoorbeeld Game Center-authenticatie of in-app-aankoop). Tekstinvoer werkt nog steeds, hoewel u niet kunt zien wat u typt.

MAPK

Opmerkingen

Als de aanroepen om renderInContext op de laag die een MKMapView ondersteunt, vanuit de hoofdthread worden gedaan, moeten ze worden geëlimineerd of naar de hoofdthread worden verplaatst. Als u dit niet doet, kan dit een app-crash veroorzaken.

Gebruik in plaats van renderInContext de nieuwe MKMapSnapshotter API's.

Media

Opmerkingen

iOS onthoudt nu de laatst gebruikte media-app tijdens het opnieuw opstarten en crashen van de app. Media-apps die afstandsbedieningsgebeurtenissen kunnen ontvangen, moeten voorbereid zijn om op de achtergrond te worden gestart en mogelijk een afstandsbedieningsgebeurtenis te ontvangen om het afspelen te starten. Bovendien is het belangrijk dat media-apps de resetgebeurtenis van de mediaserver controleren en afhandelen, omdat de media-app mogelijk een extern verzoek ontvangt om het afspelen te hervatten na een reset. Meldingen om deze mediaservergebeurtenissen te monitoren zijn beschikbaar in

AVAudioSession en de juiste behandeling worden beschreven in Algemene aanbevelingen voor gebruik

kAudioSessionProperty_ServerDied.

Multipeer-connectiviteit

Opmerkingen

In deze Seed zijn veel updates van de MCSession API's opgenomen. De API's functioneren nu zoals ze werden gepresenteerd op WWDC. Belangrijke veranderingen en verbeteringen zijn onder meer: ​​De volgende nieuwe methode op MCSession is geïmplementeerd:

– (NSOutputStream *)startStreamWithName:(NSString *)streamName toPeer:(MCPeerID

*)peerID-fout:(NSError **)fout

Deze gedelegeerde methode is geïmplementeerd:

– (nietig)sessie:(MCSession *)sessie didReceiveStream:(NSInputStream *)stream

withName:(NSString *)streamName van Peer:(MCPeerID *)peerID

De volgende nieuwe methode op MCSession is geïmplementeerd:

– (NSProgress *)sendResourceAtURL:(NSURL *)resourceURL metNaam:(NSString

*)resourceName toPeer:(MCPeerID *)peerID withCompletionHandler:(void(^)(NSError

*fout))completionHandler

De gedelegeerde methode om te beginnen met het ontvangen van een bron van een externe peer is geïmplementeerd als:

– (void)session:(MCSession *)session didStartReceivingResourceWithName:(NSString

*)bronnaam vanPeer:(MCPeerID *)peerID withProgress:(NSProgress *)voortgang

De gedelegeerde methode om het ontvangen van een bron van een externe peer te voltooien en de inhoud op te slaan in een

tijdelijke locatie wordt geïmplementeerd als:

– (void)session:(MCSession *)session didFinishReceivingResourceWithName:(NSString

*)bronnaam vanPeer:(MCPeerID *)peerID atURL:(NSURL *)lokaleURL met fout:

(NSError *)fout

Opmerkingen: De app is verantwoordelijk voor het verplaatsen van het bestand naar een permanente locatie binnen de sandbox.

MCAdvertiserAssistant is een gemaksklasse voor het implementeren van een adverteerder, die uitnodigingen en verbindingen met een MCSession afhandelt.

MCSession heeft een nieuwe initWithPeer: methode.

sendResource heeft "with" toegevoegd aan de completeringHandler.

De time-out is verwijderd uit connectPeer:withNearbyConnectionData.

Bekijk voor meer informatie over deze API's de video voor WWDC 2013 Session 708, “Nearby

Netwerken met Multipeer-connectiviteit.”

multitasking

Opmerkingen

AVAudioSession kan niet meer actief worden door apps op de achtergrond die wakker worden vanwege

Ophalen op de achtergrond, achtergrondoverdrachten en gebeurtenissen voor externe meldingen.

Het beleid voor de taakvoltooiings-API is weer gewijzigd om overeen te komen met het iOS 6-gedrag, maar de tijdslimiet voor het voltooien van taken is verlaagd van 10 minuten in iOS 6.

NetwerkOpmerkingen

De cellulaire fallback-technologie die aanwezig was in eerdere zaden is verwijderd vanaf Seed 5.

Twee low-level netwerk-API's die vroeger een MAC-adres retourneerden, retourneren nu de vaste waarde

02:00:00:00:00:00. De betreffende API's zijn sysctl (NET_RT_IFLIST) en ioctl

(SIOCGIFCONF). Ontwikkelaars die de waarde van het MAC-adres gebruiken, moeten naar dergelijke identificatiegegevens migreren

as -[UIDevice identifierForVendor]. Deze wijziging is van invloed op alle apps die op iOS 7 draaien.

Doelstelling-C Runtime

Opmerkingen

Als gevolg van veranderingen in de manier waarop het isa-veld wordt geïmplementeerd, kan *self tijdens de opsomming veranderen (bijv

als de container bijvoorbeeld wordt vastgehouden).

Tijdelijke oplossing: stel bij het implementeren van countByEnumeratingWithState geen state-

>mutatiesPtr = zelf.

Rekening-courantboekje

Opmerkingen

Vanaf iOS 7 Seed 4 heeft Passbook ondersteuning toegevoegd voor de grote en kleine velden om beter op elkaar aan te sluiten

rest van het iBeacon-ecosysteem. De nieuwe majeur- en mineurtoonsoorten zijn onafhankelijk variabel optioneel

naast proximityUUID (vereist) in elk woordenboek in de bakenarray.

In eerdere versies van de iOS SDK valideerde Passbook de achtervelden van passen niet

volledig. De validatieregels zijn niet veranderd, maar de validatie omvat nu ook backfields.

Controleer het consolelogboek voor aanvullende logboeken.

Vanaf iOS 7 Seed 3 is PKPassLibraryDidCancelAddPasses een nieuwe statuscode in de

PKPassLibraryAddPassesStatus enum. Het betekent dat de gebruiker op Annuleren heeft getikt in een add-passes

alert.

Foto's

Opmerkingen

Bij het upgraden van een eerder zaadje verschijnen er korte tijd geen fotominiaturen in de Foto's-app

terwijl.

Safari

Opgelost in zaad 5

Bij een upgrade naar iOS worden de instellingen van Safari mogelijk teruggezet naar hun standaardwaarden.

Beveiligingsopmerkingen

-[UIDevice uniqueIdentifier] wordt niet langer geaccepteerd in inzendingen voor de App Store. In iOS 7,

apps die al in de winkel staan ​​of op de apparaten van gebruikers die deze verwijderde API aanroepen, zullen dat niet meer zijn

heeft de UDID geretourneerd. In plaats daarvan retourneert -[UIDevice uniqueIdentifier] een tekenreeks van 40 tekens

beginnend met FFFFFFFF, gevolgd door de hexadecimale waarde van -[UIDevice identifierForVendor]. Het is

Het is belangrijk om na te denken over de gevolgen hiervan voor bestaande apps. Ik overweeg om updates in te dienen die nee zijn

langer toegang tot de UDID.

iOS vraagt ​​nu toestemming van gebruikers om apps audio-invoer te laten gebruiken op alle iOS 7-apparaten. Voor apparaten die zijn verkocht

China, iOS zal ook toestemming van de gebruiker vragen voor apps om de camerahardware te gebruiken. De operationele

het systeem zal de toestemmingswaarschuwing weergeven wanneer u de categorie van het geïnstantieerde instelt

AVaudiosessie. De AVAudioSession-categorieën die de waarschuwing zullen presenteren zijn

AVAudioSessionCategoryRecord en AVAudioSessionCategoryPlayAndRecord.

Als de gebruiker geen toegang verleent, bestaan ​​de gegevens van de audiosessie uit allemaal nullen (stilte). Voor apparaten waar

cameratoegang wordt aangevraagd en geweigerd door de gebruiker, de video-opnamesessie is een zwart scherm.

De API gethostuuid() is verwijderd en wordt niet geaccepteerd voor verzending naar de winkel,

ongeacht het beoogde besturingssysteem. Voor bestaande apps die op iOS 7 draaien, retourneert de functie een uuid_t

weergave van de leveranciers-ID (-[UIDevice identifierForVendor]).

Setup

Opgelost in zaad 5

De configuratie-assistent kan crashen bij het instellen van een nieuw apparaat met een bestaand e-mailadres.

Siri

Opmerkingen

Dit zaad bevat ontwikkelingsversies van nieuwe mannelijke en vrouwelijke Siri-stemmen voor Amerikaans Engels, Frans,

en Duits.

Social

Opmerkingen

Via iOS 6, bij gebruik van TWTweetComposeViewController en SLComposeViewController

(deze laatste alleen voor Twitter en Weibo, maar niet voor Facebook), als de beller een

completeringHandler, de geleverde completeringHandler is verantwoordelijk voor het sluiten van de weergave

controleur. Vanaf iOS 7 zal de weergavecontroller zichzelf negeren als de app koppelt aan de iOS 7 SDK

zelfs als de aanroeper een completeringshandler levert. Om dit te voorkomen, is de completeHandler

mag de weergavecontroller niet negeren.

Bij gebruik van de iOS 6.1 SDK op OS X v10.8 Mountain Lion, als u iOS 5.0 of iOS 5.1 Legacy gebruikt

SDK in iOS Simulator, kunt u de Twitter-functies niet gebruiken: u probeert in te loggen bij Twitter

via het paneel Instellingen zal mislukken en Twitter.framework zal niet correct werken. Als je moet testen

Twitter-functies, moet u een iOS 6.1- of iOS 6.0 Simulator-runbestemming kiezen, of

je kunt testen met iOS 5.x op een apparaat Springboard

Opmerkingen

Actieve aanrakingen worden niet langer geannuleerd wanneer de gebruiker een screenshot maakt.

Dynamische achtergrond is niet beschikbaar op iPhone 4.

Sprite-kit

Opmerkingen

+[AVPlayer playerWithPlayerItem:] retourneert een AVPlayer-object, maar het huidige item keert terug

nul als de speler in een andere thread is gemaakt.

Winkels

Opgelost in zaad 5

Sommige iPhone 4-apparaten kunnen geen inhoud downloaden van de App Store en de iTunes Store.

bekende problemen

App-downloads kunnen vastlopen in de status 'Wachten'.

Tijdelijke oplossing: Start uw apparaat een of twee keer opnieuw op om het probleem op te lossen en daaropvolgende downloads mogelijk te maken

te gaan.

UIKit

Opmerkingen

Vóór Seed 4 was de snapshot-API (snapshotView en

resizableSnapshotViewFromRect:withCapInsets:) zou het maken van de momentopname uitstellen als de weergave

was nooit vastgelegd of was toegevoegd aan de weergavehiërarchie in de huidige transactie. Dit

gedrag is veranderd.

Snapshots vertegenwoordigen nu altijd de huidige, vastgelegde status van de weergave. Poging tot momentopname

een weergave die nog nooit is vastgelegd, registreert een bericht en retourneert nu nul.

De methoden voor het maken van momentopnamen zijn bijgewerkt en hebben nu een argument: afterUpdates. Wanneer ingesteld op

JA, hierdoor wordt de momentopname opgedragen te wachten totdat alle openstaande wijzigingen in de hiërarchie zijn aangebracht

betrokken. Om het pre-Seed 4-gedrag te behouden, geeft u NO door en de momentopname legt vast wat het is

momenteel op het scherm. Zie UIView.h voor meer details.

Als er niet genoeg ruimte is in de navigatiebalkindeling voor de volledige tekst van de titel van de terugknop,

de navigatiebalk vervangt een algemene korte titel (in het Engels: “Terug”). Als die string dat ook is

te lang is, toont de balk de chevron met de achterste indicator zonder titel.

+[UIPasteboard pasteboardWithName:create:] en +[UIPasteboard

pasteboardWithUniqueName] maakt nu de opgegeven naam uniek, zodat alleen die apps dezelfde naam hebben

toepassingsgroep om toegang te krijgen tot het plakbord. Als de ontwikkelaar probeert een plakbord te maken met een

naam die al bestaat en ze geen deel uitmaken van dezelfde app-suite, krijgen ze hun eigen unieke en privé-plakbord. Houd er rekening mee dat dit in het algemeen geen invloed heeft op de door het systeem geleverde plakborden.

en vind.

Vanaf Seed 2 gebruiken apps standaard het nieuwe, op de viewcontroller gebaseerde statusbalkbeheer

systeem. Als u zich hiervoor wilt afmelden, voegt u de waarde NO toe voor de

UIViewControllerBasedStatusBarAppearance-sleutel voor uw Info.plist.

Wanneer u Auto Layout gebruikt om een ​​UIButton te positioneren, en u de compressieweerstand van de inhoud instelt of

inhoud die de prioriteit tot een minimum beperkt, zal de knop een dubbelzinnige lay-out hebben.

Tijdelijke oplossing: gebruik geen inhoudscompressieweerstand of inhoudsknuffelprioriteit van minder dan

2 voor UIButton.

Met UIScreenEdgePanGestureRecognizer kunt u acties uitvoeren als reactie op veegbewegingen

de rand van het scherm met behulp van dezelfde heuristieken die het systeem gebruikt voor zijn eigen gebaren. Gebruik dit

als u zelf een navigatiesemantiek heeft die geen UINavigationController gebruikt, maar

zou dit gebaar moeten bevatten (bijvoorbeeld Safari).

Deze gebarenherkenner heeft een eigenschap die de randen beschrijft waarop hij actief is. UIRectEdge is

een nieuw enumtype dat deze eigenschap en -[UIViewController edgeForExtendedLayout] kunnen

deel. UIRectEdge vervangt UUIExtendedEdge, die zal worden verwijderd. De leden van beide hebben

dezelfde waarden. Gebruik Xcode om alle exemplaren van "UIExtendedEdge" in uw project te vervangen door

"UIRectEdge".

UIButtonTypeInfoLight, UIButtonTypeInfoDark en UIButtonTypeDetailDisclosure

knoppen zien er allemaal hetzelfde uit.

Wazige lagen zijn niet beschikbaar op iPhone 4.

Parallax is niet beschikbaar op iPhone 4.

Boekdruktekst is niet beschikbaar op iPhone 4.

Opgelost in zaad 5

De gebruikersinterface van uw app kan iets bewegen na gebruik van een mediaspeler in liggende modus.

bekende problemen

Wachtwoordvelden worden niet weergegeven in waarschuwingsweergaven voor apps in landschapsmodus (bijvoorbeeld Game Center).

authenticatie of in-app-aankoop). Tekstinvoer werkt nog steeds, hoewel u niet kunt zien wat u typt.

Weer

Opmerkingen

Weersomstandigheden zijn niet geanimeerd op iPhone 4.

WebKit

Opmerkingen

Als voorheen de viewportparameters werden gewijzigd, werden de oude parameters nooit verwijderd.

Dit zorgde ervoor dat de viewport-parameters additief waren.

Als u bijvoorbeeld bent begonnen met width=device-width en dit vervolgens hebt gewijzigd in initial-scale=1.0,

eindigde met een berekende viewport van width=device-width, initial-scale=1.0. In iOS 7 is dit aangepakt. Nu krijg je een berekende viewport met initiële schaal = 1.0.

Vroeger, bij gebruik

Schaal kan na rotatie onjuist zijn.

Als een gebruiker de pagina nu niet expliciet heeft geschaald, wordt de pagina hersteld naar de oorspronkelijke schaal. Ook de

de huidige schaal is nu correct beperkt binnen de grenzen van de minimale schaal en de maximale schaal.

Sommige afbeeldingen voor Retina-weergaveapparaten worden twee keer zo groot weergegeven als ze zouden moeten zijn, in plaats van dat ze zo groot zijn

50% verkleind. Dit probleem kan zich ook voordoen bij elke afbeelding die moet worden geschaald en die groter is dan de grootte ervan

container en die de eigenschap background-size of de -webkit-background-size gebruikt

eigendom. Dit probleem is van invloed op zowel native apps die webinhoud weergeven als op webpagina's die worden bekeken

Safari voor iPhone.

De achtergrond-CSS-steno-eigenschap stelt nu de waarde van de achtergrondgrootte-eigenschap opnieuw in

automatisch als de achtergrondgrootte niet is opgegeven. Dit nieuwe gedrag is conform de CSS-specificatie en het oude

gedrag is alleen beschikbaar voor apps die zijn gekoppeld aan een SDK vóór iOS 7.0 wanneer ze worden uitgevoerd op iOS 7 of hoger.

Tijdelijke oplossing: geef de eigenschap background-size of de eigenschap -webkit-background-size op

na de achtergrond-steno-eigenschap in het CSS-stylesheet voor de webinhoud

weergegeven.

Webapps en webclips die vóór Seed 4 zijn gemaakt, blijven niet in mappen staan ​​tijdens het opnieuw opstarten.

Tijdelijke oplossing: verwijder de oude web-app of webclip en maak deze opnieuw in dit zaad door de inhoud te laden

in Safari tikt u op de knop Actie en vervolgens op 'Toevoegen aan startscherm'.

Wi-Fi

Opmerkingen

Seed 4 en later bevatten wijzigingen in AWDL, zodat technologieën die er gebruik van maken, zoals AirDrop en de

MultiPeerConnectivity API's: werken niet goed met oudere seeds.