Compiler erstellen
androidx.compose
(Weitere Informationen finden Sie in der API-Referenzdokumentation für alle Pakete zur Erstellung einer Nachricht.)
Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpharelease |
---|---|---|---|---|
1. Mai 2024 | 1.5.13 | − | − | − |
Struktur
Compose ist eine Kombination aus sieben Maven-Gruppen-IDs in androidx
. Jede Gruppe enthält eine ausgewählte Teilmenge von Funktionen mit jeweils eigenen Versionshinweisen.
In dieser Tabelle werden die Gruppen und Links zu den einzelnen Versionshinweisen erläutert.
Gruppe | Beschreibung |
---|---|
compose.animation | Animationen in den Jetpack Compose-Anwendungen erstellen, um die Nutzererfahrung zu verbessern. |
compose.compiler | @Composable-Funktionen transformieren und Optimierungen mit einem Kotlin-Compiler-Plug-in aktivieren |
compose.foundation | Schreiben Sie Jetpack Compose-Anwendungen mit einsatzbereiten Bausteinen und erweitern Sie die Grundlage, um Ihre eigenen Designsystemteile zu erstellen. |
compose.material | Erstellen Sie Jetpack Compose-Benutzeroberflächen mit einsatzbereiten Material Design-Komponenten. Das ist der übergeordnete Einstiegspunkt von Compose. Hier stellen wir Komponenten bereit, die den unter www.material.io beschriebenen entsprechen. |
compose.material3 | Erstellen Sie Jetpack Compose-Benutzeroberflächen mit Material Design 3 Components, der nächsten Entwicklung des Material Design. Material 3 enthält aktualisierte Designs und Komponenten sowie Personalisierungsfunktionen wie dynamische Farben. Das Design ist an den visuellen Stil und die System-UI von Android 12 angepasst. |
compose.runtime | Grundlegende Bausteine des Programmiermodells und der Statusverwaltung von Compose sowie der Kernlaufzeit für das Targeting des Compiler-Plug-ins „Compose“. |
compose.ui | Grundlegende Komponenten der Editor-UI, die für die Interaktion mit dem Gerät erforderlich sind, einschließlich Layout, Zeichnung und Eingabe. |
Abhängigkeiten deklarieren
Zum Hinzufügen einer Abhängigkeit von Compose müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre Anwendung oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:
Groovig
android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.13" } kotlinOptions { jvmTarget = "19" } }
Kotlin
android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.13" } kotlinOptions { jvmTarget = "19" } }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Lassen Sie uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie eine neue erstellen. Durch Klicken auf die Stern-Schaltfläche können Sie zu einem vorhandenen Problem abstimmen.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Version 1.5
Version 1.5.13
1. Mai 2024
androidx.compose.compiler:compiler:1.5.13
und androidx.compose.compiler:compiler-hosted:1.5.13
werden veröffentlicht. Version 1.5.13 enthält diese Commits.
Neue Funktionen
- Starkes Überspringen gilt nicht mehr als experimentell und kann problemlos in der Produktion verwendet werden. Es wird in einer zukünftigen Version die Standardeinstellung. (I6c8c4)
Fehlerkorrekturen
- Korrektur der Binärkompatibilität für
@Composable
-Funktionen mit Wertklassenparametern, die einen Standardwert haben und einen nicht-primitiven Wert umschließen. (I89465) - Korrekturen für JS und native Kompilierung wurden über die Multiplattform Compose vorgenommen. Ausführliche Informationen finden Sie oben im Commit-Bereich.
Version 1.5.12
17. April 2024
androidx.compose.compiler:compiler:1.5.12
und androidx.compose.compiler:compiler-hosted:1.5.12
werden veröffentlicht. Version 1.5.12 enthält diese Commits.
Fehlerkorrekturen
- Behebt ein Problem mit der inkrementellen Kompilierung mit Kotlin 1.9.23. (Ifca55)
- Korrigieren Sie Typen, die keine Nullwerte zulassen, in Wertparametern für nicht-primitive Inline-Klassen. (Ie6bb5)
Version 1.5.11
20. März 2024
androidx.compose.compiler:compiler:1.5.11
und androidx.compose.compiler:compiler-hosted:1.5.11
werden veröffentlicht. Version 1.5.11 enthält diese Commits.
Notizen
Ab dieser Version ruft der Compiler jetzt
startReplaceGroup
anstelle vonstartReplacableGroup
auf, wenn ein Modul mit einer Laufzeit kompiliert wird, die diese Methode enthält.startReplaceGroup
wurde in der Laufzeit in der Compose-Laufzeit1.7.0-alpha03
eingeführt.startRestartGroup
-Aufrufe werden nur bei einer Ausrichtung auf Versionen der Laufzeit 1.7.0-alpha03 oder höher generiert.Wenn Sie
startReplaceGroup
anstelle vonstartReplaceableGroup
aufrufen, kann die Laufzeit Änderungen effizienter erkennen. Dies kann sich jedoch auf die Reihenfolge auswirken, in der Änderungen vonComposer
erkannt und anApplier
gesendet werden. Dies kann zu geringfügigen Änderungen im Verhalten führen, wenn einApplier
von der Reihenfolge abhängt, in der diese Vorgänge erkannt werden.
Neue Funktionen
- Unterstützung für Kotlin 1.9.23
Fehlerkorrekturen
- Probleme mit der Ableitung von verschachtelten externen generischen Typen in „Instabil“ wurden behoben. (I3437f, b/327643787)
- Mehrere Stabilitätskonfigurationsdateien unterstützen (I8db14, b/325326744)
- Compose Compiler wandelt überschriebene Funktionen jetzt korrekt um, indem Basisklassen/-überschreibungen rekursiv durchlaufen werden. (I2c9f9, b/316196500)
- Achten Sie darauf, dass bei der Funktionsreferenzspeicherung nicht versucht wird, implizite übergeordnete lokale Deklarationen zu erfassen, wenn diese nicht direkt verwendet werden. (Ib1267)
- Fehler bei der Codegenerierung für zusammensetzbare Cross-Inline-Lambda-Aktualisierungen behoben (der Fehler ist nur schwer zu beseitigen, wenn „nonSkippingGroupOptimization“ nicht aktiviert ist) (Icb2fd, b/325502738)
Version 1.5.10
21. Februar 2024
androidx.compose.compiler:compiler:1.5.10
und androidx.compose.compiler:compiler-hosted:1.5.10
werden veröffentlicht. Version 1.5.10 enthält diese Commits.
Fehlerkorrekturen
- Unterstützung von Live-Literalen in Init-Blöcken. (b/320397488)
- Verwenden Sie den Dispatcher-Parameter, um zu prüfen, ob sich die Funktion in der lokalen Klasse befindet (b/323123439).
Version 1.5.9
7. Februar 2024
androidx.compose.compiler:compiler:1.5.9
und androidx.compose.compiler:compiler-hosted:1.5.9
werden veröffentlicht. Version 1.5.9 enthält diese Commits.
Fehlerkorrekturen
- Probleme mit zusammensetzbaren Aufrufen im anonymen Objektinitialisierer wurden behoben. (b/320261458 und 96315c)
- Rekursive lokale Deklarationen als Erfassung zählen. (b/318745941 und e7b4b0)
- Korrigieren Sie das Verhalten bei Änderungen des intrinsischen Merkens im Zusammenhang mit Java-Methodenverweisen, indem Sie .changed für Funktionstypen mit intrinsischer Erinnerungsfunktion erzwingen. (b/319810819 und 77128e)
- Es wurde eine experimentelle Optimierung hinzugefügt, bei der die Gruppen um nicht überspringbare Funktionen, wie z. B. die explizit als
@NonSkippableComposable
gekennzeichnete Funktionen, und Funktionen, die implizit nicht überspringbar sind, entfernt werden, wie z. B. Inline-Funktionen und Funktionen, die einen Nicht-Einheitswert wieremember
zurückgeben. - Diese Optimierung kann aktiviert werden, indem die Plug-in-Option
-P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true
an den Kotlin-Compiler übergeben wird. (I1688f)
Version 1.5.8
10. Januar 2024
androidx.compose.compiler:compiler:1.5.8
und androidx.compose.compiler:compiler-hosted:1.5.8
werden veröffentlicht. Version 1.5.8 enthält diese Commits.
Neue Funktionen
- Unterstützung für Kotlin 1.9.22
Fehlerkorrekturen
- Es wurde ein Fehler behoben, bei dem beim Erstellen von Compiler-Builds Ausnahmen ausgelöst wurden, wenn der Build mit Java21 erstellt wurde. Nutzer, die Compose Compiler von Google Maven verwenden (d.h. nicht selbst erstellen), waren von diesem Fehler nie betroffen. (b/316644294)
- Es wurde ein Fehler behoben, bei dem für einige Anrufer von nicht Inline-Lambdas
COMPOSABLE_EXPECTED
Fehler gemeldet wurde. (b/309364913) - Ein Kompilierungsfehler für Standardparameter in offenen Funktionen wurde hinzugefügt. Zuvor war die Funktion nur für abstrakte Funktionen eingeschränkt. Bei der Funktion „Compose“ können derzeit keine Standardparameter durch überschriebene Funktionen ersetzt werden. Das Überschreiben einer zusammensetzbaren Funktion mit Standardparametern ist während der Laufzeit fehlgeschlagen. Verwenden Sie
@Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE")
zum Unterdrücken. Das Überschreiben einer solchen Funktion ohne Angabe eines Standardwerts für den Parameter führt jedoch zu einem Absturz während der Laufzeit.(b/317490247) - Es wurde ein Fehler im integrierten Merken behoben, der verhinderte, dass Werte richtig weitergegeben wurden. (b/316327367)
Externer Beitrag
- Tippfehler in der Dokumentation beheben. (aosp/288106)
Version 1.5.7
19. Dezember 2023
androidx.compose.compiler:compiler:1.5.7
und androidx.compose.compiler:compiler-hosted:1.5.7
werden veröffentlicht. Version 1.5.7 enthält diese Commits.
Fehlerkorrekturen
- Behebung eines Absturzes bei der Erstellung der Laufzeit, wenn der Schlüsselparameter
remember()
eine zusammensetzbare Funktion aufruft (b/315855015) - Problem mit dem Absturz der Compose-Laufzeit bei Verwendung von
return@
wurde behoben. (b/315821171) - Vermeiden Sie die Verwendung absoluter Pfade in Memoisierungsschlüsseln, da dies eine bessere Build-Cache-Nutzung ermöglicht. (b/313937484)
Version 1.5.6
6. Dezember 2023
androidx.compose.compiler:compiler:1.5.6
und androidx.compose.compiler:compiler-hosted:1.5.6
werden veröffentlicht. Version 1.5.6 enthält diese Commits.
Neue Funktionen
- Unterstützung für Kotlin 1.9.21
Fehlerkorrekturen
- Aktiviert das intrinsische Speichern. Dies ist die Compiler-Transformation, die Inlines im Compose-Compiler-Plug-in speichert und
.equals
-Vergleiche durch int-Vergleiche des Parameter-Meta für stabile Parameter ersetzt. Dies führt dazu, dass weniger Slots verwendet und weniger Vergleiche während der Laufzeit durchgeführt werden. Die Option kann durch Angabe des Compiler-Plug-in-Arguments „-Pplugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false
“ deaktiviert werden. (If675f) - Speichern angepasster Funktionsverweise und Inline-Argumente korrigiert. (b/312738720)
- Gruppen beim Beenden des Inline-Funktionsaufrufs realisieren (b/312242547)
Externer Beitrag
- Behebung des k/native- und k/wasm-Laufzeitabsturzes aufgrund einer fehlenden Return-Anweisung in zusammensetzbaren Funktionen, wenn dies die letzte Anweisung ist und eine Null-Konstante zurückgegeben wird (aosp/2835716)
Version 1.5.5
29. November 2023
androidx.compose.compiler:compiler:1.5.5
und androidx.compose.compiler:compiler-hosted:1.5.5
werden veröffentlicht. Version 1.5.5 enthält diese Commits.
Fehlerkorrekturen
- Behebt einen Absturz beim Suchen von überschriebenen zusammensetzbaren Typen (Ib6d2c, b/297665426)
stabilityConfigurationPath
zu bekannten Parametern hinzugefügt (zuvor konnte das Konfigurationsdatei-Flag durch den Fehler verhindert werden). (b/309765121)- Fehlerkorrekturen bei Erinnerungen (I081d1, I4d7bf)
- Korrektur der Neuzusammensetzung durch Berücksichtigung des Zustands eines unsicheren Parameters in der internen Erinnerung (b/263402091)
- Informationen in der Debugging-Zeile für intrinsic Merken korrigiert (Ic8cf5)
- Behebung eines Absturzes (IR-Senkung fehlgeschlagen) beim Suchen von überschriebenen zusammensetzbaren Typen zum Zeitpunkt der Kompilierung (b/297665426)
Externer Beitrag
- Stabile Funktionsverweise mit Argumenten speichern (I4d7bf, b/302680514)
Version 1.5.4
7. November 2023
androidx.compose.compiler:compiler:1.5.4
und androidx.compose.compiler:compiler-hosted:1.5.4
werden veröffentlicht. Version 1.5.4 enthält diese Commits.
Aktualisierungen von Abhängigkeiten
- Compose Compiler ist jetzt mit Kotlin 1.9.20 kompatibel
Neue Funktionen
- Fügen Sie eine experimentelle Option hinzu, um den Modus für starkes Überspringen zu aktivieren. Mit dem starken Überspringungsmodus können zusammensetzbare Funktionen mit instabilen Parametern übersprungen werden. Außerdem werden Lambdas mit instabilen Aufnahmen gespeichert. Diese Funktion befindet sich in der Testphase und ist noch nicht für den Produktionseinsatz bereit. 22421e
- Flag hinzufügen, um Quell-/Trace-Informationen zu aktivieren/deaktivieren. (4d45f09)
- Ermöglicht die Konfiguration der Stabilität externer Klassen über eine Konfigurationsdatei. (If40eb)
Fehlerkorrekturen
- Ein vorzeitiges Beenden von zusammensetzbaren Funktionen wurde behoben, wenn keine Quellinformationen erfasst werden. (FE6267)
- Beheben Sie das Problem mit „Weiter von zusammensetzbaren Funktionen“. (948362)
- Das Problem wurde behoben, wenn zusammensetzbare Funktionen innerhalb eines Funktionsaufrufs mit mehreren Überlastungen aufgerufen werden, die vom Rückgabetyp des Ausdrucks abhängig sind. (2d36d0)
- Fehler bei der Erinnerung behoben, wenn Funktionsreferenz keinen Weiterleitungsempfänger hat. (fc2326)
- Reparatur von Verschmutzungen, die in einigen Situationen die Neuzusammensetzung von Lambdas verhinderten. (db3699)
- Stabilität bei inkrementeller modulübergreifender Kompilierung beheben (7d3e127)
- Reduzieren Sie den Bereich von
@DontMemoize
auf Lambda-Ausdrücke. (7a7fa52) - Variablen korrigieren, die nicht richtig erfasst wurden, wenn eine zusammensetzbare Benutzeroberfläche als Lambda verwendet wird (5ae3556)
Externer Beitrag
- Strukturelles Gleichheitssymbol für numerischen Vergleiche und Nullvergleiche verwenden (c612a0)
Version 1.5.3
29. August 2023
androidx.compose.compiler:compiler:1.5.3
, androidx.compose.compiler:compiler-daemon:1.5.3
und androidx.compose.compiler:compiler-hosted:1.5.3
wurden veröffentlicht. Version 1.5.3 enthält diese Commits.
Abhängigkeitsaktualisierung
- Die Kotlin-Version wurde auf 1.9.10 aktualisiert.
Version 1.5.2
23. August 2023
androidx.compose.compiler:compiler:1.5.2
, androidx.compose.compiler:compiler-daemon:1.5.2
und androidx.compose.compiler:compiler-hosted:1.5.2
wurden veröffentlicht. Version 1.5.2 enthält diese Commits.
Fehlerkorrekturen
- Fügen Sie Zeilennummern für Return-Anweisungen in zusammensetzbaren Funktionen ein, die konstant zurückgegeben werden. (I42d89)
- Ein Speicherleck, das durch einen Wechsel zum neuen Einstiegspunkt für das Compiler-Plug-in verursacht wurde, wurde behoben. 4f0a101
- Beenden Sie die Umwandlung nicht zusammensetzbarer unterhaltsamer Schnittstellen im Compose-Compiler. Dadurch werden lustige Benutzeroberflächen genauso gehandhabt wie Lambdas, einschließlich der Erinnerungsregeln. 28b3ce9
- Der Argumenttyp "vararg" dient zum Ableiten der Stabilität auf der Anrufwebsite. (bc83645)
Version 1.5.1
26. Juli 2023
androidx.compose.compiler:compiler:1.5.1
, androidx.compose.compiler:compiler-daemon:1.5.1
und androidx.compose.compiler:compiler-hosted:1.5.1
wurden veröffentlicht. Version 1.5.1 enthält diese Commits.
Fehlerkorrekturen
- Ereignismarkierungen für Kompositionsverfolgung in
@ReadOnlyComposable
-Funktionen mit frühen Rückgaben wurden korrigiert, die zu Trace-Beschädigungen führten.
Version 1.5.0
18. Juli 2023
androidx.compose.compiler:compiler:1.5.0
, androidx.compose.compiler:compiler-daemon:1.5.0
und androidx.compose.compiler:compiler-hosted:1.5.0
wurden veröffentlicht. Version 1.5.0 enthält diese Commits.
Experimenteller K2-Support
- Compose-Compiler 1.5.0 bietet experimentelle Unterstützung für den K2-Compiler. Einige Funktionen der Funktion „Compose“ werden von K2 noch nicht unterstützt und sind in zukünftigen Versionen des Compilers verfügbar.
Wichtige Änderungen seit Version 1.4.0
- Die Kotlin-Version wurde auf 1.9.0 aktualisiert.
- Benannte Argumente für Lambda-Aufrufe vom Typ
@Composable
wurden verworfen. Diese Funktion nutzt interne Compiler-APIs und wird von K2 nicht unterstützt. - Es wurde eine Diagnose hinzugefügt, um die Annotation
@Composable
zu erwarteten/tatsächlichen Anrufen zu überprüfen. Für beide Deklarationen wird erwartet, dass die Annotationen übereinstimmen.
Version 1.4.8
Version 1.4.8
28. Juni 2023
androidx.compose.compiler:compiler:1.4.8
, androidx.compose.compiler:compiler-daemon:1.4.8
und androidx.compose.compiler:compiler-hosted:1.4.8
wurden veröffentlicht. Version 1.4.8 enthält diese Commits.
Neue Funktionen
- Die Kotlin-Compiler-Version wurde auf 1.8.22 erweitert.
Fehlerkorrekturen
- Die Fehlermeldung für
@Composable
-Überschreibungen wurde verbessert. Jetzt wird korrekt auf nicht übereinstimmende Annotationen hingewiesen. - Vor redundanten
@Composable
-Annotationen auf Inline-Lambdas warnen, die nicht als zusammensetzbar gekennzeichnet werden sollten. Diese Funktion wird vom K2-Compiler nicht unterstützt.
Version 1.4.7
Version 1.4.7
3. Mai 2023
androidx.compose.compiler:compiler:1.4.7
, androidx.compose.compiler:compiler-daemon:1.4.7
und androidx.compose.compiler:compiler-hosted:1.4.7
wurden veröffentlicht. Version 1.4.7 enthält diese Commits.
Neue Funktionen
- Unterstützung für Kotlin 1.8.21
- Es wurden primitive Versionen der
State
API hinzugefügt, mit denen Int-, Long-, Float- und Double-Werte inState
-Objekten erfasst werden können, ohne dass es zu Strafen für das Autoboxing kommt.
Version 1.4.6
Version 1.4.6
19. April 2023
androidx.compose.compiler:compiler:1.4.6
, androidx.compose.compiler:compiler-daemon:1.4.6
und androidx.compose.compiler:compiler-hosted:1.4.6
wurden veröffentlicht. Version 1.4.6 enthält diese Commits.
Fehlerkorrekturen
- „Compose Compiler“ basiert jetzt auf Java 11 (anstelle von Java17, das für Compose Compiler Version 1.4.5 erforderlich ist), um Nutzer, die noch ältere Java-Versionen verwenden, besser zu unterstützen.
Version 1.4.5
Version 1.4.5
12. April 2023
androidx.compose.compiler:compiler:1.4.5
, androidx.compose.compiler:compiler-daemon:1.4.5
und androidx.compose.compiler:compiler-hosted:1.4.5
wurden veröffentlicht. Version 1.4.5 enthält diese Commits.
HINWEIS Für diesen Build von Compose Compiler muss Ihre Build-Umgebung Java 17 oder höher verwenden. Aufgrund von Nutzerfeedback werden wir diese Anforderung auf Java 11 zurückversetzen und eine andere Version (1.4.6) veröffentlichen, um Nutzer, die ältere Java-Versionen verwenden, besser zu unterstützen.
Neue Funktionen
Unterstützung für Kotlin 1.8.20
Fehlerkorrekturen
- Anforderung der Überschreibung des Operators für zusammensetzbare Aufrufe an Klassen und Schnittstellen weitergeben, die Lambda-Schnittstellen mit entsprechenden Anmerkungen erweitern.f8f2f78a1a769c2373201027f12700e772e4e97e
- Ermöglicht die Verwendung der Annotation
@Composable
im OperatorgetValue
und markiert den generierten Getter für den Delegaten als zusammensetzbar in IR, damit er später korrekt umgewandelt wird. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40 - Interner Laufzeitfehler beim Schreiben wurde für Inline-Funktionen behoben (es wurde erwartet, dass
applyChanges()
aufgerufen wurde).b/274786923 - Vermeiden Sie es,
ProcessCancelledException
zu erfassen, da dies in der IDE eine besondere Bedeutung hat.b/274725600
Externer Beitrag
- Verbesserte Unterstützung für zusammensetzbare Funktionen in Kotlin/Native.f52b6aeed22400dd4f4a4f05559a9aa42642402c
Version 1.4.4
Version 1.4.4
22. März 2023
androidx.compose.compiler:compiler:1.4.4
, androidx.compose.compiler:compiler-daemon:1.4.4
und androidx.compose.compiler:compiler-hosted:1.4.4
wurden veröffentlicht. Version 1.4.4 enthält diese Commits.
Fehlerkorrekturen
- Probleme mit zusammensetzbaren Inline-Lambda-Rückgaben beheben (72172b)
- Zulassen, dass zusammensetzbare Funktionen
Nothing
zurückgeben (keinen Fehler generieren, wenn Sie TODO in einer zusammensetzbaren Funktion verwenden) 3aea8d)
Version 1.4.3
Version 1.4.3
22. Februar 2023
androidx.compose.compiler:compiler:1.4.3
wird freigegeben. Version 1.4.3 enthält diese Commits.
Fehlerkorrekturen
- Korrigiert bedingte Aufrufe zusammensetzbarer Funktionen in Argumenten von zusammensetzbaren Aufrufen (Ie93edb)
Version 1.4.2
Version 1.4.2
8. Februar 2023
androidx.compose.compiler:compiler:1.4.2
wird freigegeben. Version 1.4.2 enthält diese Commits.
Neue Funktionen
- Unterstützung für Kotlin 1.8.10
Fehlerkorrekturen
- Füge dem Text von nicht überspringbaren Lambdas Gruppen hinzu, um Fehler bei der Neuzusammensetzung zu vermeiden.
Version 1.4.1
Version 1.4.1
8. Februar 2023
androidx.compose.compiler:compiler:1.4.1
wird freigegeben. Version 1.4.1 enthält diese Commits.
Fehlerkorrekturen
- Deaktiviert die intrinsische Erinnerungsoptimierung, bei der zuvor einige Fehler bei der Codegenerierung aufgetreten sind.
- Deaktiviert das intrinsische Speichern in Funktionen, die einen vararg-Parameter enthalten.
- Fehler beim Überspringen in zusammensetzbaren Funktionen mit Standardparametern beheben
- Fügen Sie eine Defensive Fallback-Fehlermeldung hinzu, wenn die Prüfung der Kotlin-Kompatibilität fehlschlägt.
- Überspringen der Codegenerierung aus Inline-Lambda entfernen
Version 1.4.0
17. Januar 2023
androidx.compose.compiler:compiler:1.4.0
wird freigegeben. Version 1.4.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.3.0
- Unterstützung für Kotlin 1.8.0
- Funktion „Erinnern“ deaktiviert
- Die Datenklasse
Group
des UI-Tools hat jetzt das FeldisInline
. Dieses gibt an, ob die Gruppe zum Aufruf einer zusammensetzbaren Inline-Funktion vorgesehen ist. WennisInline
den Werttrue
hat, erfolgt der Aufruf an eine zusammensetzbare Inline-Funktion. Der Wert kann jedoch bei Aufrufen von zusammensetzbaren Inline-Funktionen „false“ sein, die aus Modulen stammen, die mit einer Version des Compose-Compiler-Plug-ins kompiliert wurden, die keine Inline-Funktionsinformationen generiert. ImmutableCollection
und ihre persistenten Geschwister gelten jetzt als stabil.- Neuer Parameter in
AnimatedContent
für Toollabel - Fehlerhafte Codegenerierung für Inline-Lambda behoben
Version 1.4.0-alpha02
11. November 2022
androidx.compose.compiler:compiler:1.4.0-alpha02
wird freigegeben. Version 1.4.0-alpha02 enthält diese Commits.
Neue Funktionen
- Für Kotlin
1.7.21
wird jetzt unterstützt.
Version 1.4.0-alpha01
9. November 2022
androidx.compose.compiler:compiler:1.4.0-alpha01
wird freigegeben. Version 1.4.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Probleme mit vorzeitigen Rückgaben von zusammensetzbaren Inline-Funktionen wurden behoben (b/255350755).
- Es wurde ein Fehler behoben, durch den die Kotlin-/JS-Unterstützung in Compose (6a40f8) unterbrochen wurde.
Version 1.3
Version 1.3.2
4. Oktober 2022
androidx.compose.compiler:compiler:1.3.2
wird freigegeben. Version 1.3.2 enthält diese Commits.
Neue Funktion
- Diese Version enthält ein Update auf Kotlin 1.7.20
Version 1.3.1
7. September 2022
androidx.compose.compiler:compiler:1.3.1
wird freigegeben. Version 1.3.1 enthält diese Commits.
Fehlerkorrekturen
- Problem mit
IllegalStateException
wurde behoben, bei dem „Kompilierungs-Kompiler“ unter bestimmten Umständen fälschlicherweise als zusammensetzbare Einheitentypen markiert hat. (b/237863365) - Nutzer müssen jetzt ihre bevorzugte Kotlin-Version angeben, wenn sie die Compiler-Versionsprüfung unterdrücken (I9e5e2).
Version 1.3.0
10. August 2022
androidx.compose.compiler:compiler:1.3.0
wird freigegeben. Version 1.3.0 enthält diese Commits.
Version 1.3.0-rc02
3. August 2022
androidx.compose.compiler:compiler:1.3.0-rc02
wird freigegeben. Version 1.3.0-rc02 enthält diese Commits.
Version 1.3.0-rc01
27. Juli 2022
androidx.compose.compiler:compiler:1.3.0-rc01
wird freigegeben. Version 1.3.0-rc01 enthält diese Commits.
Version 1.3.0-beta01
20. Juli 2022
androidx.compose.compiler:compiler:1.3.0-beta01
wird freigegeben. Version 1.3.0-beta01 enthält diese Commits.
Neue Funktionen
- Für Kotlin
1.7.10
wird jetzt unterstützt.
Version 1.2
Version 1.2.0
29. Juni 2022
androidx.compose.compiler:compiler:1.2.0
wird freigegeben. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
- Unterstützung für Kotlin 1.7.0
- Lesen Sie unseren Blogpost, in dem unsere neue Strategie zur Versionsverwaltung für Compose Compiler in Compose erläutert wird.
Version 1.2.0-rc02
22. Juni 2022
androidx.compose.compiler:compiler:1.2.0-rc02
wird freigegeben. Version 1.2.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Generierung von zusammensetzbaren Trace-Ereigniscode entfernt (aosp/2127922)
Version 1.2.0-rc01
15. Juni 2022
androidx.compose.compiler:compiler:1.2.0-rc01
wird freigegeben. Version 1.2.0-rc01 enthält diese Commits.
Version 1.2.0-beta03
1. Juni 2022
androidx.compose.compiler:compiler:1.2.0-beta03
wird freigegeben. Version 1.2.0-beta03 enthält diese Commits.
Version 1.2.0-beta02
18. Mai 2022
androidx.compose.compiler:compiler:1.2.0-beta02
wird freigegeben. Version 1.2.0-beta02 enthält diese Commits.
Version 1.2.0-beta01
11. Mai 2022
androidx.compose.compiler:compiler:1.2.0-beta01
wird freigegeben. Version 1.2.0-beta01 enthält diese Commits.
- Dies ist die erste Betaversion von 1.2. Seit der letzten Alphaversion gab es keine Änderungen.
Neue Funktionen
- Für Kotlin
1.6.21
wird jetzt unterstützt.
Version 1.2.0-alpha08
20. April 2022
androidx.compose.compiler:compiler:1.2.0-alpha08
wird freigegeben. Version 1.2.0-alpha08 enthält diese Commits.
Version 1.2.0-alpha07
6. April 2022
androidx.compose.compiler:compiler:1.2.0-alpha07
wird freigegeben. Version 1.2.0-alpha07 enthält diese Commits.
Version 1.2.0-alpha06
23. März 2022
androidx.compose.compiler:compiler:1.2.0-alpha06
wird freigegeben. Version 1.2.0-alpha06 enthält diese Commits.
Version 1.2.0-alpha05
9. März 2022
androidx.compose.compiler:compiler:1.2.0-alpha05
wird freigegeben. Version 1.2.0-alpha05 enthält diese Commits.
Version 1.2.0-alpha04
23. Februar 2022
androidx.compose.compiler:compiler:1.2.0-alpha04
wird freigegeben. Version 1.2.0-alpha04 enthält diese Commits.
Version 1.2.0-alpha03
9. Februar 2022
androidx.compose.compiler:compiler:1.2.0-alpha03
wird freigegeben. Version 1.2.0-alpha03 enthält diese Commits.
Version 1.2.0-alpha02
26. Januar 2022
androidx.compose.compiler:compiler:1.2.0-alpha02
wird freigegeben. Version 1.2.0-alpha02 enthält diese Commits.
Version 1.2.0-alpha01
12. Januar 2022
androidx.compose.compiler:compiler:1.2.0-alpha01
wird freigegeben. Version 1.2.0-alpha01 enthält diese Commits.
Neue Funktionen
- Kotlin-
1.6.10
wird jetzt unterstützt.
Version 1.1
Version 1.1.1
23. Februar 2022
androidx.compose.compiler:compiler:1.1.1
wird freigegeben. Version 1.1.1 enthält diese Commits.
Fehlerkorrekturen
NullPointerException
korrigieren unterandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
(aosp/1947059, b/206677462)- Ein Absturz wurde behoben, der durch Inhalte in der Zwischenablage beim Lesen aus der Zwischenablage auf Android-Geräten verursacht wurde. (I06020, b/197769306)
- RTL in
LazyVerticalGrid
korrigiert (aosp/1931080, b/207510535)
Version 1.1.0
9. Februar 2022
androidx.compose.compiler:compiler:1.1.0
wird freigegeben. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Stabile Unterstützung für den Overscroll-Effekt von Android 12
- Verbesserungen bei der Größe von Berührungszielbereichen
- Beachten Sie, dass in Compose 1.0 der Layoutbereich von Material-Komponenten erweitert wird, um die Material-Richtlinien für Barrierefreiheit im Hinblick auf die Größe des Berührungszielbereichs zu erfüllen. Beispielsweise wird das Berührungsziel auf der Schaltfläche auf eine Mindestgröße von
48x48dp
erweitert, auch wenn du eine kleinere Größe festgelegt hast. Dadurch wird das Verhalten von „Compose-Material“ an das gleiche Verhalten wie Material Design-Komponenten angepasst, was beim Mischen von Ansichten und der Funktion „Compose“ zu einem einheitlichen Verhalten führt. Durch diese Änderung wird auch sichergestellt, dass beim Erstellen Ihrer Benutzeroberfläche mit Compose Material-Komponenten die Mindestanforderungen für die Barrierefreiheit des Berührungszielbereichs erfüllt werden. - Stabile Unterstützung für Navigationsschienen
- Eine Reihe von zuvor experimentellen APIs wird zu einer stabilen Version umgestellt
- Unterstützung neuerer Versionen von Kotlin
Version 1.1.0-rc03
26. Januar 2022
androidx.compose.compiler:compiler:1.1.0-rc03
wird freigegeben. Version 1.1.0-rc03 enthält diese Commits.
Fehlerkorrekturen
- Aktualisiert zur Unterstützung von Compose Material 1.1.0-rc03
Version 1.1.0-rc02
16. Dezember 2021
androidx.compose.compiler:compiler:1.1.0-rc02
wird freigegeben. Version 1.1.0-rc02 enthält diese Commits.
Aktualisierungen von Abhängigkeiten
- „Compose Compiler
1.1.0-rc02
“ ist mit Kotlin-1.6.10
kompatibel.
Version 1.1.0-rc01
15. Dezember 2021
androidx.compose.compiler:compiler:1.1.0-rc01
wird freigegeben. Version 1.1.0-rc01 enthält diese Commits.
Abhängigkeitsänderungen
- „Compose Compiler
1.1.0-rc01
“ ist mit Kotlin-1.6.0
kompatibel. Ein kompatibler
1.6.10
-Build ist über androidx.dev-SNAPSHOTs mitbuildId
8003490 verfügbar. Mit dem folgenden Abhängigkeits-Snippet werden SNAPSHOTs für den Compose-Compiler konfiguriert:Fügen Sie der Stammdatei
build.gradle
Ihres Projekts das folgende Snippet hinzu:buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
Fügen Sie der Datei
build.gradle
für Ihre Anwendung oder Ihr Modul, das Compose verwendet, das folgende Snippet hinzu:android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
Version 1.1.0-beta04
1. Dezember 2021
androidx.compose.compiler:compiler:1.1.0-beta04
wird freigegeben. Version 1.1.0-beta04 enthält diese Commits.
Neue Funktionen
- Für Kotlin-Kompatibilität aktualisiert
1.6.0
Version 1.1.0-beta03
17. November 2021
androidx.compose.compiler:compiler:1.1.0-beta03
wird freigegeben. Version 1.1.0-beta03 enthält diese Commits.
Version 1.1.0-beta02
3. November 2021
androidx.compose.compiler:compiler:1.1.0-beta02
wird freigegeben. Version 1.1.0-beta02 enthält diese Commits.
Version 1.1.0-beta01
27. Oktober 2021
androidx.compose.compiler:compiler:1.1.0-beta01
wird freigegeben. Version 1.1.0-beta01 enthält diese Commits.
Version 1.1.0-alpha06
13. Oktober 2021
androidx.compose.compiler:compiler:1.1.0-alpha06
wird freigegeben. Version 1.1.0-alpha06 enthält diese Commits.
Version 1.1.0-alpha05
29. September 2021
androidx.compose.compiler:compiler:1.1.0-alpha05
wird freigegeben. Version 1.1.0-alpha05 enthält diese Commits.
Version 1.1.0-alpha04
15. September 2021
androidx.compose.compiler:compiler:1.1.0-alpha04
wird freigegeben. Version 1.1.0-alpha04 enthält diese Commits.
Version 1.1.0-alpha03
1. September 2021
androidx.compose.compiler:compiler:1.1.0-alpha03
wird freigegeben. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Der Compose-Compiler unterstützt jetzt ältere Versionen der Compose-Laufzeit (1.0). Vor dieser Änderung war der Compose-Compiler nur mit der Compose-Laufzeit derselben oder einer höheren Version kompatibel. Nach dieser Änderung ist der Compose-Compiler mit einer älteren Version der Compose-Laufzeit (1.0) kompatibel. (aosp/1796968)
- Aktualisierung von „Compose“-
1.1.0-alpha03
auf eine Abhängigkeit von Kotlin-1.5.30
wurde aktualisiert. (I74545)
Version 1.1.0-alpha02
18. August 2021
androidx.compose.compiler:compiler:1.1.0-alpha02
wird freigegeben. Version 1.1.0-alpha02 enthält diese Commits.
Version 1.1.0-alpha01
4. August 2021
androidx.compose.compiler:compiler:1.1.0-alpha01
wird freigegeben. Version 1.1.0-alpha01 enthält diese Commits.
Version 1.0
Version 1.0.5
3. November 2021
androidx.compose.compiler:compiler:1.0.5
wird freigegeben. Version 1.0.5 enthält diese Commits.
Fehlerkorrekturen
- Ein Absturz-Tracking für abgeleiteteStateOf-Instanzen wurde behoben. (aosp/1792247)
Version 1.0.4
13. Oktober 2021
androidx.compose.compiler:compiler:1.0.4
wird freigegeben. Version 1.0.4 enthält diese Commits.
Aktualisierungen von Abhängigkeiten
- Aktualisiert und hängt von Kotlin ab
1.5.31
Version 1.0.3
29. September 2021
androidx.compose.compiler:compiler:1.0.3
wird freigegeben. Version 1.0.3 enthält diese Commits.
Aktualisierungen von Abhängigkeiten
- Aktualisiert und hängt von Kotlin ab
1.5.30
Version 1.0.2
1. September 2021
androidx.compose.compiler:compiler:1.0.2
wird freigegeben. Version 1.0.2 enthält diese Commits.
Aktualisiert, um den Compose-Release 1.0.2
zu unterstützen. „Compose“ 1.0.2
ist weiterhin mit Kotlin 1.5.21
kompatibel.
Version 1.0.1
4. August 2021
androidx.compose.compiler:compiler:1.0.1
wird freigegeben. Version 1.0.1 enthält diese Commits.
Aktualisierungen von Abhängigkeiten
- Aktualisiert, sodass sie von Kotlin-
1.5.21
abhängig sind.
Version 1.0.0
28. Juli 2021
androidx.compose.compiler:compiler:1.0.0
wird freigegeben. Version 1.0.0 enthält diese Commits.
Hauptfunktionen von Version 1.0.0
Dies ist die erste stabile Version von „Compose“. Weitere Informationen finden Sie im offiziellen Blog zur Compose-Version.
Version 1.0.0-rc02
14. Juli 2021
androidx.compose.compiler:compiler:1.0.0-rc02
wird freigegeben. Version 1.0.0-rc02 enthält diese Commits.
Version 1.0.0-rc01
1. Juli 2021
androidx.compose.compiler:compiler:1.0.0-rc01
wird freigegeben. Version 1.0.0-rc01 enthält diese Commits.
Version 1.0.0-beta09
16. Juni 2021
androidx.compose.compiler:compiler:1.0.0-beta09
wird freigegeben. Version 1.0.0-beta09 enthält diese Commits.
Version 1.0.0-beta08
2. Juni 2021
androidx.compose.compiler:compiler:1.0.0-beta08
wird freigegeben. Version 1.0.0-beta08 enthält diese Commits.
Version 1.0.0-beta07
18. Mai 2021
androidx.compose.compiler:compiler:1.0.0-beta07
wird freigegeben. Version 1.0.0-beta07 enthält diese Commits.
Version 1.0.0-beta06
5. Mai 2021
androidx.compose.compiler:compiler:1.0.0-beta06
wird freigegeben. Version 1.0.0-beta06 enthält diese Commits.
Version 1.0.0-beta05
21. April 2021
androidx.compose.compiler:compiler:1.0.0-beta05
wird freigegeben. Version 1.0.0-beta05 enthält diese Commits.
Version 1.0.0-beta04
7. April 2021
androidx.compose.compiler:compiler:1.0.0-beta04
wird freigegeben. Version 1.0.0-beta04 enthält diese Commits.
Version 1.0.0-beta03
24. März 2021
androidx.compose.compiler:compiler:1.0.0-beta03
wird freigegeben. Version 1.0.0-beta03 enthält diese Commits.
Version 1.0.0-beta02
10. März 2021
androidx.compose.compiler:compiler:1.0.0-beta02
wird freigegeben. Version 1.0.0-beta02 enthält diese Commits.
Version 1.0.0-beta01
24. Februar 2021
androidx.compose.compiler:compiler:1.0.0-beta01
wird freigegeben. Version 1.0.0-beta01 enthält diese Commits.
Dies ist die erste Version der Betaversion von Compose 1.0.0.
Version 1.0.0-alpha12
10. Februar 2021
androidx.compose.compiler:compiler:1.0.0-alpha12
wird freigegeben. Version 1.0.0-alpha12 enthält diese Commits.
Version 1.0.0-alpha11
28. Januar 2021
androidx.compose.compiler:compiler:1.0.0-alpha11
wird freigegeben. Version 1.0.0-alpha11 enthält diese Commits.
Version 1.0.0-alpha10
13. Januar 2021
androidx.compose.compiler:compiler:1.0.0-alpha10
wird freigegeben. Version 1.0.0-alpha10 enthält diese Commits.
Version 1.0.0-alpha09
16. Dezember 2020
androidx.compose.compiler:compiler:1.0.0-alpha09
wird freigegeben. Version 1.0.0-alpha09 enthält diese Commits.
Version 1.0.0-alpha08
2. Dezember 2020
androidx.compose.compiler:compiler:1.0.0-alpha08
wird freigegeben. Version 1.0.0-alpha08 enthält diese Commits.
Version 1.0.0-alpha07
11. November 2020
androidx.compose.compiler:compiler:1.0.0-alpha07
wird freigegeben. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Stabilitätsinferenz und -verbreitung. Das Compose Compiler-Plug-in analysiert die kompilierten Typen, um festzustellen, ob es für bestimmte Optimierungen durch die Laufzeit infrage kommt. Dieses abgeleitete Ergebnis wird dann als Metadaten in der Klasse synthetisiert, damit es vom Compiler in anderen Modulen verwendet wird. Darüber hinaus wird das Laufzeitergebnis dieser Inferenzen in Metadaten übergeben, die während der Zusammensetzung an zusammensetzbare Aufrufe übergeben werden. Dies erforderte ein anderes Metadatenprotokoll für zusammensetzbare Funktionen, was bedeutet, dass zusammensetzbare Funktionen, die mit dem Compiler alpha07 kompiliert wurden, nicht binär kompatibel mit zusammensetzbaren Funktionen sind, die mit einer früheren Compiler-Version kompiliert wurden. (aosp/1431988)
Version 1.0.0-alpha06
28. Oktober 2020
androidx.compose.compiler:compiler:1.0.0-alpha06
wird freigegeben. Version 1.0.0-alpha06 enthält diese Commits.
Version 1.0.0-alpha05
14. Oktober 2020
androidx.compose.compiler:compiler:1.0.0-alpha05
wird freigegeben. Version 1.0.0-alpha05 enthält diese Commits.
Version 1.0.0-alpha04
1. Oktober 2020
androidx.compose.compiler:compiler:1.0.0-alpha04
wird freigegeben. Version 1.0.0-alpha04 enthält diese Commits.
androidx.compose:compose-compiler
wurde in androidx.compose.compiler:compiler
refaktoriert.
Dies ist der erste Release in der neuen Gruppe.