Virtuelle Android-Geräte von Sepia

Cuttlefish ist ein konfigurierbares virtuelles Android-Gerät, das sowohl remote (über Drittanbieter-Cloud-Angebote wie Google Cloud Engine) als auch lokal (auf Linux x86- und ARM64-Maschinen) ausgeführt werden kann.

Sepien-Ziele

  • Befreien Sie den Plattform- und App-Entwickler von physischer Hardware, um Codeänderungen zu entwickeln und zu validieren.
  • Das Framework-basierte Verhalten eines echten Geräts mit Schwerpunkt auf High Fidelity replizieren, indem Sie eng auf das Kern-Framework abgestimmt sind.
  • Alle API-Levels nach 28 werden unterstützt.
  • Konsistente Funktionalität auf API-Ebenen bereitstellen, die dem Verhalten auf physischer Hardware entspricht
  • Waage aktivieren:

    • Sie ermöglichen die parallele Ausführung mehrerer Geräte.
    • Ermöglichen Sie die gleichzeitige Testausführung mit hoher Genauigkeit bei niedrigeren Einstiegskosten.
  • Sie bieten ein konfigurierbares Gerät, mit dem Formfaktor, RAM, CPUs usw. angepasst werden können.

Tintenfisch mit anderen Geräten vergleichen

Sepien und Android-Emulator

Es gibt viele Gemeinsamkeiten mit dem Android-Emulator, aber Cuttlefish garantiert eine volle Genauigkeit mit dem Android-Framework. Dies gilt sowohl für reines AOSP als auch für eine benutzerdefinierte Implementierung in Ihrer eigenen Struktur. In einer realen Anwendung bedeutet dies, dass Sie davon ausgehen sollten, dass Cuttlefish auf Ihre Interaktionen auf Betriebssystemebene reagiert, genau wie ein physisches Telefonziel, das mit derselben angepassten oder reinen Android-Betriebssystemquelle erstellt wurde.

Der Android-Emulator wurde mit dem Ziel entwickelt, die App-Entwicklung zu vereinfachen. Er enthält viele funktionale Hooks, die für die Anwendungsfälle des Android-App-Entwicklers geeignet sind. Dies kann zu Herausforderungen führen, wenn Sie einen Emulator mit Ihrem benutzerdefinierten Android-Framework erstellen möchten. Wenn Sie ein virtuelles Gerät benötigen, das Ihren benutzerdefinierten Plattform-/Framework-Code oder Ihre Tip-of-Tree-Android-Version repräsentiert, ist Cuttlefish eine ideale virtuelle Option. Es ist das kanonische Gerät zur Darstellung des aktuellen Stands der AOSP-Entwicklung.

Sepien und physisches Gerät

Die Hauptunterschiede zwischen einem virtuellen Cuttlefish-Gerät und einem physischen Gerät bestehen in der Hardwareabstraktionsebene (HAL) sowie in der Software, die mit benutzerdefinierter Hardware interagiert. Abgesehen von hardwarespezifischen Implementierungen sollte ein Verhalten von Cuttlefish und einem physischen Gerät ähnlich aussehen.

Wie können Tintenfische helfen?

Sie können mit Sepien wie mit jedem anderen Android-Gerät interagieren, das Sie für die Fehlerbehebung verwenden können. Es registriert sich über ADB als normales Gerät und Sie können es wie ein physisches Gerät über Remote Desktop nutzen. Die Anwendungsfälle sind breit gefasst und können Anwendungstests, Tests benutzerdefinierter System-Builds und mehr umfassen.

Da Cuttlefish eine vollständige Genauigkeit des Frameworks anstrebt, kann er für Funktionstests Ihres Frameworks oder Ihrer Anwendungen verwendet werden, wenn es keine physischen Hardwareabhängigkeiten gibt, die nicht emuliert werden können.

Wie werden Tintenfisch heute häufig für Tests verwendet?

Zu den gängigen Testanwendungen von Sepien gehören:

  • Logo: CTS
  • Framework-Compliance
  • Continuous-Integration-Tests
  • Benutzerdefinierte Testsuites

Kann ich Tintenfische in der Cloud hosten?

Ja, Cuttlefish unterstützt Google Cloud nativ. Weitere Cloud-Plattformen sind in Planung.

Jetzt starten

Eine Anleitung zum Erstellen einer Sepia-Instanz auf Basis von AOSP finden Sie unter Sepia-Tintenfisch verwenden.