iOS beta 7 3 è stato lanciato questa sera dall'azienda Apple, e di seguito avete presentato l'intero changelog di questa build disponibile per iDevices. In generale, l'azienda Apple ha risolto alcuni dei problemi esistenti nella versione beta 2, ha migliorato le prestazioni generali e ha implementato alcune novità utili solo agli sviluppatori, ma speriamo che ci siano alcuni cambiamenti che non vengono menzionati qui. . Se desideri avere un UDID registrato per iOS 7, vorrei informarti che i membri registrati di iDevice.ro beneficiano di questo privilegio in base alla registrazione di un abbonamento e hai maggiori informazioni su di loro su questa pagina.
Introduzione
iOS SDK 7.0 fornisce supporto per lo sviluppo di app iOS e include il set completo di strumenti, compilatori e framework Xcode per la creazione di app per iOS e OS X. Questi strumenti includono l'IDE Xcode e lo strumento di analisi Instruments, tra molti altri.
Con questo software puoi sviluppare app per iPhone, iPad o iPod touch con iOS 7. Puoi anche testare le tue app utilizzando il simulatore iOS incluso, che supporta iOS 7. iOS SDK 7.0 richiede un computer Mac con OS X v10.8.4 ( Leone di montagna) o successivo.
Questa versione di iOS è destinata all'installazione solo su dispositivi registrati con l'Apple Developer Program. Il tentativo di installare questa versione di iOS in modo non autorizzato potrebbe mettere il tuo dispositivo in uno stato inutilizzabile.
Per ulteriori informazioni e risorse di supporto aggiuntive, visitare http://developer.apple.com/programs/ios/.
Segnalazione di bug
Per segnalare eventuali bug non menzionati nel Note e problemi noti sezione, utilizzare Apple Bug Reporter sul sito web degli sviluppatori Apple (http://developer.apple.com/bugreporter/). Inoltre, puoi discutere di questi problemi e dell'SDK iOS 7.0 nei forum degli sviluppatori Apple:http://devforums.apple.com. Per ottenere ulteriori informazioni su iCloud for Developers, vai a http://developer.apple.com/icloud.
Note e problemi noti
I seguenti problemi riguardano l'utilizzo di iOS SDK 7.0 per sviluppare codice.
Airdrop
Note
- AirDrop in iOS 7 Seed 2 o versioni successive non è compatibile con AirDrop in iOS 7 Seed 1.
- Contatti Solo il supporto richiede che:
- Hai effettuato l'accesso a iCloud.
- Il mittente e il destinatario hanno gli indirizzi e-mail dell'ID Apple l'uno dell'altro in Contatti sui propri dispositivi.
Problemi noti
- Solo contatto attualmente richiede una connessione Internet attiva.
- L'App Store dovrebbe supportare la possibilità di trovare un'app in grado di aprire un documento ricevuto in base all'Uniform Type Identifier (UTI) del documento. Attualmente, viene visualizzata solo una schermata vuota.
AirPlay
Risolto nel seme 3
- Quando invii musica a una Apple TV, l'avanzamento alla traccia successiva potrebbe non riuscire.
- Il volume dell'audio potrebbe aumentare notevolmente e inaspettatamente durante AirPlay.
Fondazione AV
Note
AVCaptureSession
ora utilizza la tua appAVAudioSession
per impostazione predefinita.Calendario
Problemi noti
- I calendari o i promemoria di iCloud potrebbero essere duplicati dopo l'aggiunta di nuovi eventi.Soluzione alternativa: nascondi il calendario duplicato dalla vista e le cose continueranno a sincronizzarsi normalmente.
- Gli eventi del calendario iCloud potrebbero non essere sincronizzati tramite recupero, push o aggiornamento manuale come previsto.Soluzione alternativa: crea un nuovo evento o modifica un evento esistente per attivare la sincronizzazione.
Car Display
Problemi noti
Il supporto per Car Display verrà fornito una volta che i sistemi compatibili saranno disponibili.
Contatti
Problemi noti
Alcune foto ad alta risoluzione non verranno sincronizzate (tramite iCloud e altri servizi) se impostate come foto dell'ID chiamante di un contatto.
Soluzione alternativa: utilizzare una foto a risoluzione inferiore.
Animazione di base
Note
Quando il
UIViewGroupOpacity
la chiave non è presente, il valore predefinito ora è YES. L'impostazione predefinita in precedenza era NO.Ciò significa che le viste secondarie di una vista trasparente verranno prima composte su quella vista trasparente, quindi la struttura secondaria precomposta verrà disegnata nel suo insieme sullo sfondo. Un'impostazione NO si traduce in una composizione meno costosa, ma anche meno accurata: ogni vista nel sottoalbero trasparente è composta su ciò che c'è sotto, in base all'opacità del genitore, nell'ordine dell'algoritmo del normale pittore.
iCloud
Note
- Il portachiavi iCloud in iOS 7 Seed 3 non è retrocompatibile con iOS 7 Seed 2 e OS X Mavericks Seed 2.Se il portachiavi iCloud e/o il ripristino portachiavi erano abilitati da iOS 7 Seed 2, entrambe le funzionalità verranno disabilitate dopo l'aggiornamento a iOS 7 Seed 3.
Dopo l'aggiornamento a iOS 7 Seed 3, vai su Impostazioni > iCloud > Portachiavi e riattiva il portachiavi iCloud sui tuoi dispositivi.
Per ulteriori dettagli, vedere le note sulla versione di OS X v10.9.
- Blocco attivazione, una nuova funzionalità di Trova il mio iPhone, si attiva automaticamente quando Trova il mio iPhone è abilitato su qualsiasi dispositivo con iOS 7. Blocco attivazione richiede agli utenti di inserire il proprio ID Apple e la password per disattivare Trova il mio iPhone, uscire da iCloud , cancellare il dispositivo o riattivare il dispositivo dopo una cancellazione. È importante eseguire una delle seguenti operazioni prima di trasferire un dispositivo a un nuovo utente:
- Esci da iCloud.
- Disattiva Blocco attivazione in Impostazioni > iCloud > Trova il mio iPhone.
Risolto nel seme 3
- La tastiera non è presente nella finestra di dialogo di approvazione del portachiavi iCloud dopo lo sblocco dello schermo.Soluzione alternativa: toccare Non consentire o Consenti. La tastiera verrà presentata la volta successiva.
- Se modifichi il Paese associato a un numero di telefono in Impostazioni > iCloud > Nome account > Portachiavi, non sarai in grado di visualizzare il nome/codice del Paese modificato.Soluzione alternativa: disattivare Ripristino portachiavi, quindi riattivarlo.
- Se hai "Ripristina tutti i contenuti e le impostazioni" su un dispositivo (Impostazioni > Generali > Ripristina) che:
- Ha un account iCloud configurato
- Il blocco attivazione Trova il mio iPhone è abilitato
- Non è passato in precedenza a Impostazioni > iCloud
non ti verrà chiesto di inserire le tue credenziali iCloud per disabilitare il blocco attivazione prima della cancellazione. Una volta inizializzato il dispositivo, l'attivazione verrà bloccata.
Soluzione alternativa: elimina l'account iCloud prima di inizializzare il dispositivo. Se in questo stato, inserisci le credenziali del tuo account iCloud per sbloccare il dispositivo.
- Gli utenti del portachiavi iCloud che configurano un dispositivo aggiuntivo riceveranno una richiesta di approvazione per gli altri dispositivi con il portachiavi iCloud attivato. La richiesta di approvazione non verrà visualizzata se gli schermi sono spenti e i dispositivi sono inattivi.Soluzione alternativa: riattivare qualsiasi dispositivo peer per accettare la richiesta di approvazione.
- In iOS 7, gli interruttori Trova il mio iPhone e Segnalibri non sono più supportati sugli account iCloud secondari. Quando aggiorni il tuo dispositivo con una di queste opzioni abilitate su un account iCloud secondario, verranno disattivate senza alcuna notifica all'utente.Soluzione alternativa: configura l'account iCloud principale tramite Impostazioni/iCloud e quindi abilita Trova il mio iPhone o Segnalibri.
- In rare occasioni, gli utenti potrebbero riscontrare difficoltà nella configurazione del portachiavi iCloud su alcuni dei loro dispositivi.Soluzione alternativa: un pulsante temporaneo di ripristino del portachiavi iCloud è disponibile in Impostazioni iCloud > Account > Sicurezza account.
Problemi noti
- A volte, quando disabiliti il portachiavi iCloud, potresti non essere in grado di riattivarlo.Soluzione alternativa: disabilitare il portachiavi su tutti i dispositivi abilitati, quindi riabilitarlo.
- I portachiavi non vengono sincronizzati tra i dispositivi quando si trovano su una rete wireless con sicurezza WEP.
- Quando configuri il portachiavi iCloud in Impostazione Assistita su iPhone 4 e iPhone 4s, la tastiera copre il campo di immissione del codice di sicurezza iCloud e il collegamento Opzioni avanzate.Soluzione alternativa: scorrere verso il basso per visualizzare le voci nascoste.
- Gli utenti in Svizzera, Francia, Spagna, Germania, Polonia, Finlandia e forse in altri paesi non saranno in grado di ripristinare i propri portachiavi utilizzando la convalida del numero di telefono.Soluzione alternativa: utilizzare un codice di sicurezza casuale.
- Le carte di credito eliminate in Impostazioni Safari > Compilazione automatica vengono rimosse dal dispositivo ma non da altri dispositivi.Soluzione alternativa: apportare un'altra modifica locale (come l'aggiunta di una carta di credito) forzerà la sincronizzazione.
- Gli utenti che si disconnettono da iCloud eliminando il proprio account iCloud, cancellando tutti i contenuti e le impostazioni o cancellando il dispositivo tramite Trova il mio iPhone e accedendo nuovamente non verranno visualizzate con le schermate di configurazione del portachiavi iCloud corrette.Soluzione alternativa: attiva il portachiavi iCloud, quindi approva con Codice di sicurezza iCloud > Codice di sicurezza dimenticato > Reimposta portachiavi iCloud.
- Gli utenti che dispongono di un singolo dispositivo con il portachiavi iCloud acceso non verranno visualizzati con le schermate di configurazione del portachiavi iCloud corrette dopo il ripristino da un backup.Soluzione alternativa: attiva il portachiavi iCloud, quindi approva con Codice di sicurezza iCloud > Codice di sicurezza dimenticato > Reimposta portachiavi iCloud.
- Gli ePub e i PDF non acquistati non verranno ripristinati durante il ripristino su iCloud di un dispositivo iOS 7 con un backup precedente a iOS 7. Il contenuto acquistato verrà ripristinato senza problemi.Soluzione alternativa: utilizzare la sincronizzazione di iTunes.
MAPK
Note
Se le chiamate a
renderInContext
sullo strato di supporto anMKMapView
vengono creati fuori dal thread principale, devono essere eliminati o spostati nel thread principale. In caso contrario, l'app potrebbe bloccarsi. Invece di usarerenderInContext
, usa il nuovoMKMapSnapshotter
API.Messaggi
Risolto nel seme 3
- In un'installazione pulita, l'avvio di Messaggi presenta un elenco di messaggi vuoto anziché una nuova finestra di composizione.
- Il database Messaggi esistente potrebbe essere eliminato dopo un ripristino o un aggiornamento se:
- Non accedi a iCloud durante l'impostazione assistita.
- Gli account iMessage e iCloud utilizzano ID diversi.
- L'app Messaggi si arresta in modo anomalo dopo aver visualizzato eventuali allegati su due thread separati.Soluzione alternativa: gli allegati sono visibili dopo il riavvio di Messaggi.
Connettività multi-peer
Note
Molti aggiornamenti al
MCSession
Le API sono incluse in questo seed. Le API ora funzionano come sono state presentate al WWDC. Le principali modifiche e miglioramenti includono:
- Il seguente nuovo metodo attivo
MCSession
è stato implementato:- (NSOutputStream *)startStreamWithName:(NSString *)streamName toPeer:(MCPeerID *)peerID error:(NSError **)error
Questo metodo delegato è stato implementato:- (void)session:(MCSession *)session didReceiveStream:(NSInputStream *)stream withName:(NSString *)streamName fromPeer:(MCPeerID *)peerID
- Il seguente nuovo metodo attivo
MCSession
è stato implementato:- (NSProgress *)sendResourceAtURL:(NSURL *)resourceURL withName:(NSString *)resourceName toPeer:(MCPeerID *)peerID withCompletionHandler:(void(^)(NSError *error))completionHandler
Il metodo delegato per iniziare a ricevere una risorsa dal peer remoto è stato implementato come:- (void)session:(MCSession *)session didStartReceivingResourceWithName:(NSString *)resourceName fromPeer:(MCPeerID *)peerID withProgress:(NSProgress *)progress
Il metodo delegato per completare la ricezione di una risorsa dal peer remoto e salvare il contenuto in una posizione temporanea viene implementato come:
- (void)session:(MCSession *)session didFinishReceivingResourceWithName:(NSString *)resourceName fromPeer:(MCPeerID *)peerID atURL:(NSURL *)localURL withError:(NSError *)error
MCAdvertiserAssistant
è una nuova classe. È una classe utile per implementare un inserzionista, che gestisce gli inviti e le connessioni a unMCSession
.MCSession
ha un nuovoinitWithPeer:
metodo.sendResource
ha aggiunto "con" alcompletionHandler
.- Il timeout è stato rimosso da
connectPeer:withNearbyConnectionData
.Per ulteriori informazioni su queste API, vedere "Sessione WWDC 701: Connettività multipeer".
music Player
Risolto nel seme 3
MPMediaPickerController
è stato disabilitato per questo seed. Tornerà immediatamente come se l'utente avesse annullato la selezione.Networking
Note
- Il fallback cellulare è una tecnologia che tenterà di connettersi tramite l'interfaccia cellulare quando una connessione tramite l'interfaccia Wi-Fi non riesce. Esistono numerosi casi in cui possono verificarsi errori di connessione tramite Wi-Fi, ad esempio un modem via cavo che necessita di un riavvio o un firewall che blocca l'accesso a determinate risorse.Se l'app limita le operazioni di rete sulla rete cellulare, verifica che il codice utilizzi l'API corretta per implementare tale criterio.
Ad esempio, se la tua app guarda
SCNetworkReachability
per l'kSCNetworkReachabilityFlagsIsWWAN
per monitorare quando il Wi-Fi è disponibile, potrebbe non comportarsi correttamente in caso di fallback cellulare.Se un'app utilizza questo metodo e poi tenta di connettersi, pensando di ottenere una connessione tramite Wi-Fi, l'app potrebbe inavvertitamente ritrovarsi con una connessione tramite la rete cellulare. La mancanza del
kSCNetworkReachabilityFlagsIsWWAN
non è una garanzia che la tua connessione non passerà tramite cellulare. Se il codice deve imporre che una connessione non superi la rete cellulare, è necessario specificarlo quando si effettua una richiesta di rete.Invece, per
CFNetwork
codice utilizzandoCFSocketStream
,CFHTTPStream
o API simili, imposta il filekCFStreamPropertyNoCellular
proprietà su true sull'oggetto CF prima della connessione.Nel
NSURLRequests
, chiama[request setAllowsCellularAccess: false]
.Oltre a garantire che il tuo codice non sarà mai connesso tramite cellulare a causa del fallback cellulare, questa chiamata garantisce che il tuo codice non sarà mai connesso tramite cellulare a causa della VPN o di problemi di routing contorti (connessione a IPv6 su cellulare perché solo IPv4 è disponibile su Wi-Fi, ecc.).
Per verificare che la tua app funzioni correttamente, dovresti eseguire il test su una rete Wi-Fi interrotta. Il modo più semplice per configurare una rete Wi-Fi interrotta è configurare una base AirPort Apple o un altro punto di accesso Wi-Fi per distribuire un indirizzo DHCP e lasciare il punto di accesso disconnesso da Internet. Un altro modo semplice per eseguire il test è scollegare il cavo o la linea DSL dal modem via cavo o DLS.
- Due API di rete di basso livello che in passato restituivano un indirizzo MAC ora restituiscono il valore fisso 02:00:00:00:00:00. Le API in questione lo hanno
sysctl (NET_RT_IFLIST)
edioctl (SIOCGIFCONF)
. Gli sviluppatori che utilizzano il valore dell'indirizzo MAC dovrebbero migrare verso identificatori come-[UIDevice identifierForVendor]
. Questa modifica interessa tutte le app in esecuzione su iOS 7.- Tutti
NSURL
le attività della sessione ora iniziano sospese anziché in esecuzione. Ciò consente di impostare il loro stato prima dell'avvio dell'attività.edicola
Risolto nel seme 3
I download in background di Edicola che utilizzano l'autenticazione HTTP di base o digest richiederanno all'utente avvisi di autorizzazione (
NSURLConnectionDelegate Protocol
richiamate perconnectionShouldUseCredentialStorage
edwillSendRequestForAuthenticationChallenge
non è chiamato correttamente).Runtime di Objective-C
Note
A causa di cambiamenti nel modo in cui
isa
il campo è implementato,*self
può cambiare durante l'enumerazione (ad esempio, se il contenitore viene mantenuto).Soluzione alternativa: durante l'implementazione
countByEnumeratingWithState
, non impostarestate->mutationsPtr = self
.Libretto di risparmio
Note
- Nelle versioni precedenti dell'SDK iOS, Passbook non convalidava completamente i campi posteriori sui passaggi. Questo problema è stato corretto, ma significa che alcuni passaggi aggiunti su iOS 6.0, 6.1 e iOS 7.0 Seed 1 non saranno validi su iOS 7 Seed 2 e versioni successive. Le regole di validazione non sono cambiate, si trattava solo di un bug nella validazione nelle implementazioni precedenti. Se hai un pass che in precedenza potevi aggiungere a Passbook, ma non puoi più, controlla il registro della console per più di un campo che ha la chiave NOME. Le chiavi di campo devono essere univoche.
- A partire da iOS 7 Seed 3,
PKPassLibraryDidCancelAddPasses
è un nuovo codice di stato inPKPassLibraryAddPassesStatus
enum. Significa che l'utente ha toccato Annulla in un avviso di aggiunta passaggi.Safari
Problemi noti
- L'aggiornamento a iOS potrebbe ripristinare le impostazioni di Safari sui valori predefiniti.
- Le credenziali del sito Web Safari non sempre vengono compilate automaticamente tra le versioni mobile e desktop.Soluzione alternativa: utilizzare la versione desktop se il sito la offre.
Sicurezza
Note
-[UIDevice uniqueIdentifier]
non è più accettato negli invii all'App Store. In iOS 7, alle app già presenti nello store o sui dispositivi degli utenti che chiamano questa API rimossa non verrà più restituito l'UDID. Invece,-[UIDevice uniqueIdentifier]
restituirà una stringa di 40 caratteri che inizia con FFFFFFFF, seguita dal valore esadecimale di-[UIDevice identifierForVendor]
. È importante considerare come ciò influirà sulle app esistenti. Considero l'invio di aggiornamenti che non accedono più all'UDID.- iOS ora richiede il consenso dell'utente affinché le app utilizzino l'input audio su tutti i dispositivi iOS 7. Per i dispositivi venduti in Cina, iOS richiederà anche il consenso dell'utente affinché le app utilizzino l'hardware della fotocamera. Il sistema operativo presenterà l'avviso di consenso quando si imposta la categoria dell'istanziato
AVAudioSesison
.AVAudioSessionCategories
che presenterà l'avviso èAVAudioSessionCategoryRecord
edAVAudioSessionCategoryPlayAndRecord
.Se l'utente non consente l'accesso, i dati della sessione audio saranno tutti zeri (silenzio). Per i dispositivi in cui l'accesso alla telecamera è richiesto e negato dall'utente, la sessione di acquisizione video è una schermata nera.- L'API
gethostuuid()
è stato rimosso e non sarà accettato per l'invio allo store, indipendentemente dal sistema operativo di destinazione. Per le app esistenti in esecuzione su iOS 7, la funzione restituirà una rappresentazione uuid_t dell'identificatore del fornitore (-[UIDevice identifierForVendor]
).Impostazioni profilo
Risolto nel seme 3
In Generale > Aggiornamento app in background, le impostazioni per app non vengono rispettate.
Impostare
Risolto nel seme 3
Dopo aver inizializzato il dispositivo da Impostazioni > Generali > Ripristina > Cancella contenuto e impostazioni, i registri di CrashReporter non verranno più copiati dal dispositivo al computer.
Soluzione alternativa: ripristina il dispositivo da un IPSW invece di utilizzare Cancella tutto il contenuto e le impostazioni sul dispositivo.
Siri
Note
Questo seme include versioni di sviluppo di nuove voci Siri maschili e femminili per l'inglese americano e il francese e una voce maschile per il tedesco.
Social
Note
Fino a iOS 6, durante l'utilizzo
TWTweetComposeViewController
edSLComposeViewController
(quest'ultimo solo per Twitter e Weibo, ma non per Facebook), se il chiamante fornisce acompletionHandler
, il fornitocompletionHandler
è responsabile della chiusura del controller di visualizzazione. A partire da iOS 7, se l'app si collega all'SDK di iOS 7, il controller della vista si chiuderà anche se il chiamante fornisce uncompletionHandler
. Per evitare ciò, il chiamantecompletionHandler
non dovrebbe chiudere il controller della vista.Problemi noti
Quando utilizzi l'SDK di iOS 6.1 su OS X v10.8 Mountain Lion, se utilizzi l'SDK Legacy di iOS 5.0 o iOS 5.1 nel simulatore iOS, non sarai in grado di utilizzare le funzionalità di Twitter: tentando di accedere a Twitter tramite il riquadro Impostazioni fallirà, e
Twitter.framework
non funzionerà correttamente. Se devi testare le funzionalità di Twitter, dovrai scegliere una destinazione di esecuzione del simulatore iOS 6.1 o iOS 6.0 oppure puoi testare con iOS 5.x su un dispositivo.Trampolino
Note
- I tocchi attivi non vengono più annullati quando l'utente acquisisce uno screenshot.
- Lo sfondo dinamico non è disponibile su iPhone 4.
Risolto nel seme 3
- Le impostazioni del blocco con codice e del tempo di blocco automatico non vengono sempre rispettate. A volte il dispositivo non richiede un passcode quando le impostazioni lo indicano.
- Alcune app potrebbero ricevere notifiche push duplicate o nessuna notifica.
- Il commutatore di app non mostra tutte le app sospese.
Problemi noti
- Le password con segni diacritici non sono supportate in questo seme. Se hai segni diacritici nella tua password, cambiala prima di eseguire l'aggiornamento a Seed 3 poiché non sarai in grado di sbloccare il tuo dispositivo.
- Springboard si arresta in modo anomalo quando si accede ad alcuni clip Web in App Switcher.
- Durante il ripristino da un backup iCloud su un dispositivo con centinaia di app, Springboard potrebbe bloccarsi ripetutamente.
Kit dello sprite
Problemi noti
+[AVPlayer playerWithPlayerItem:]
restituisce unAVPlayer
oggetto, ma l'elemento corrente restituirà nil se il lettore è stato creato su un altro thread.Sincronizza
Problemi noti
L'opzione di sincronizzazione Wi-Fi in iTunes è selezionata, ma i dispositivi Wi-Fi non vengono visualizzati in iTunes.
Soluzione alternativa: su OS X, installa l'SDK di iOS 7.0 dopo aver installato iTunes. La sincronizzazione Wi-Fi non è supportata su Windows.
UIKit
Note
+[UIPasteboard pasteboardWithName:create:]
ed+[UIPasteboard pasteboardWithUniqueName]
ora univoco il nome dato per consentire solo alle app nello stesso gruppo di applicazioni di accedere al tavolo di montaggio. Se lo sviluppatore tenta di creare un pasteboard con un nome già esistente e non fa parte della stessa suite di app, otterrà il proprio pasteboard unico e privato. Tieni presente che ciò non influisce sul sistema fornito di pasteboard, generale e trova.- A partire dal Seed 2, le app utilizzano per impostazione predefinita il nuovo sistema di gestione della barra di stato basato su controller di visualizzazione. Per disattivarlo, aggiungi il valore NO per il
UIViewControllerBasedStatusBarAppearance
chiave per il tuo Info.plist.- Quando si utilizza il layout automatico per posizionare a
UIButton
, se imposti la resistenza alla compressione del contenuto o la priorità di abbracciamento del contenuto al minimo, il pulsante avrà un layout ambiguo.Soluzione alternativa: non utilizzare una resistenza alla compressione del contenuto o una priorità di abbracciamento del contenuto inferiore a 2 perUIButton
.UIScenEdgePanGestureRecognizer
consente di eseguire azioni in risposta ai passaggi oltre il bordo dello schermo utilizzando la stessa euristica che il sistema utilizza per i propri gesti. Usalo se disponi di una tua navigazione semantica che non utilizzaUINavigationController
ma dovrebbe includere questo gesto (ad esempio, Safari).Questo riconoscimento dei gesti ha una proprietà che descrive i bordi su cui è attivo.UIRectEdge
è un nuovo tipo di enumerazione che questa proprietà e-[UIViewController edgesForExtendedLayout]
può condividere.UIRectEdge
sostituisceUIExtendedEdge
, che verrà rimosso. I membri di entrambi hanno gli stessi valori. Utilizza Xcode per sostituire tutte le istanze di "UIExtendedEdge" nel tuo progetto con "UIRectEdge".- I livelli sfocati non sono disponibili su iPhone 4.
- Parallasse non è disponibile su iPhone 4.
- Il testo tipografico non è disponibile su iPhone 4.
Risolto nel seme 3
- Quando un dispositivo senza passcode viene connesso a un computer non attendibile, iTunes dirà all'utente di approvare sul telefono, ma il telefono non chiederà mai all'utente di approvare. Il telefono è comunque affidabile, quindi non c'è alcun impatto funzionale, ma manca l'interfaccia utente.
UISwitch
onTintColors
è sempre verde indipendentemente da cosa è impostato.Problemi noti
- Supporto IB per
-topLayoutGuide
ed-bottomLayoutGuide
non è funzionale in questo seme.UIPickerView
con visualizzazioni personalizzate non mostra le visualizzazioni nell'indicatore di selezione.UIRefreshControl
e la vista tabella associata vengono nascosti sotto la barra di navigazione quandosetTranslucent:
è no.UIButtonTypeInfoLight
,UIButtonTypeInfoDark
eUIButtonTypeDetailDisclosure
i pulsanti sembrano tutti uguali.- I
UIImagePickerController
non mostra un'anteprima dal vivo quando si utilizzano overlay personalizzati.- Il titolo del
UIRefreshControl
appare sotto la barra di navigazione.VoiceOver
Risolto nel seme 3
I promemoria non funzionano con VoiceOver.
Tempo
Note
Le condizioni meteorologiche non sono animate su iPhone 4.
WebKit
Note
-
In precedenza, quando i parametri del viewport venivano modificati, i vecchi parametri non venivano mai eliminati. Ciò ha fatto sì che i parametri del viewport fossero additivi.
Ad esempio, se hai iniziato con larghezza=larghezza-dispositivo e poi l'hai modificato in scala-iniziale=1.0, ti ritroverai con un viewport calcolato di larghezza=larghezza-dispositivo, scala-iniziale=1.0.
In iOS 7 questo problema è stato risolto. Ora ti ritroverai con un viewport calcolato di scala iniziale=1.0.
-
In precedenza, durante l'utilizzo , la scala potrebbe non essere corretta dopo la rotazione.
Ora, se un utente non ha ridimensionato esplicitamente la pagina, la pagina viene ripristinata alla sua scala iniziale. Inoltre, la scala corrente è ora correttamente limitata all'interno del file
min-scale
,max-scale
limiti. -
Alcune immagini per i dispositivi con display Retina vengono visualizzate con dimensioni doppie rispetto a quelle che dovrebbero invece essere ridimensionate del 50%. Questo problema può verificarsi anche con qualsiasi immagine da ridimensionare che sia più grande del relativo contenitore e che utilizzi il file
background-size
proprietà o il-webkit-background-size
proprietà. Questo problema riguarda sia le app native che visualizzano contenuti Web sia le pagine Web visualizzate in Safari per iPhone.I
background
La proprietà abbreviata CSS ora reimposta il valore dibackground-size
proprietà aauto
quando la dimensione dello sfondo non è specificata. Questo nuovo comportamento è conforme alle specifiche CSS e il vecchio comportamento è disponibile solo per le app collegate a un SDK precedenti a iOS 7.0 quando vengono eseguite su iOS 7 o versioni successive.Soluzione alternativa: specificare il
background-size
proprietà o il-webkit-background-size
proprietà dopo ilbackground
proprietà abbreviata nel foglio di stile CSS per il contenuto Web visualizzato.