Panoramica AOSP

Android è un sistema operativo per un'ampia gamma di dispositivi con diverse e i fattori di forma. La documentazione e il codice sorgente per Android sono disponibili per chiunque nel ruolo di Android Open Source Project (AOSP). Puoi utilizzare la modalità AOSP per creare varianti personalizzate del sistema operativo Android per i tuoi dispositivi.

AOSP è progettato in modo che non esista un punto di errore centrale in cui un attore del settore limita o controlla le innovazioni di un altro. Pertanto, AOSP è un prodotto per sviluppatori completo e di qualità di produzione con codice sorgente aperto per personalizzazione e porting.

Questa sezione della documentazione aiuta i nuovi sviluppatori AOSP a iniziare a utilizzare ed eseguire attività essenziali di sviluppo.

Termini obbligatori

Di seguito è riportato un elenco dei termini e delle definizioni utilizzati nel corso Documentazione avviata. Dovresti studiare ogni definizione prima di continuare. ulteriormente.

Sviluppatore di app per Android

Gli sviluppatori di app per Android scrivono app per Android o applicazioni che vengono eseguite su Android. Esistono due tipi di sviluppatori di app: proprietari (proprietari) e sviluppatori di app di terze parti.

Sviluppatore di app proprietarie per Android
Uno sviluppatore di app per Android che ha accesso alle API del sistema AOSP e scrive con privilegi e app provenienti dai produttori di dispositivi.
Sviluppatore di app di terze parti per Android
Uno sviluppatore di app per Android che utilizza esclusivamente l'SDK pubblico di Android per creare App per Android.

Se vuoi sviluppare app di terze parti per Android, consulta le developers.android.com Le informazioni su questo sito web è destinato esclusivamente a coloro che lavorano direttamente con AOSP.

bridge di debug Android (adb)
Uno strumento a riga di comando (adb) che consente alla tua workstation di comunicare con un dispositivo virtuale, emulato da software o fisico.
Dispositivo compatibile con Android
Un dispositivo in grado di eseguire qualsiasi app di terze parti scritta da sviluppatori di terze parti usando l'SDK per Android e NDK. I dispositivi compatibili con Android devono rispettare i requisiti del Compatibility Definition Document (CDD) e superare la Compatibility Test Suite (CTS). Compatibile con Android dispositivi sono idonei a far parte dell'ecosistema Android, che include la potenziale licenza del Play Store di Android, la potenziale licenza Suite di Google Mobile Services (GMS) applicazioni e API e all'uso del marchio Android. Chiunque può utilizzare il codice sorgente di Android, ma per essere considerato parte dell'ecosistema Android, un dispositivo deve essere compatibile con Android. Per ulteriori informazioni sulla compatibilità e CTS, vedi le Panoramica del Programma di compatibilità Android
Compatibility Definition Document (CDD)
Un documento che elenca i requisiti software e hardware per una Dispositivo compatibile con Android.
Collaboratore

Una persona che contribuisce al codice sorgente AOSP. I collaboratori possono essere dipendenti di Google, dipendenti di altre aziende e privati senza affiliazione aziendale. Ogni collaboratore AOSP utilizza gli stessi strumenti, segue la stessa procedura di revisione del codice ed è soggetta allo stesso stile di programmazione. Tu non devono necessariamente contribuire per usare AOSP; puoi scaricare AOSP, modificarlo in base alle proprie esigenze e implementarlo su un dispositivo senza contribuire che altri utenti possono usare.

Esistono dei limiti al tipo di contributi tramite codice accettati da Google. Ad esempio: potresti voler contribuire con un'API per applicazioni alternative, come basato su C++. Google rifiuterà il contributo perché Android incoraggia l'esecuzione delle applicazioni nel runtime ART. Analogamente, Google non accettare contributi, come librerie GPL o LGPL, incompatibili con obiettivi di licenza.

Se vuoi dare il tuo contributo per il codice sorgente, contattare Google prima di iniziare a lavorare.

Compatibility Test Suite (CTS)

Una suite di test di livello commerciale, senza costi, disponibile per il download come binario o sorgente in AOSP. Il CTS è un insieme di test delle unità progettati per essere integrati nel tuo flusso di lavoro quotidiano. L'intento del CTS è rilevare le incompatibilità e assicurare la compatibilità del software durante tutto il processo di sviluppo.

Seppia

Un dispositivo virtuale basato su Android configurabile che può essere eseguito da remoto utilizzando offerte cloud di terze parti, come Google Cloud Engine, e in locale su macchine Linux x86.

Sviluppatore

Nel contesto di AOSP, uno sviluppatore è chiunque lavori con AOSP in qualsiasi modo. Il termine "sviluppatore" viene utilizzato per fare riferimento in modo generico alle varie persone che potrebbe leggere questa documentazione, ad esempio i produttori di apparecchiature originali OEM, produttori di telefoni, operatori e creatori di SoC (System-on-a-Chip).

Google Mobile Services (GMS)

Una raccolta di app e API Google che possono essere preinstallate sui dispositivi.

Target

Una permutazione di un dispositivo, ad esempio un modello o un fattore di forma specifico. Per ad esempio aosp_cf_x86_64_phone-userdebug rappresenta uno smartphone x86 da 65 MB con informazioni di debug per l'esecuzione sull'emulatore seppia.

Filosofia di governance

Un gruppo di società noto come Open Handset Alliance (OHA), guidato da Google, Android. Oggi, molte aziende, sia membri originali dell'OHA che altri hanno investito molto in Android. Queste aziende hanno assegnato notevoli risorse tecniche per migliorare Android e portare i dispositivi Android sul mercato.

Le aziende che hanno investito in Android lo hanno fatto perché ritengono necessaria una piattaforma aperta. Android è intenzionalmente ed esplicitamente un'istanza impegno alla fonte (in contrapposizione al software libero); un gruppo di organizzazioni con ha esigenze condivise in pool ha risorse per collaborare a una singola implementazione prodotto condiviso. Innanzitutto, la filosofia di Android è pragmatica. L'obiettivo è un prodotto condiviso che ogni collaboratore può personalizzare e adattare.

Naturalmente, una personalizzazione incontrollata può portare a implementazioni incompatibili. Per evitare incompatibilità, Android Open Source Project (AOSP) mantiene il Programma di compatibilità con Android, che spiega cosa significa essere compatibile con Android e quali requisiti generatori di dispositivi per ottenere questo stato. Chiunque può utilizzare il codice sorgente di Android per qualsiasi scopo e Google accoglie con favore tutti gli utilizzi legittimi. Tuttavia, per partecipare all'ecosistema condiviso di applicazioni che i membri dell'OHA stanno creando attorno ad Android, i produttori di dispositivi devono partecipare al Programma di compatibilità Android.

AOSP è guidata da Google, che gestisce e sviluppa ulteriormente Android. Anche se Android è costituito da più sottoprogetti, AOSP è strettamente di gestione del progetto. Google vede e gestisce Android come un singolo prodotto software olistico, non come un distribuzione, specifiche o raccolta di parti sostituibili. L'intenzione di Google è che gli sviluppatori di dispositivi portano Android a un dispositivo; non implementano specifica o organizzare una distribuzione.

Passaggi successivi

  • Se è la prima volta che utilizzi AOSP e vuoi seguire un tutorial su questo prodotto di sviluppo, procedi con il tutorial AOSP.

  • Se ritieni che il tuo dispositivo debba essere compatibile con Android, consulta le Programma di compatibilità con Android.

  • Se vuoi conoscere il background di AOSP, incluse le funzionalità partecipazione alla piattaforma, consulta Domande frequenti su AOSP.