Anche iOS deve fare i conti con la frammentazione, soprattutto quando si tratta di app programmate per funzionare su più dispositivi diversi: iOS 9 sarà supportato dai dispositivi Apple dal iPhone 4s in poi, e se consideriamo anche iPad sono un bel po’ di device, come fare quindi perchè le app siano sia compatibili con tutto sia parche di memoria? Apple ha pensato tre diversi sistemi, che possono essere usati dallo sviluppatore ma anche direttamente da Apple stessa.
App Slicing
Letteralmente, un affettato di app, e proprio questo sistema è quello con il quale Apple fa risparmiare la maggio parte della memoria: lo sviluppatore in fase di programmazione dovrà indicare quale parte di una app universale è necessaria per ciascun device, per cui la parte del codice a 64 bit andrà solo per gli ultimi modelli, mentre la parte per gli schermi da 10 pollici sarà solo per iPad. iTunes saprà scaricare la parte giusta di una app ogni qualvolta avvieremo un download, facendoci risparmiare spazio sul dispositivo e anche megabyte di download. Questo sistema darà il meglio di sé con le app universali, mentre con le app solo per smartphone non sarà troppo efficace.
On-Demand Resources (ODR)
Un esempio per tutti lo ha dato ArsTechnica: immaginate di scaricare un gioco composto da più livelli, livelli diversi tra di loro e con grafica abbastanza pesante, iTunes scaricherà solo il gioco base con i primi livelli, per poi scaricare i livelli seguenti solo quando necessario. Un notevole risparmio di spazio e di banda, ma difficilmente potrebbe essere utile per le app che non sono giochi: inoltre lo sviluppatore deve fare la sua parte, quindi la funzione sarà probabilmente utilizzata dai nuovi giochi.
Bitcode
Bitcode è un nuovo sistema integrato nei server Apple: lo sviluppatore caricherà una app compilata in maniera particolare, in modo che Apple possa provvedere autonomamente ad utilizzare App Slicing senza che lo sviluppatore stesso debba integrare nulla nel codice della app. Sarà quindi iTunes a scaricare i file necessari e a processare tutto: all’utente finale l’intera procedura sarà completamente trasparente.