Una rivoluzione nelle ROM personalizzate: come Project Treble rende il porting di Android Oreo un lavoro di 1 giorno

click fraud protection

Un'esplorazione di come Project Treble rivoluziona le ROM personalizzate. Ci è voluto meno di 1 giorno per trasferire Android Oreo su Huawei Mate 9.

I forum XDA sono da anni il punto d'incontro centrale per lo sviluppo di ROM personalizzate. È grazie al duro lavoro degli sviluppatori sui nostri forum che molti vecchi smartphone Android vengono mantenuti in vita da ROM personalizzate, a volte anni dopo che i dispositivi sono stati abbandonati dal produttore del dispositivo. Sebbene oggigiorno la maggior parte dei produttori rilasci metodi di sblocco del bootloader, i frequenti ritardi nel rilascio dei sorgenti del kernel hanno soffocato lo sviluppo di ROM personalizzate su molti smartphone. Ciò potrebbe presto cambiare, tuttavia, grazie a qualcosa chiamato "Progetto Treble" che è stato annunciato in prossimità del rilascio di Android Oreo. Grazie a Project Treble, il tempo necessario per trasferire una ROM AOSP su un dispositivo non dovrebbe più richiedere settimane o mesi. dovrebbero volerci solo pochi giorni.

Quelli di voi che seguono da anni la scena delle ROM personalizzate, potrebbero già essere consapevoli di quanto sia significativa questa notizia. Sviluppatore riconosciuto XDA VecchioDroid chiamato questa rivelazione un "svolta"nello sviluppo ROM AOSP personalizzato. Grazie al supporto di Project Treble, ad esempio, Sono riuscito ad avviare UN ROM Android 8.0 Oreo quasi completamente funzionante su Huawei Mate 9—un dispositivo che fino ad ora non aveva visto nemmeno un singolo AOSP Torrone Android ROM.

Presto potremmo assistere a una rivoluzione nello sviluppo di ROM personalizzate grazie agli sforzi di sviluppo iniziali su questo fronte da parte del membro senior di XDA phhusson. Dopo 20 ore di lavoro di ricerca, sviluppo e debug con me, phhusson ha creato un'immagine di sistema che può essere avviato su più dispositivi di produttori diversi e con SoC completamente diversi. Ad esempio, la stessa immagine di sistema che ho avviato sul mio Huawei Mate 9 si avvia anche su Honor 8 Pro, Honor 9, Sony Xperia XZ1 Compact e Essential Phone. Quello è 3 diversi OEM (Huawei/Honor, Sony ed Essential) e 2 SoC diversi (HiSilicon Kirin 960 e Qualcomm Snapdragon 835) dove questa singola immagine di sistema può essere avviata correttamente.

È possibile che in futuro potremmo vedere un'unica immagine di sistema che può funzionare su dozzine di diversi smartphone Android, proprio come Microsoft Windows può essere eseguito su quasi tutti i computer hardware. Per incoraggiare un maggiore sviluppo su questo fronte, abbiamo aperto un nuovo forum dedicato a Project Treble dispositivi abilitati. Al momento il forum è rivolto agli sviluppatori, quindi astieniti dall'iniziare una nuova discussione a meno che tu non sia interessato a contribuire allo sviluppo. Se desideri aiutare a testare le immagini del sistema compatibile con Treble, sentiti libero di lasciare commenti sulle discussioni esistenti.

Partecipa al forum di sviluppo di Project Treble

Considerata l’importanza di questo sviluppo e la complessità dell’argomento, ho pensato di affrontare questo articolo in modo leggermente diverso rispetto agli altri. Presenterò un elenco puntato in cui spiegherò alcune domande comuni che le persone potrebbero avere e indicherò i fatti chiave riguardanti quest'ultimo sviluppo.


Cos'è Project Treble?

Crediti: Google

