Android
Sofortiges Ausführen in Android Studio
Suche…
Bemerkungen
Instant Run ist ein erweitertes Verhalten für die Befehle run und debug, das ein schnelleres Debugging ermöglicht, da kein kompletter Build und keine erneute Installation für alle im Code der App vorgenommenen Änderungen erforderlich sind.
Instant Run wurde in Android Studio 2.0 eingeführt und ist ein Verhalten für die Befehle Ausführen und Debuggen, das die Zeit zwischen Aktualisierungen Ihrer App erheblich reduziert. Der erste Build kann zwar länger dauern, aber Instant Run gibt nachfolgende Aktualisierungen an Ihre App weiter, ohne einen neuen APK zu erstellen, sodass Änderungen viel schneller sichtbar werden.
Instant Run wird nur unterstützt, wenn Sie die Debug-Build-Variante bereitstellen, Android Plugin für Gradle Version 2.0.0 oder höher verwenden und minSdkVersion in der Build-Gradle-Datei auf Modulebene der App auf 15 oder höher festlegen. Setzen Sie für die beste Leistung minSdkVersion auf 21 oder höher.
Nach der Bereitstellung einer App wird ein kleines, gelbes Thunderbolt-Symbol in der Schaltfläche Ausführen (oder in der Debug-Schaltfläche) angezeigt, das darauf hinweist, dass Instant Run beim nächsten Klicken auf die Schaltfläche zum Aktualisieren bereit ist. Anstatt eine neue APK zu erstellen, werden nur diese neuen Änderungen ausgeführt. In einigen Fällen muss die App nicht einmal neu gestartet werden, sondern zeigt sofort die Auswirkungen dieser Codeänderungen.
Instant Run überträgt aktualisierten Code und Ressourcen auf Ihr angeschlossenes Gerät oder Emulator, indem Sie einen Hot-Swap, einen Warm-Swap oder einen Cold-Swap durchführen. Die Art des Tauschvorgangs wird automatisch anhand der von Ihnen vorgenommenen Änderung bestimmt. Das Video oben zeigt interessante Details darüber, wie das alles unter der Haube funktioniert. Eine kurze Zusammenfassung des Verhaltens von Instant Run, wenn Sie bestimmte Codeänderungen auf ein Zielgerät verschieben, finden Sie in der folgenden Tabelle.
Aktivieren oder deaktivieren Sie Instant Run
- Öffnen Sie das Dialogfeld Einstellungen oder Voreinstellungen:
- Unter Windows oder Linux wählen Sie im Hauptmenü
File
>Settings
. - Wählen Sie unter Mac OSX im Hauptmenü
Android Studio
>Preferences
aus.
- Unter Windows oder Linux wählen Sie im Hauptmenü
- Navigieren Sie zu
Build, Execution, Deployment
>Compiler
. - Geben Sie in das Textfeld neben Befehlszeilenoptionen Ihre Befehlszeilenoptionen ein.
- Klicken Sie auf OK, um zu speichern und zu beenden.
Die oberste Option ist Instant Run. Aktivieren / Deaktivieren Sie dieses Kontrollkästchen.
Arten von Code-Swaps in Instant Run
Mit Instant Run können Sie drei Arten von Code-Swaps verwenden, um das schnellere Debuggen und Ausführen von Apps in Ihrem Code in Android Studio zu unterstützen.
- Heißer Tausch
- Warm Swap
- Cold Swap
Wann werden die einzelnen Swaps ausgelöst?
HOT SWAP wird ausgelöst, wenn die Implementierung einer vorhandenen Methode geändert wird.
WARM SWAP wird ausgelöst, wenn eine vorhandene Ressource geändert oder entfernt wird (alles im Ordner res)
COLD SWAP bei jeder Änderung des Strukturcodes im Code Ihrer App, z
- Hinzufügen, Entfernen oder Ändern:
- eine Anmerkung
- ein Instanzfeld
- ein statisches Feld
- eine statische Methodensignatur
- eine Instanzmethoden-Signatur
- Ändern Sie, von welcher übergeordneten Klasse die aktuelle Klasse erbt
- Ändern Sie die Liste der implementierten Schnittstellen
- Ändern Sie den statischen Initialisierer einer Klasse
- Layoutelemente, die dynamische Ressourcen-IDs verwenden, neu anordnen
Was passiert, wenn ein Code ausgetauscht wird?
HOT SWAP- Änderungen sind sofort sichtbar - sobald der nächste Aufruf der Methode erfolgt, deren Implementierung geändert wird.
WARM SWAP startet die aktuelle Aktivität neu
COLD SWAP startet die gesamte App neu (ohne Neuinstallation)
Nicht unterstützter Code ändert sich bei Verwendung von Instant Run
Es gibt ein paar Änderungen, bei denen Instant keinen Trick zeigt, und eine vollständige Erstellung und Neuinstallation Ihrer App wird genau so erfolgen, wie dies vor der Geburt von Instant Run der Fall war.
- Ändern Sie das App-Manifest
- Ändern Sie die vom App-Manifest referenzierten Ressourcen
- Ändern eines Android-Widget-Benutzeroberflächenelements (erfordert ein Bereinigen und Wiederholen)