App molto più fluide su iOS 10: i tecnici Apple spiegano come hanno fatto

App molto più fluide su iOS 10: i tecnici Apple spiegano come hanno fatto

Durante la WWDC alcuni tecnici Apple hanno spiegato il nuovo metodo per la gestione dello scrolling nelle applicazioni di terze parti utilizzato su iOS 10

di Nino Grasso pubblicata il , alle 13:36 nel canale Apple
AppleiOSiPhoneiPad
 

Fino a qualche anno fa gli iPhone erano sinonimo di fluidità. Android peccava molto in termini di efficienza e ottimizzazione, Windows Phone non faceva molta paura in termini di diffusione sul mercato, e iOS con il suo scheumorfismo era di gran lunga il sistema operativo più fluido e facile da gestire. Poi è arrivato iOS 7 con le sue trasparenze e qualcosa è cambiato, soprattutto sugli iPad più vecchi e le versioni "Plus" dello smartphone della Mela con risoluzioni video più elevate.

iOS 10

Quello della fluidità è diventato un problema anche per Apple, ma pare che la società voglia correggere il tiro su iOS 10. La novità è di quelle che non sono state annunciate e che non si vedono, ma che possono consegnare senza dubbio un'esperienza d'utilizzo migliore sia nelle app native, che in quelle di terze parti. La maggiore fluidità sarà dovuta principalmente ad una modifica nella gestione del caricamento delle informazioni presenti nelle pagine: invece di essere caricate poco prima di comparire sulla schermata, quindi durante lo scroll, le nuove API presenti su iOS 10 le recupereranno prima in modo da non pesare sulle capacità hardware del dispositivo quando servono per altro.

Se si effettua uno scroll su alcuni tipi di app che hanno molti elementi su un'unica pagina, è possibile che l'animazione di scorrimento non sia fluida come ci si aspetta da un dispositivo di questa generazione. Il fenomeno dei "frame drop" è la consuetudine sui dispositivi più vecchi e rende l'esperienza d'utilizzo meno appagante. E Apple ne è al corrente. Durante una sessione della WWDC i tecnici della società hanno ammesso che questo avviene perché l'app solitamente carica i nuovi contenuti un istante prima che compaiano sullo schermo.

Con iOS 10 il caricamento avverrà prima dell'inizio dello scroll, in modo tale che le performance di scorrimento siano migliorate e i tempi di caricamento dell'applicazione rimangano inalterati. L'ideale su mobile è avere 60fps costanti durante lo scrolling, ma con le precedenti versioni del sistema operativo il traguardo veniva spesso mancato. Caricando le informazioni prima (l'operazione si chiama prefetching) Apple assicura che le applicazioni siano in grado di mantenersi su valori ben al di sopra dei 60fps in qualsiasi circostanza.

Il processo di prefetching funziona anche in maniera inversa: dopo aver effettuato lo scroll, se vogliamo tornare sopra perché abbiamo perso un'informazione interessante possiamo farlo senza compromettere la granitica fluidità tipica dei 60 fps. Apple ha inoltre modificato il modo in cui le applicazioni accedono ai dati: le nuove API consentono il caricamento asincrono delle informazioni, come avveniva anche prima del resto, ma le nuove call sono più veloci. Le informazioni vengono caricate in background con una priorità inferiore rispetto alle operazioni principali e si adattano in maniera adattiva alle richieste hardware necessarie per effettuare lo scrolling.

Va inoltre considerato che queste novità sono del tutto automatiche: gli sviluppatori non dovranno scrivere una singola riga di codice per abilitare la nuova gestione dello scrolling, ma solo compilare le app per iOS 10 e tutte le novità verranno applicate sul back-end delle API già esistenti. Se lo sviluppatore non vuole sfruttare le novità può comunque farlo in maniera molto semplice. Le premesse sono indubbiamente molto interessanti e vedremo se Apple riuscirà davvero a dare nuova linfa ai dispositivi meno recenti con ulteriori ottimizzazioni lato software.

Resta aggiornato sulle ultime offerte

Ricevi comodamente via email le segnalazioni della redazione di Hardware Upgrade sui prodotti tecnologici in offerta più interessanti per te

Quando invii il modulo, controlla la tua inbox per confermare l'iscrizione