Project Treble è più comunemente descritto come un tentativo da parte di Google di modularizzare il framework del sistema operativo Android per separare il codice specifico del fornitore. Analizziamo ancora un po' le cose:

  • Il processo di aggiornamento completo per portare una nuova versione Android sui dispositivi è un argomento lungo e complesso, ma Sony ha fatto un ottimo lavoro questa infografica che ne delinea i passaggi fondamentali.
  • Il "venditore" si riferisce solitamente ai produttori di silicio come Qualcomm, ma può anche riferirsi al produttore di qualsiasi altro hardware proprietario presente in un dispositivo. Il "produttore del dispositivo" o "OEM" di solito deve attendere che il fornitore aggiorni il proprio codice in modo che l'hardware proprietario funzioni con il framework del sistema operativo Android in una versione più recente di Android.
  • Tuttavia, ciò che sta accadendo con Project Treble è che Google lo richiede il codice specifico del fornitore deve essere separato dal framework del sistema operativo Android e invece vivere nell'implementazione del proprio fornitore. Di solito questo significa che ora esiste una partizione /vendor separata sugli smartphone abilitati per Treble che contiene un gruppo di HAL (Hardware Abstraction Layers).
  • Inoltre, i fornitori devono implementare un codice che consenta al framework del sistema operativo Android di comunicare con gli HAL in modo standardizzato. Questo viene fatto tramite HIDL (Linguaggio di definizione dell'interfaccia HAL). Con questo in atto, un OEM può lavorare su un aggiornamento Android senza dover attendere che i fornitori aggiornino i propri HAL. In teoria, questo dovrebbe accelerare l'intero processo di aggiornamento di Android poiché i fornitori possono aggiornare il proprio codice in qualsiasi momento tramite il Play Store, Per esempio.
  • Per aiutare a capire cos'è un HAL e come si collega ad Android, consideriamo un'analogia. Immagina un'auto. Il volante e i freni sono l'HAL mentre il conducente è il framework del sistema operativo Android. Il conducente (Android) muove il volante e preme i freni (l'HAL) per controllare il movimento dell'auto (l'hardware).
  • Ora immagina se vivessimo in un mondo in cui ogni casa automobilistica decidesse di progettare i propri volanti o riorganizzare i propri freni in un modo completamente diverso. Se metti un conducente in un'auto nuova, potrebbe essere confuso su come gestire inizialmente il veicolo. Ma grazie agli standard, ogni conducente dovrebbe avere familiarità con come utilizzare il volante e i freni su quasi tutte le auto. Inoltre, la scuola guida insegna a tutti i conducenti il ​​modo corretto di utilizzare un veicolo. In questa analogia, gli standard dei veicoli sono Project Treble e la scuola guida è HIDL.

Android Oreo sull'Honor 8 Pro. Crediti: sviluppatore riconosciuto XDA OldDroid

Quali dispositivi riceveranno il supporto Project Treble?

  • Tutti i dispositivi che si avvia con Android 8.0 Oreo o sopra deve supportare pienamente Progetto Treble.
  • Tutti i dispositivi che aggiornamento ad Android 8.0 Oreo Sono non richiesto per supportare pienamente Project Treble.
  • I dispositivi che dispongono di aggiornamenti (versioni ufficiali o beta chiuse) ad Android 8.0 Oreo e supportano Treble includono quanto segue:
    • GooglePixel
    • Google Pixel XL
    • Huawei Compagno 9
    • Onore 8 Pro
    • Onore 9
    • Telefono essenziale
  • È improbabile che qualche dispositivo riceva ufficiosamente il supporto Project Treble tramite lo sviluppo di ROM personalizzate. Dopotutto gli HAL non sono open source.

Perché Project Treble è così importante per le ROM AOSP?

  • Per garantire che il codice del fornitore sia adeguatamente separato dal framework del sistema operativo Android nel modo in cui Project Treble richiede che Google abbia creato una Vendor Test Suite (VTS) che i dispositivi devono superare per essere certificati Google. La certificazione di Google è importante perché senza di essa un dispositivo non può essere spedito con app e servizi Google Play preinstallati.
  • Uno dei requisiti del VTS è un dispositivo abilitato per gli alti deve essere in grado di avviarsi UN build AOSP grezza e generica. A causa di questo requisito, gli OEM devono spedire dispositivi in ​​grado di avviare AOSP senza problemi.
  • Sebbene la ROM esatta che Google utilizza e condivide con gli OEM per VTS non sia pubblica, Phhusson, membro senior di XDA, è riuscito a capirla come ricreare questa ROM dalla fonte.
  • Pertanto, ora abbiamo una ROM AOSP funzionante garantito per essere avviabile sui dispositivi Project Treble. La maggior parte del lavoro è già stato svolto da OEM e fornitori, quindi non è più necessario che lo facciano gli sviluppatori indipendenti sui nostri forum scherzare con il codice sorgente del kernel o con gli attacchi hacker dell'HAL. In teoria, una ROM AOSP dovrebbe "funzionare", cosa che abbiamo dimostrato essere sostanzialmente vera sui dispositivi che abbiamo testato.
  • Al momento, la compatibilità lo è non al 100% con tutti i dispositivi è possibile avviare l'immagine del sistema. Ce ne sono anche alcuni condizioni di gara che deve essere capito. Tuttavia, Project Treble riduce significativamente la quantità di lavoro di sviluppo necessario per trasferire le ROM AOSP su dispositivi non Google. Con la collaborazione di più sviluppatori nel ns Forum di Progetto Treble, ci aspettiamo di vedere lo sviluppo dei dispositivi Treble fare molta strada.

Come posso provare subito Android Oreo sul mio dispositivo?

Se sei davvero avventuroso e vuoi provare subito una di queste build Project Treble sul tuo telefono, phhusson ha le immagini di sistema che devi scaricare su il suo thread nel nostro forum Project Treble. Ci sono alcune cose che devi tenere a mente, però:

  • Avrai bisogno di un bootloader sbloccato e devi avere familiarità con l'uso comandi di avvio rapido per lampeggiare le immagini.
  • Il tuo dispositivo deve utilizzi già Android Oreo. Queste immagini di sistema non "aggiornano" il tuo dispositivo. Se utilizzi uno dei dispositivi Huawei/Honor menzionati in questo articolo, puoi cercare una guida sui nostri forum o utilizzare il Servizio FunkyHuawei.club per aggiornare ufficiosamente il tuo telefono a una delle build beta Oreo chiuse.
  • Devi essere disposto a farlo perdere dati o eseguire il reflash delle immagini di fabbrica durante il test. Il modo migliore per garantire che questo si avvii è cancellare la partizione dei dati utente, che include la cancellazione di tutti i contenuti nella memoria interna. Ovviamente puoi eseguire dei backup e trasferirli una volta terminato.
  • Queste build AOSP lo sono attualmentenon pensato per l'uso come conducenti giornalieri. Sono estremamente semplici e non offrono molte funzionalità o app preinstallate. Dovrai eseguire tu stesso il flashing delle app Google. Dovrai inserire manualmente le impostazioni APN del tuo operatore per far funzionare i dati mobili (se funzionano). Le cose andranno male finché non verranno compiuti ulteriori sforzi di sviluppo.

Conclusione

Google non stava scherzando quando ha affermato che Project Treble è stato forse uno dei più grandi cambiamenti mai apportati al funzionamento di Android. Possiamo vedere da soli, proprio qui e ora, quanto impatto può avere. Treble potrebbe essere la spinta di cui la comunità di sviluppo ha bisogno per rivitalizzare la scena delle ROM personalizzate. Ci è voluto meno di 1 giorno per avviare una ROM AOSP quasi completamente funzionante su Huawei Mate 9. Sono entusiasta di vedere il lavoro che verrà svolto per altri dispositivi abilitati per Treble.