Dispositivi Android virtuali Seppia

Cuttlefish è un dispositivo Android virtuale configurabile che può essere eseguito sia da remoto (utilizzando offerte cloud di terze parti come Google Cloud Engine) sia in locale (su macchine Linux x86 e ARM64).

Obiettivi di seppia

  • Consenti agli sviluppatori di piattaforme e app di non dipendere dall'hardware fisico per sviluppare e convalidare le modifiche al codice.
  • Replica il comportamento basato sul framework di un dispositivo reale con un'attenzione particolare all'alta fedeltà mantenendo un'attenta allineamento con il framework di base.
  • Supporta tutti i livelli API successivi al 28.
  • Fornisci un livello di funzionalità coerente nei vari livelli dell'API, in linea con il comportamento sull'hardware fisico.
  • Abilita bilancia:

    • Offrono la possibilità di eseguire più dispositivi in parallelo.
    • Consente l'esecuzione di test simultanei con elevata fedeltà a un costo di entry inferiore.
  • Fornire un dispositivo configurabile con la possibilità di regolare fattore di forma, RAM CPU ecc.

Confronta Seppia con altri dispositivi

Seppia ed emulatore Android

Esistono molte somiglianze con l'emulatore Android, ma Cuttlefish garantisce la massima fedeltà con il framework Android (che si tratti di AOSP puro o di un'implementazione personalizzata nel tuo albero). Nel mondo reale applicazione, ciò significa che ci si dovrebbe aspettare che Seppia risponda alla tua interazioni a livello di sistema operativo proprio come un target di telefono fisico creato con la stessa sorgente del sistema operativo Android personalizzata o pura.

L'emulatore Android è stato creato per semplificare lo sviluppo di app e contiene molti hook funzionali per soddisfare i casi d'uso degli sviluppatori di app per Android. Questo potrebbe presentare delle difficoltà, se vuoi per creare un emulatore con il tuo framework Android personalizzato. Se hai bisogno di un dispositivo virtuale rappresentativo del codice della tua piattaforma/del tuo framework personalizzato o di Android di punta, Cuttlefish è un'opzione virtuale ideale. È il dispositivo canonico per rappresentare lo stato attuale dello sviluppo AOSP.

Seppia e dispositivo fisico

Le differenze principali tra un dispositivo virtuale Seppia e il tuo dispositivo fisico dispositivo sono a livello di HAL (Hardware Astrazione Layer), nonché qualsiasi che interagisce con qualsiasi hardware personalizzato. Tranne che per specifiche hardware implementazioni, dovresti aspettarti un comportamento funzionalmente equivalente tra Seppia e un dispositivo fisico.

In che modo la seppia può essere d'aiuto?

Puoi interagire con Cuttlefish come faresti con qualsiasi altro dispositivo Android che potresti utilizzare per il debug. Si registra come un normale dispositivo tramite adb e puoi interagire con il dispositivo come un dispositivo fisico tramite telecomando desktop. I casi d'uso sono ampi e possono includere test delle app, sistemi personalizzati creare test e altro ancora.

Poiché la Seppia si impegna per ottenere la piena fedeltà del quadro, può essere usata funzionale del framework o di app in cui non sono e dipendenze hardware fisiche impossibili da emulare.

In che modo la Seppia viene comunemente utilizzata per i test oggi?

Alcune applicazioni comuni di Cuttlefish per i test includono:

  • CTS
  • Conformità al framework
  • Test di integrazione continui
  • Suite di test personalizzate

Posso ospitare Cuttlefish nel cloud?

Sì, Cuttlefish supporta in modo nativo Google Cloud e altri servizi cloud tutte le piattaforme.

Inizia

Per indicazioni su come creare un'istanza Cuttlefish basata su AOSP, consulta Utilizzare Cuttlefish.