Fino a un paio di generazioni di dispositivi fa, iOS di Apple aveva un netto vantaggio rispetto ad Android sia per quanto riguarda la qualità che la quantità delle applicazioni. Ma recentemente, le app Android hanno raggiunto e in molti modi hanno superato ciò che è disponibile o addirittura possibile su iOS. Gran parte di ciò è dovuto al fatto che Android ora detiene la stragrande maggioranza della quota di mercato degli smartphone, il che a sua volta suscita l’interesse degli sviluppatori di terze parti. Tuttavia, un buon affare è dovuto al fatto che Android offre agli sviluppatori di terze parti una libertà significativamente maggiore rispetto a quella consentita da iOS.
Nonostante l'aumento della qualità e della quantità delle applicazioni, non è raro che alcuni programmi relativamente significativi siano specifici della piattaforma. Ad esempio, se hai molti amici che utilizzano iOS, ti sei senza dubbio sentito un po' escluso senza la possibilità di comunicare tramite iMessage o FaceTime. È qui che entrano in gioco progetti come Cider.
Sviluppato dai membri del Dipartimento di Informatica della Columbia University, Cider è un'architettura di compatibilità del sistema operativo in grado di eseguire applicazioni iOS su Android. Invece di utilizzare una macchina virtuale rigorosa, ciò avviene con un approccio innovativo che include l’adattamento del codice in fase di compilazione, nonché funzioni diplomatiche. Il primo consente di adattare il codice sorgente dell'applicazione esistente senza modifiche per l'utilizzo sulla nuova architettura, mentre il secondo consente alle app esterne di collegarsi alle librerie dei dispositivi host, comprese quelle per software proprietario e interfacce hardware come l'accelerazione 3D hardware.
Di seguito è possibile trovare un video del proof-of-concept del sidro. Come si può vedere nel video, le prestazioni generali dell'interfaccia utente sono quelle che ci si aspetterebbe senza il rendering dell'interfaccia utente hardware 2D. Tuttavia, la demo include anche una clip di Passmark che esegue un benchmark 3D con un buon frame rate e con pieno accesso alle capacità di rendering dell'hardware host.
//www.youtube.com/embed/Uaple0Ec1Dg
Anche se ci sono molti ostacoli legali e tecnici che impediscono che un progetto come questo raggiunga i suoi frutti, è emozionante vedere che un progetto del genere è possibile anche su Android. Dopotutto, questa è solo un'ulteriore prova del potenziale di Android.
Si spera che il codice sorgente di questo progetto venga rilasciato prima o poi e che altri sviluppatori possano basarsi e migliorare questo sviluppo. Fino ad allora, questo è ancora abbastanza degno di nota. Puoi saperne di più visitando il pagina del progetto e leggere quelli della squadra documento di ricerca completo (avviso PDF).
Cosa faresti per poter eseguire app e giochi iOS sul tuo dispositivo Android? Fateci sapere nei commenti qui sotto.
[Mille grazie al moderatore senior di XDA efranto per la mancia!]