Als Entwickler von Apps für Mobilgeräte entwickeln Sie die Benutzeroberfläche Ihrer App oft Schritt für Schritt und nicht alles auf einmal. Android Studio unterstützt diesen Ansatz mit Jetpack Compose und bietet Tools, mit denen Sie das Endergebnis prüfen, Werte ändern und das Endergebnis überprüfen können, ohne einen vollständigen Build ausführen zu müssen.
Live Edit
Mit der Funktion „Live-Bearbeitung“ können Sie Composables in Emulatoren und auf physischen Geräten in Echtzeit aktualisieren. Diese Funktion minimiert Kontextwechsel zwischen dem Schreiben und Erstellen Ihrer App, sodass Sie sich länger und ohne Unterbrechung auf das Schreiben von Code konzentrieren können.
Live-Bearbeitung hat drei Modi:
- Manuell: Codeänderungen werden angewendet, wenn sie manuell mit Strg + ‘ (Cmd + ‘ unter macOS) übertragen werden.
- Manuell beim Speichern: Codeänderungen werden angewendet, wenn sie manuell mit Strg+S (Befehlstaste+S unter macOS) gespeichert werden.
- Automatisch: Änderungen werden auf Ihr Gerät oder Ihren Emulator angewendet, wenn Sie eine zusammensetzbare Funktion aktualisieren.
Live Edit konzentriert sich auf UI- und UX-bezogene Codeänderungen. Live-Bearbeitung unterstützt keine Änderungen wie Aktualisierungen der Methodensignatur, das Hinzufügen neuer Methoden oder Änderungen an der Klassenhierarchie. Weitere Informationen finden Sie in der Liste der Einschränkungen der Live-Bearbeitung.
Diese Funktion ist kein Ersatz für das Erstellen und Ausführen Ihrer App oder für Änderungen übernehmen. Stattdessen soll sie Ihren Workflow beim Erstellen, Bereitstellen und Iterieren zur Entwicklung von Compose-UI optimieren.
Der Workflow für Best Practices sieht so aus:
- Richten Sie Ihre Anwendung so ein, dass sie ausgeführt werden kann.
- Verwenden Sie Live-Bearbeitung so oft wie möglich, bis Sie eine Änderung vornehmen müssen, die von der Live-Bearbeitung nicht unterstützt wird, z. B. das Hinzufügen neuer Methoden während der Ausführung der App.
- Klicken Sie nach einer nicht unterstützten Änderung auf Ausführen
, um Ihre App neu zu starten und die Live-Bearbeitung fortzusetzen.
Erste Schritte mit „Live-Bearbeitung“
So erstellen Sie eine leere Compose-Aktivität, aktivieren die Live-Bearbeitung für Ihr Projekt und nehmen Änderungen mit der Live-Bearbeitung vor:
Neues Projekt einrichten
Bevor Sie beginnen, müssen Sie Android Studio Giraffe oder höher installiert haben. Das API-Level Ihres physischen Geräts oder Emulators muss mindestens 30 sein.
Öffnen Sie Android Studio und wählen Sie im Dialogfeld Welcome to Android Studio die Option New Project aus. Wenn Sie bereits ein Projekt geöffnet haben, können Sie ein neues erstellen, indem Sie Datei > Neu > Neues Projekt auswählen.
Wählen Sie die Vorlage Empty Compose Activity (Leere Compose-Aktivität) für Phone and Tablet (Smartphone und Tablet) aus und klicken Sie dann auf Next (Weiter).
Abbildung 1. Vorlagen, aus denen Sie auswählen können. Wählen Sie für die Live-Bearbeitung Leere Compose-Aktivität aus. Geben Sie im Dialogfeld Neues Projekt die erforderlichen Informationen ein: Name, Paketname, Speicherort, Mindest-SDK und Sprache für die Build-Konfiguration.
Abbildung 2. Beispiel für Projekteinstellungen. Klicken Sie auf Fertig.
Live Edit aktivieren
Rufen Sie die Einstellungen auf, um die Live-Bearbeitung zu aktivieren.
- Klicken Sie unter Windows oder Linux auf Datei > Einstellungen > Editor > Live-Bearbeitung.
- Gehen Sie unter macOS zu Android Studio > Einstellungen > Editor > Live Edit.
Wählen Sie in den Einstellungen die Option Live-Bearbeitung und den gewünschten Modus aus.
Im manuellen Modus werden Ihre Codeänderungen jedes Mal übertragen, wenn Sie Strg +' (Befehlstaste +' unter macOS) drücken. Im manuellen Modus werden Ihre Codeänderungen jedes Mal angewendet, wenn Sie manuell speichern, indem Sie Strg + S (Befehl + S unter macOS) drücken. Im automatischen Modus werden Ihre Codeänderungen auf Ihrem Gerät oder Emulator angewendet, während Sie sie vornehmen.
Abbildung 3. Einstellungen für die Live-Bearbeitung Öffnen Sie im Editor die Datei
MainActivity
, die den Einstiegspunkt für Ihre App darstellt.Klicken Sie auf Run
, um Ihre App bereitzustellen.
Nachdem Sie die Live-Bearbeitung aktiviert haben, wird rechts oben im Toolfenster Running Devices (Geräte, auf denen die App ausgeführt wird) das grüne Häkchen Up-to-date (Aktuell) angezeigt:
Änderungen vornehmen und prüfen
Wenn Sie unterstützte Änderungen im Editor vornehmen, wird das virtuelle oder physische Testgerät automatisch aktualisiert.
Bearbeiten Sie beispielsweise die vorhandene Methode Greeting
in MainActivity
so:
@Composable fun Greeting(name: String) { Text( text = "Hello $name!", Modifier .padding(80.dp) // Outer padding; outside background .background(color = Color.Cyan) // Solid element background color .padding(16.dp) // Inner padding; inside background, around text) ) }
Ihre Änderungen werden sofort auf dem Testgerät angezeigt, wie in Abbildung 4 zu sehen ist.

Greeting
angezeigt werden.Fehlerbehebung bei Live Edit
Wenn Ihre Änderungen auf dem Testgerät nicht angezeigt werden, hat Android Studio Ihre Änderungen möglicherweise nicht aktualisiert. Prüfen Sie, ob die Anzeige für die Live-Bearbeitung Veraltet anzeigt (siehe Abbildung 5). Dies deutet auf einen Kompilierungsfehler hin. Wenn Sie auf den Indikator klicken, erhalten Sie Informationen zum Fehler und Vorschläge zur Behebung.

Einschränkungen von „Live Edit“
Im Folgenden finden Sie eine Liste der aktuellen Einschränkungen.
[Gilt nur für Android Studio Giraffe und höher] Für Live Edit ist Compose Runtime 1.3.0 oder höher erforderlich. Wenn in Ihrem Projekt eine niedrigere Version von Compose verwendet wird, ist die Funktion „Live-Bearbeitung“ deaktiviert.
[Gilt nur für Android Studio Giraffe und höher] Für Live Edit ist AGP 8.1.0-alpha05 oder höher erforderlich. Wenn in Ihrem Projekt eine niedrigere Version von AGP verwendet wird, ist Live Edit deaktiviert.
Für die Funktion „Live-Bearbeitung“ ist ein physisches Gerät oder ein Emulator mit API-Level 30 oder höher erforderlich.
Mit Live Edit kann nur der Funktionsrumpf bearbeitet werden. Das bedeutet, dass Sie den Funktionsnamen oder die Signatur nicht ändern, keine Funktion hinzufügen oder entfernen und keine Felder ändern können, die nicht zur Funktion gehören.
Bei der ersten Änderung einer Compose-Funktion in einer Datei wird der App-Status durch Live-Bearbeitung zurückgesetzt. Das passiert erst nach der ersten Codeänderung. Der App-Status wird nicht durch nachfolgende Codeänderungen zurückgesetzt, die Sie an Compose-Funktionen in dieser Datei vornehmen.
Bei Klassen, die mit Live Edit geändert wurden, kann es zu Leistungseinbußen kommen. Führen Sie Ihre App aus und verwenden Sie einen sauberen Release-Build, wenn Sie die Leistung bewerten.
Sie müssen einen vollständigen Lauf ausführen, damit der Debugger auf Klassen angewendet werden kann, die Sie mit Live Edit geändert haben.
Eine laufende App kann abstürzen, wenn Sie sie mit Live-Bearbeitung bearbeiten. In diesem Fall können Sie die App mit der Schaltfläche Ausführen
neu bereitstellen.
Bei Live Edit wird keine Bytecode-Manipulation durchgeführt, die in der Build-Datei Ihres Projekts definiert ist, z. B. Bytecode-Manipulation, die angewendet würde, wenn das Projekt mit den Optionen im Menü Build oder durch Klicken auf die Schaltflächen Build oder Ausführen erstellt wird.
Nicht zusammensetzbare Funktionen werden live auf dem Gerät oder Emulator aktualisiert und es wird eine vollständige Neuzusammensetzung ausgelöst. Bei der vollständigen Neuzusammenstellung wird die aktualisierte Funktion möglicherweise nicht aufgerufen. Bei nicht zusammensetzbaren Funktionen müssen Sie die neu aktualisierten Funktionen auslösen oder die App noch einmal ausführen.
Die Live-Bearbeitung wird beim Neustart der App nicht fortgesetzt. Sie müssen die App noch einmal ausführen.
Live Edit unterstützt nur debugfähige Prozesse.
Live Edit unterstützt keine Projekte, in denen benutzerdefinierte Werte für
moduleName
unterkotlinOptions
in der Build-Konfiguration verwendet werden.Die Live-Bearbeitung funktioniert nicht bei Bereitstellungen mit mehreren Bereitstellungen. Das bedeutet, dass Sie nicht zuerst auf einem Gerät und dann auf einem anderen bereitstellen können. Die Live-Bearbeitung ist nur auf den zuletzt bereitgestellten Geräten aktiv.
Die Live-Bearbeitung funktioniert bei Bereitstellungen auf mehreren Geräten (Bereitstellungen auf mehreren Geräten, die über Mehrere Geräte auswählen im Drop-down-Menü für das Zielgerät erstellt wurden). Er wird jedoch nicht offiziell unterstützt und es kann zu Problemen kommen. Falls Probleme auftreten, melden Sie diese bitte.
„Änderungen anwenden“ / „Codeänderungen anwenden“ sind nicht mit Live-Bearbeitung kompatibel und erfordern einen Neustart der ausgeführten App.
Live Edit unterstützt derzeit keine Android Automotive-Projekte.
Häufig gestellte Fragen zu Live-Bearbeitung
Wie ist der aktuelle Status von Live-Bearbeitung?
Die Funktion „Live Edit“ ist in Android Studio Giraffe verfügbar. Um die Funktion zu aktivieren, gehen Sie zu Datei > Einstellungen > Editor > Live-Bearbeitung (Android Studio > Einstellungen > Editor > Live-Bearbeitung unter macOS).
Wann sollte ich die Live-Bearbeitung verwenden?
Mit der Live-Bearbeitung können Sie schnell sehen, wie sich Änderungen an UX-Elementen (z. B. Aktualisierungen von Modifikatoren und Animationen) auf die gesamte App auswirken.
Wann sollte ich die Live-Bearbeitung vermeiden?
Live Edit konzentriert sich auf UI- und UX-bezogene Codeänderungen. Änderungen wie Aktualisierungen der Methodensignatur, das Hinzufügen neuer Methoden oder Änderungen der Klassenhierarchie werden nicht unterstützt. Weitere Informationen finden Sie unter Einschränkungen der Live-Bearbeitung.
Wann sollte ich die Compose-Vorschau verwenden?
Verwenden Sie Compose Preview, wenn Sie einzelne Composables entwickeln. In der Vorschau werden Compose-Elemente visualisiert und die Ansicht wird automatisch aktualisiert, um die Auswirkungen von Codeänderungen zu zeigen. In der Vorschau können Sie sich UI-Elemente auch in verschiedenen Konfigurationen und Status ansehen, z. B. im dunklen Design, in verschiedenen Gebietsschemata und mit unterschiedlicher Schriftgrößenanpassung.
Iterative Codeentwicklung mit Compose
Mit Live Edit und Hot Reload für Compose Multiplatform können Sie Zeit sparen und Ihre Produktivität bei der Entwicklung mit Compose steigern. Sie erfüllen jedoch die Anforderungen verschiedener Arten von Entwicklung:
Live Edit unterstützt die iterative Entwicklung mit Jetpack Compose für Android-Anwendungen. Damit können Sie Composables in Emulatoren und auf physischen Geräten in Echtzeit aktualisieren. Diese Funktion minimiert Kontextwechsel zwischen dem Schreiben und Erstellen Ihrer App, sodass Sie sich länger und ohne Unterbrechung auf das Schreiben von Code konzentrieren können.
Compose Hot Reload erfüllt denselben Zweck, unterstützt aber Desktopanwendungen, die mit Compose Multiplatform erstellt wurden. Damit können Sie Änderungen an Ihrem UI-Code in einer Compose Multiplatform-Anwendung vornehmen und die Ergebnisse in Echtzeit sehen, indem Ihr Code bei jeder Änderung intelligent neu geladen wird.
Diese beiden Funktionen nutzen zwar viele Technologien innerhalb der Compose-Engine und unterstützen viele ähnliche Anwendungsfälle, sie haben aber nicht dieselben Funktionen, da sie für verschiedene Arten der Compose-Entwicklung gelten.
Wenn Sie eine Android-App entwickeln, sollten Sie Live Edit verwenden, um den Entwicklungsprozess zu beschleunigen. Wenn Sie eine Desktopanwendung mit Compose Multiplatform entwickeln, sollten Sie Compose Hot Reload verwenden.
Live-Bearbeitung von Literalen (eingestellt)
In Android Studio können einige konstante Literale, die in Composables in Vorschau, Emulator und auf physischen Geräten verwendet werden, in Echtzeit aktualisiert werden. Hier sind einige unterstützte Typen:
Int
String
Color
Dp
Boolean
Sie können konstante Literale, die Echtzeit-Updates auslösen, ohne den Kompilierungsschritt ansehen, indem Sie die Darstellung von Literalen über den UI-Indikator „Live-Bearbeitung von Literalen“ aktivieren:
Änderungen übernehmen
Mit Änderungen anwenden können Sie Code und Ressourcen aktualisieren, ohne Ihre App auf einem Emulator oder physischen Gerät neu bereitstellen zu müssen. Es gibt jedoch einige Einschränkungen.
Wenn Sie Composables hinzufügen, ändern oder löschen, können Sie Ihre App aktualisieren, ohne sie neu bereitstellen zu müssen. Klicken Sie dazu auf die Schaltfläche Codeänderungen anwenden:
Empfehlungen für dich
- Hinweis: Linktext wird angezeigt, wenn JavaScript deaktiviert ist.
- Animationen anpassen {:#customize-animations}
- Wertbezogene Animationen