26 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
polkaris17 Giugno 2016, 13:53 #1
In pratica parti da un sw che funziona molto bene, col tempo lo peggiori (ho l'impressione che sia inevitabile, man mano che il sw cresce crescono anche i bugs) fino a farlo diventare una schifezza. Poi lo aggiusti in modo da riportarlo a un funzionamento accettabile. Questa è innovazione! E pensare che tra i primi iPhone e Android c'era un abisso in termini di user experience, fluidità, qualità del sw.
acerbo17 Giugno 2016, 14:03 #2
Originariamente inviato da: polkaris
In pratica parti da un sw che funziona molto bene, col tempo lo peggiori (ho l'impressione che sia inevitabile, man mano che il sw cresce crescono anche i bugs) fino a farlo diventare una schifezza. Poi lo aggiusti in modo da riportarlo a un funzionamento accettabile. Questa è innovazione! E pensare che tra i primi iPhone e Android c'era un abisso in termini di user experience, fluidità, qualità del sw.


é android che é migliorato tanto, non ios che é peggiorato, che poi le prime versioni di ios fossero piu' fluide é normale visto che non faceva una sega l'os
maxsy17 Giugno 2016, 14:29 #3
ieri ho provato un 4s..imbarazzante.
brancamenta17 Giugno 2016, 14:34 #4
E le richieste hardware aumentano però. Con conseguente consumo di batteria.
fraquar17 Giugno 2016, 14:37 #5
Originariamente inviato da: polkaris
In pratica parti da un sw che funziona molto bene, col tempo lo peggiori (ho l'impressione che sia inevitabile, man mano che il sw cresce crescono anche i bugs) fino a farlo diventare una schifezza. Poi lo aggiusti in modo da riportarlo a un funzionamento accettabile. Questa è innovazione! E pensare che tra i primi iPhone e Android c'era un abisso in termini di user experience, fluidità, qualità del sw.


Dillo a chi ha un iphone 5 o peggiore se ADESSO funziona bene.
Dispaccio da Cupertino: COMPRARE NUOVO IPHONE
Marko#8817 Giugno 2016, 14:49 #6
Originariamente inviato da: fraquar
Dillo a chi ha un iphone 5 o peggiore se ADESSO funziona bene.
Dispaccio da Cupertino: COMPRARE NUOVO IPHONE


Perchè invece un Android di 3 anni fa...
RealB33rM4n17 Giugno 2016, 14:49 #7
Originariamente inviato da: fraquar
Dillo a chi ha un iphone 5 o peggiore se ADESSO funziona bene.
Dispaccio da Cupertino: COMPRARE NUOVO IPHONE


Esatto non dirlo a me. Con ipad 4 passaggio a ios 8,disastro. Ios9 forse anche peggio. Fai lo scroll di una pagina e ci vogliono secoli prima che venga nuovamente rendirizzata. Tutto questo ovviamente lo hanno sempre saputo e negato ma ora devono publicizzare ios10 e che succede? Magia fixano sta merda.
Hofkeller17 Giugno 2016, 15:34 #8
Originariamente inviato da: fraquar
Dillo a chi ha un iphone 5 o peggiore se ADESSO funziona bene.
Dispaccio da Cupertino: COMPRARE NUOVO IPHONE


Presente!
Ho un iphone 4s e un 5 e funzionano benissimo con l'ultima release dell' O.S.
Certo che se prendiamo modelli di 4 anni fa, li mettiamo uno di fianco all'altro e ci mettiamo a cronometrare quanti centesimi di secondo impiegano ad aprire le stesse app, il discorso può concludersi qua.
Per me funzionano in maniera accettabile e, cosa più importante, sono aggiornati al 2016. Non sono rimasti fermi alla release installata in fabbrica e poi chi si è visto si è visto..
Thehacker6617 Giugno 2016, 15:44 #9
Quindi, invece di sfruttare il lazyload per risparmiare magari anche sui dati scaricati, caricano tutto prima? E se la lista è composta da migliaia di elementi voglio vedere come saranno felici quelli che penseranno che l'iphone che prima era lento nello scroll ora sembrerà bloccato..
xarz317 Giugno 2016, 16:44 #10
L'iPad 3 è vergognoso da iOS7 in poi. Vergognoso, e sfido chiunque a dirmi che non è vero. Manco il mio primo android laggava così tanto.

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^