Una versione beta di iOS 10.3 trasmessa agli sviluppatori la settimana scorsa include un avviso di compatibilità delle app aggiornato che avverte gli utenti che le app a 32 bit potrebbero non funzionare più con le future versioni di iOS, suggerendo che iOS 11 probabilmente smetterà di supportare app non a 64 bit. Nel giugno 2015, Apple ha avvertito gli sviluppatori che tutte le app e gli aggiornamenti delle app inviati all'App Store devono includere il supporto a 64 bit insieme al codice a 32 bit.
Quando un utente avvia un'app a 32 bit, iOS 9 visualizza un avviso in cui si dice che l'utilizzo del software a 32 bit su un dispositivo a 64 bit può influire sulle prestazioni del sistema. La formulazione del prompt è cambiata in iOS 10.3 beta 1 e ora specifica che le app a 32 bit potrebbero smettere di funzionare completamente nelle future edizioni iOS.
La nuova richiesta è la seguente:
Questa app non funzionerà con le versioni future di iOS. Lo sviluppatore di questa app deve aggiornarla per migliorarne la compatibilità.
Per fare un confronto, ecco il prompt precedente:
Questa app non è stata aggiornata a 64 bit. Il suo utilizzo può influire sulle prestazioni complessive del sistema.
I dispositivi iOS con A7 progettato da Apple o processore più recente sono a 64 bit, incluso l'iPod touch di sesta generazione e tutti gli iPhone e iPad dai rispettivi modelli iPhone 5s e iPad Air in poi. Si tratta di una modifica attesa da tempo perché l'esecuzione di app legacy a 32 bit insieme alle moderne app a 64 bit rallenta il sistema.
Su un dispositivo a 64 bit, il sistema utilizza versioni a 64 bit del kernel, delle librerie e dei driver. Quando un utente avvia un'app a 32 bit, vengono caricate anche versioni separate a 32 bit dei framework di sistema che mettono a dura prova la memoria e consumano risorse.
Se iOS 11 smette di supportare le app a 32 bit come suggerito, gli sviluppatori saranno motivati a pubblicare aggiornamenti di compatibilità per evitare di essere rimossi dall'App Store. Applicando solo le app a 64 bit, iOS 11 utilizzerà teoricamente meno memoria in generale perché potrebbe non aver mai bisogno di caricare framework a 32 bit in primo luogo.
Le app si avviano più velocemente e il multitasking dovrebbe essere più fluido.
"Poiché tutte le app integrate supportano già il runtime a 64 bit, è a vantaggio di tutti che tutte le app in esecuzione su dispositivi a 64 bit vengano compilate per il runtime a 64 bit, in particolare le app che supportano l'elaborazione in background", ha detto Apple sviluppatori nel 2015.
A partire da febbraio 2015, Apple ha richiesto che tutte le app inviate supportassero l'architettura a 64 bit.
A causa del fatto che molte app su App Store non sono state aggiornate per la compatibilità da anni (ti stiamo guardando, app a 32 bit!), Apple negli ultimi mesi ha iniziato a rimuovere tranquillamente decine di migliaia obsolete o app incompatibili.
Apple fornisce una guida alla transizione per gli sviluppatori che descrive in dettaglio il porting delle app in architettura a 64 bit.