Kompilator tworzenia

Przekształć funkcje @Composable i włącz optymalizacje za pomocą wtyczki kompilatora Kotlin.
Najnowsza aktualizacja Wersja stabilna Kandydat do publikacji Wersja Beta Wersja alfa
14 maja 2024 r. 1.5.14 - - -

Struktura

Tworzenie stanowi połączenie 7 identyfikatorów grupy Maven w usłudze androidx. Każda grupa zawiera wybrany podzbiór funkcji z własnym zestawem informacji o wersjach.

W tej tabeli opisano grupy i linki do poszczególnych zestawów informacji o wersji.

GrupaOpis
compose.animation,Twórz animacje w aplikacjach Jetpack Compose, aby zwiększyć wygodę użytkowników.
compose.buildr,Przekształć funkcje @Composable i włącz optymalizacje za pomocą wtyczki kompilatora Kotlin.
compose.foundationPisz aplikacje Jetpack Compose, korzystając z gotowych elementów składowych i rozszerzaj podstawy do tworzenia własnych elementów systemu.
compose.material,Twórz interfejsy użytkownika Jetpack Compose z gotowymi do użycia komponentami Material Design. Jest to punkt wejścia wyższego poziomu Compose, zaprojektowany z myślą o dostarczaniu komponentów pasujących do tych opisanych na stronie www.material.io.
compose.material3,Twórz interfejsy użytkownika Jetpack Compose za pomocą komponentów Material Design 3, czyli nowej ewolucji Material Design. Material 3 zawiera zaktualizowane motywy i komponenty oraz funkcje personalizacji Material You, takie jak dynamiczny kolor. Został zaprojektowany tak, aby zachować spójność z nowym stylem wizualnym i interfejsem systemu Androida 12.
compose.runtime,Podstawowe elementy modelu programowania i zarządzania stanem w usłudze Compose, a także podstawowe środowisko wykonawcze, na które ma być kierowana wtyczka Compose Compiler.
compose.ui;Podstawowe komponenty interfejsu tworzenia wiadomości niezbędne do interakcji z urządzeniem, w tym układ, rysowanie i wprowadzanie tekstu.

Deklarowanie zależności

Aby dodać zależność od Compose, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Google Maven.

W pliku build.gradle aplikacji lub modułu dodaj zależności artefaktów, których potrzebujesz:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "19"
    }
}

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli znajdziesz nowe wydania lub masz pomysły na ulepszenie tej biblioteki. Zanim utworzysz nową bibliotekę, przejrzyj problemy z tą biblioteką. Możesz oddać głos w ramach istniejącego problemu, klikając przycisk gwiazdki.

Utwórz nowy numer

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Wersja 1.5

Wersja 1.5.14

14 maja 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.14 i androidx.compose.compiler:compiler-hosted:1.5.14. Wersja 1.5.14 zawiera te zatwierdzenia.

Ta wersja kompilatora jest kierowana na wersję 1.9.24 Kotlin.

Poprawki błędów

  • Upewnij się, że treść wbudowana jest widoczna, gdy informacje o źródle są wyłączone (Idddb8).

Wersja 1.5.13

1 maja 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.13 i androidx.compose.compiler:compiler-hosted:1.5.13. Wersja 1.5.13 zawiera te zatwierdzenia.

Nowe funkcje

  • Intensywne pomijanie nie jest już uznawane za eksperymentalne i można je bezpiecznie stosować w środowisku produkcyjnym. Stanie się ono domyślnym działaniem w kolejnej wersji. (I6c8c4)

Poprawki błędów

  • Popraw zgodność binarną funkcji @Composable z parametrami klasy wartości, które mają wartość domyślną i otaczają wartość inną niż podstawowa. (I89465)
  • Poprawki kodu JS i natywnej kompilacji z komponowania wieloplatformowego na wyższym poziomie. Pełne informacje znajdziesz w powyższym zakresie zatwierdzeń.

Wersja 1.5.12

17 kwietnia 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.12 i androidx.compose.compiler:compiler-hosted:1.5.12. Wersja 1.5.12 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono problem z kompilacją przyrostową w Kotlin w wersji 1.9.23. (Ifca55)
  • Popraw typy niedopuszczające wartości null w parametrach wartości w klasach wbudowanych, które nie są podstawowe. (Ie6bb5)

Wersja 1.5.11

20 marca 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.11 i androidx.compose.compiler:compiler-hosted:1.5.11. Wersja 1.5.11 zawiera te zatwierdzenia.

Notes

  • Począwszy od tej wersji kompilator będzie teraz wywoływał metodę startReplaceGroup zamiast startReplacableGroup, gdy moduł został skompilowany ze środowiskiem wykonawczym zawierającym tę metodę. Usługa startReplaceGroup została wprowadzona w środowisku wykonawczym w środowisku wykonawczym tworzenia 1.7.0-alpha03. Wywołania startRestartGroup są generowane tylko w przypadku kierowania w wersji 1.7.0-alpha03 lub nowszej środowiska wykonawczego.

  • Wywołanie metody startReplaceGroup zamiast startReplaceableGroup umożliwia środowisko wykonawcze skuteczniejsze wykrywanie zmian, ale może wpłynąć na kolejność, w jakiej zmiany są wykrywane przez Composer i wysyłane do Applier. Może to spowodować niewielkie zmiany w działaniu, jeśli funkcja Applier zależy od kolejności wykrycia tych operacji.

Nowe funkcje

  • Obsługa Kotlin 1.9.23

Poprawki błędów

  • Popraw zagnieżdżone zewnętrzne typy ogólne, które są wywnioskowane jako niestabilne. (I3437f, b/327643787)
  • Obsługa wielu plików konfiguracji stabilności. (I8db14, b/325326744)
  • Kompilator tworzenia wiadomości prawidłowo przekształca zastąpione funkcje, rekurencyjnie przechodząc przez klasy/zastąpienia podstawowe. (I2c9f9, b/316196500)
  • Upewnij się, że zapamiętywanie odwołań do funkcji nie próbuje przechwytywać niejawnych elementów nadrzędnych lokalnych deklaracji, jeśli nie są one używane bezpośrednio. (Ib1267)
  • Poprawianie generowania kodu dla kompozycyjnej, wielorzędowej funkcji lambda (trudno napotkać ten błąd bez włączonej opcji „nonPomińpingGroupOptimization”). (Icb2fd, b/325502738)

Wersja 1.5.10

21 lutego 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.10 i androidx.compose.compiler:compiler-hosted:1.5.10. Wersja 1.5.10 zawiera te zatwierdzenia.

Poprawki błędów

  • Obsługuj aktywne literały w blokach init. (b/320397488)
  • Użyj parametru dyspozytora, aby sprawdzić, czy funkcja należy do klasy lokalnej (b/323123439)

Wersja 1.5.9

7 lutego 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.9 i androidx.compose.compiler:compiler-hosted:1.5.9. Wersja 1.5.9 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawianie wywołań kompozycyjnych w anonimowym inicjatorze obiektów. (b/320261458, 96315c)
  • Zliczaj rekurencyjne deklaracje lokalne jako zapisy. (b/318745941, e7b4b0)
  • Poprawiono wewnętrzne zapamiętywanie zmian związanych z odwołaniami do metod Java, wymuszając stosowanie ciągu .changed w przypadku typów funkcji z wbudowaną zapamiętywaniem. (b/319810819, 77128e)
  • Dodaliśmy eksperymentalną optymalizację, która usuwa grupy wokół funkcji, których nie można pominąć, np. tych oznaczonych bezpośrednio jako @NonSkippableComposable, oraz funkcji, których nie można pominąć, takich jak funkcje wbudowane i funkcje zwracające wartość inną niż jednostka, np. remember.
  • Tę optymalizację można włączyć, przekazując do kompilatora Kotlin opcję wtyczki -P plugin:androidx.compose.compiler.plugins.kotlin:nonSkippingGroupOptimization=true. (I1688f)

Wersja 1.5.8

10 stycznia 2024 r.

Opublikowano androidx.compose.compiler:compiler:1.5.8 i androidx.compose.compiler:compiler-hosted:1.5.8. Wersja 1.5.8 zawiera te zatwierdzenia.

Nowe funkcje

  • Obsługa Kotlin 1.9.22

Poprawki błędów

  • Poprawiono błąd, który powodował, że kompilacja Compose Compiler zgłaszała wyjątki, gdy usługa została utworzona w języku Java21. Ten błąd nie dotyczył użytkowników korzystających z kompilatora tworzenia wiadomości od Google Maven (czyli samodzielnego tworzenia tego narzędzia). (b/316644294)
  • Poprawiono błąd, który powodował zgłaszanie błędu COMPOSABLE_EXPECTED w przypadku niektórych elementów wywołujących niewbudowane funkcje lambda. (b/309364913)
  • Dodanie błędu kompilacji w przypadku parametrów domyślnych w funkcjach otwartych (wcześniej było to możliwe tylko w przypadku funkcji abstrakcyjnych). Tworzenie nie obsługuje obecnie zastępowania parametrów domyślnych z funkcji zastępowanych, a zastąpienie funkcji kompozycyjnej parametrami domyślnymi nie powiodło się w czasie działania. Użyj funkcji @Suppress("ABSTRACT_COMPOSABLE_DEFAULT_PARAMETER_VALUE") do pominięcia, ale pamiętaj, że zastąpienie takiej funkcji bez podania wartości domyślnej spowoduje awarię w czasie działania (b/317490247).
  • Naprawiliśmy błąd w wewnętrznej pamięci, który uniemożliwiał prawidłowe rozpowszechnianie wartości. (b/316327367)

Wkład z zewnątrz

Wersja 1.5.7

19 grudnia 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.7 i androidx.compose.compiler:compiler-hosted:1.5.7. Wersja 1.5.7 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono awarię tworzenia wiadomości, gdy parametr klucza remember() wywołuje funkcję kompozycyjną (b/315855015)
  • Naprawiono awarię środowiska wykonawczego tworzenia wiadomości podczas korzystania z dodatku return@. (b/315821171)
  • Unikaj używania w kluczach pamięci ścieżek bezwzględnych, co umożliwia lepsze wykorzystanie pamięci podręcznej kompilacji. (b/313937484)

Wersja 1.5.6

6 grudnia 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.6 i androidx.compose.compiler:compiler-hosted:1.5.6. Wersja 1.5.6 zawiera te zatwierdzenia.

Nowe funkcje

  • Obsługa Kotlin 1.9.21

Poprawki błędów

  • Włącz wewnętrzne zapamiętywanie – przekształcenie kompilatora w tekście, które jest zapamiętywane we wtyczce kompilatora Compose, i zastępuje porównania .equals porównaniami int meta parametrów dla stabilnych parametrów. Dzięki temu jest używanych mniej przedziałów i mniej porównań przeprowadzanych w czasie działania. Tę opcję można wyłączyć, podając argument wtyczki kompilacji: -P plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=false. (If675f)
  • Popraw zapamiętywanie odniesień do funkcji i argumentów w tekście. (b/312738720)
  • Uzyskiwanie informacji o grupach po wyjściu z wywołania funkcji wbudowanej (b/312242547)

Wkład z zewnątrz

  • Naprawiono awarię środowiska wykonawczego k/native i k/wasm z powodu braku instrukcji zwrotnej w funkcjach kompozycyjnych, gdy jest to ostatnia instrukcja i zwraca stałą wartość null (aosp/2835716)

Wersja 1.5.5

29 listopada 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.5 i androidx.compose.compiler:compiler-hosted:1.5.5. Wersja 1.5.5 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawia awarię podczas wyszukiwania zastąpionych typów kompozycyjnych (Ib6d2c, b/297665426)
    • Dodaj parametr stabilityConfigurationPath do znanych parametrów (wcześniej błąd uniemożliwiał użycie flagi pliku konfiguracji). (b/309765121)
    • Poprawki powiadomień (I081d1, I4d7bf)
    • Popraw kompozycję przez uwzględnienie niepewnego stanu parametru w pamięci wewnętrznej (b/263402091)
    • Poprawianie informacji o wierszu debugowania dotyczących pamięci wewnętrznej (Ic8cf5)
    • Naprawa awarii (nie udało się zmniejszyć zakresu IR) podczas wyszukiwania zastępowanych typów kompozycyjnych podczas kompilacji (b/297665426)

Wkład z zewnątrz

  • Zapisz odwołania do funkcji stabilnej za pomocą argumentów (I4d7bf, b/302680514)

Wersja 1.5.4

7 listopada 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.4 i androidx.compose.compiler:compiler-hosted:1.5.4. Wersja 1.5.4 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Narzędzie Compose Compiler jest teraz zgodne z Kotlin w wersji 1.9.20

Nowe funkcje

  • Dodaj opcję eksperymentalną, aby włączyć tryb silnego pomijania. Silny tryb pomijania umożliwia pominięcie elementów kompozycyjnych z niestabilnymi parametrami. Dodatkowo zapamiętywane są lambda z niestabilnym zapisem. Ta funkcja jest w wersji eksperymentalnej i nie jest gotowa do użytku w środowisku produkcyjnym. (22421e)
  • Dodaj flagę, aby włączyć lub wyłączyć informacje o źródle i śledzeniu. (4d45f09)
  • Zezwalaj na konfigurowanie stabilności klas zewnętrznych za pomocą pliku konfiguracji. (If40eb)

Poprawki błędów

  • Naprawa przedwczesnego wyjścia z funkcji kompozycyjnych, gdy informacje o źródle nie są zbierane. (FE6267)
  • Popraw ciąg dalszy w funkcjach kompozycyjnych. (948362)
  • Poprawiono rozpoznawanie w przypadku wywoływania funkcji kompozycyjnych z poziomu wywołania funkcji z wieloma przeciążeniami zależnymi od typu zwracanego wyrażenia. (2d36d0)
  • Napraw logowanie, gdy odwołanie do funkcji nie ma odbiorcy dyspozytora. (fc2326)
  • Popraw niezapisanych zmian, które w niektórych sytuacjach uniemożliwiały zmianę składu lambda. (db3699)
  • Popraw stabilność podczas stopniowego kompilowania danych z modułów. (7d3e127)
  • Ogranicz zakres do @DontMemoize tylko do wyrażeń lambda. (7a7fa52)
  • Napraw zmienne, które nie są prawidłowo przechwytywane, gdy używasz zabawnego interfejsu funkcji kompozycyjnej jako funkcji lambda. (5ae3556)

Wkład z zewnątrz

  • Użyj symbolu równości strukturalnej do porównania wartości liczbowych i wartości null (c612a0)

Wersja 1.5.3

29 sierpnia 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.3, androidx.compose.compiler:compiler-daemon:1.5.3 i androidx.compose.compiler:compiler-hosted:1.5.3. Wersja 1.5.3 zawiera te zatwierdzenia.

Aktualizacja zależności

  • Kotlin – wersja 1.9.10

Wersja 1.5.2

23 sierpnia 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.2, androidx.compose.compiler:compiler-daemon:1.5.2 i androidx.compose.compiler:compiler-hosted:1.5.2. Wersja 1.5.2 zawiera te zatwierdzenia.

Poprawki błędów

  • Wstaw numery wierszy wyrażeń zwrotnych w stale zwracanych funkcjach kompozycyjnych. (I42d89)
  • Usunięto wyciek pamięci spowodowany przełączeniem się na nowy punkt wejścia wtyczki kompilatora. (4f0a101).
  • Zatrzymaj przekształcanie zabawnych interfejsów, które nie są kompozycyjne, w kompilatorze Compose. Dzięki temu zabawne interfejsy są obsługiwane w taki sam sposób jak lambda, z regułami zapamiętywania. (28b3ce9)
  • Użyj typu argumentu vararg do wnioskowania stabilności w witrynie wywołującej. (bc83645)

Wersja 1.5.1

26 lipca 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1 i androidx.compose.compiler:compiler-hosted:1.5.1. Wersja 1.5.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono znaczniki zdarzeń śledzenia kompozycji w funkcjach @ReadOnlyComposable z wczesnymi zwrotami, które powodowały uszkodzenie logu czasu.

Wersja 1.5.0

18 lipca 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.5.0, androidx.compose.compiler:compiler-daemon:1.5.0 i androidx.compose.compiler:compiler-hosted:1.5.0. Wersja 1.5.0 zawiera te zatwierdzenia.

Eksperymentalna pomoc dla szkół podstawowych i średnich

  • Kompilator Composer w wersji 1.5.0 zapewnia eksperymentalną obsługę kompilatora K2. Niektóre funkcje tworzenia wiadomości nie są jeszcze obsługiwane w K2. Uwzględnimy je w kolejnych wersjach kompilatora.

Ważne zmiany od wersji 1.4.0

  • Kotlin został zaktualizowany do wersji 1.9.0.
  • Argumenty nazwane dla @Composable wywołań lambda zostały wycofane. Ta funkcja korzysta z wewnętrznych interfejsów API kompilatora i nie będzie obsługiwana przez K2.
  • Dodano diagnostykę w celu weryfikacji adnotacji @Composable w przypadku oczekiwanych/rzeczywistych połączeń. Obie te deklaracje powinny mieć pasujące adnotacje.

Wersja 1.4.8

Wersja 1.4.8

28 czerwca 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.4.8, androidx.compose.compiler:compiler-daemon:1.4.8 i androidx.compose.compiler:compiler-hosted:1.4.8. Wersja 1.4.8 zawiera te zatwierdzenia.

Nowe funkcje

  • Docelowa wersja kompilatora Kotlin jest obniżona do 1.8.22.

Poprawki błędów

  • Poprawiliśmy komunikat o błędzie dotyczący @Composable zastąpień. Teraz prawidłowo wskazuje na niezgodność adnotacji.
  • Ostrzegaj o nadmiarowych adnotacjach @Composable w wbudowanych elementach lambda, które nie powinny być oznaczone jako kompozycyjne. Ta funkcja nie będzie obsługiwana przez kompilator K2.

Wersja 1.4.7

Wersja 1.4.7

3 maja 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.4.7, androidx.compose.compiler:compiler-daemon:1.4.7 i androidx.compose.compiler:compiler-hosted:1.4.7. Wersja 1.4.7 zawiera te zatwierdzenia.

Nowe funkcje

  • Obsługa Kotlin 1.8.21
  • Dodaliśmy podstawowe wersje interfejsu API State, co umożliwia śledzenie wartości Int, Long, Float i Double w obiektach State bez nałożenia kar za autobox.

Wersja 1.4.6

Wersja 1.4.6

19 kwietnia 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.4.6, androidx.compose.compiler:compiler-daemon:1.4.6 i androidx.compose.compiler:compiler-hosted:1.4.6. Wersja 1.4.6 zawiera te zatwierdzenia.

Poprawki błędów

  • Kompilator tworzenia wiadomości bazuje teraz na języku Java11 (zamiast języka Java17, które jest wymagane przez kompilator Composer w wersji 1.4.5), co zapewnia lepszą obsługę użytkowników, którzy wciąż korzystają ze starszych wersji środowiska Java.

Wersja 1.4.5

Wersja 1.4.5

12 kwietnia 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.4.5, androidx.compose.compiler:compiler-daemon:1.4.5 i androidx.compose.compiler:compiler-hosted:1.4.5. Wersja 1.4.5 zawiera te zatwierdzenia.

UWAGA Ta kompilacja Compose Compiler wymaga, aby w środowisku kompilacji była używany język Java w wersji 17 lub nowszej. Na podstawie opinii użytkowników wycofamy to wymaganie z wersji Java 11 i wprowadzimy ją w kolejnej wersji (1.4.6), aby zapewnić lepszą obsługę użytkowników korzystających ze starszych wersji Javy.

Nowe funkcje

Obsługa Kotlin 1.8.20

Poprawki błędów

  • Wprowadź wymóg zastępowania operatora wywoływania kompozycyjnego do klas i interfejsów, które rozszerzają interfejsy lambda o odpowiednie adnotacje.f8f2f78a1a769c2373201027f12700e772e4e97e
  • Umożliwia korzystanie z adnotacji @Composable w operatorze getValue i oznacza wygenerowaną metodę getter dla funkcji kompozycyjnej w podczerwieni jako kompozycję, aby zapewnić jej późniejszą prawidłową transformację. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40
  • Napraw wewnętrzny błąd środowiska wykonawczego tworzenia (oczekiwano, że wywołanie applyChanges() powinno być wywoływane) w przypadku funkcji wbudowanych.b/274786923
  • Unikaj rejestrowania ProcessCancelledException, ponieważ ma ono szczególne znaczenie w IDE.b/274725600

Wkład z zewnątrz

Wersja 1.4.4

Wersja 1.4.4

22 marca 2023 r.

Opublikowano androidx.compose.compiler:compiler:1.4.4, androidx.compose.compiler:compiler-daemon:1.4.4 i androidx.compose.compiler:compiler-hosted:1.4.4. Wersja 1.4.4 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawianie zwracanych w tekście funkcji lambda funkcji kompozycyjnych (72172b)
  • Zezwalaj funkcjom kompozycyjnym na zwracanie funkcji Nothing (nie generuj błędu podczas korzystania z funkcji TODO w funkcji kompozycyjnej) 3aea8d

Wersja 1.4.3

Wersja 1.4.3

22 lutego 2023 roku

Aplikacja androidx.compose.compiler:compiler:1.4.3 została zwolniona. Wersja 1.4.3 zawiera te zatwierdzenia.

Poprawki błędów

  • Poprawia wywołania warunkowe w argumentach wywołań kompozycyjnych (Ie93edb)

Wersja 1.4.2

Wersja 1.4.2

8 lutego 2023 r.

Aplikacja androidx.compose.compiler:compiler:1.4.2 została zwolniona. Wersja 1.4.2 zawiera te zatwierdzenia.

Nowe funkcje

  • Obsługa Kotlin 1.8.10

Poprawki błędów

  • Dodaj grupy w treści niemożliwych do pominięcia lambda, aby uniknąć błędu zmiany kompozycji.

Wersja 1.4.1

Wersja 1.4.1

8 lutego 2023 r.

Aplikacja androidx.compose.compiler:compiler:1.4.1 została zwolniona. Wersja 1.4.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Wyłącz wewnętrzną optymalizację zapamiętywania, która wcześniej wprowadziła kilka błędów generowania kodu.
  • Wyłącz wewnętrzną pamięć w funkcjach zawierających parametr vararg.
  • Naprawianie błędu pomijania w elementach kompozycyjnych z użyciem parametrów domyślnych
  • Dodaj komunikat o błędzie defensywnej kreacji zastępczej, jeśli nie uda się sprawdzić zgodności z Kotlin.
  • Usuń pomijanie kodu z wbudowanej funkcji lambda

Wersja 1.4.0

17 stycznia 2023 r.

Aplikacja androidx.compose.compiler:compiler:1.4.0 została zwolniona. Wersja 1.4.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.3.0

  • Obsługa Kotlin 1.8.0
  • Wyłączono wewnętrzne zapamiętywanie
  • Klasa danych narzędzia interfejsu Group ma teraz pole isInline, które wskazuje, czy grupa jest przeznaczona na wywołanie wbudowanej funkcji kompozycyjnej. Jeśli isInline to true, wywołanie dotyczy wbudowanej funkcji kompozycyjnej. Wartość może jednak mieć wartość false dla wywołań wbudowanych funkcji kompozycyjnych pochodzących z modułów skompilowanych z wersją wtyczki kompilatora compose, która nie generuje informacji o funkcji wbudowanej.
  • Aplikacja ImmutableCollection i jej trwały odpowiednik jest teraz uważany za stabilne.
  • Nowy parametr etykiety narzędzia w: AnimatedContent
  • Naprawiony błąd generowania kodu w przypadku wbudowanej funkcji lambda

Wersja 1.4.0-alfa02

11 listopada 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.4.0-alpha02 została zwolniona. Wersja 1.4.0-alpha02 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodano obsługę Kotlin 1.7.21

Wersja 1.4.0-alfa01

9 listopada 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.4.0-alpha01 została zwolniona. Wersja 1.4.0-alpha01 zawiera te zatwierdzenia.

Poprawki błędów

  • Napraw możliwość wczesnego zwracania wartości z wbudowanych funkcji kompozycyjnych (b/255350755)
  • Naprawiono błąd obniżania w postaci elementu decoy, który uniemożliwiał obsługę Kotlin/JS w usłudze Compose (6a40f8).

Wersja 1.3

Wersja 1.3.2

4 października 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.3.2 została zwolniona. Wersja 1.3.2 zawiera te zatwierdzenia.

Nowa funkcja

  • Ta wersja zawiera aktualizację Kotlin do wersji 1.7.20.

Wersja 1.3.1

7 września 2022 roku

Aplikacja androidx.compose.compiler:compiler:1.3.1 została zwolniona. Wersja 1.3.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Poprawiono błąd IllegalStateException polegający na tym, że w pewnych okolicznościach funkcja kompilatora tworzenia wiadomości błędnie oznaczała typy jednostek jako kompozycyjne. (b/237863365)
  • W przypadku pomijania sprawdzania wersji kompilatora użytkownicy muszą teraz określić preferowaną wersję Kotlin (I9e5e2).

Wersja 1.3.0

10 sierpnia 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.3.0 została zwolniona. Wersja 1.3.0 zawiera te zatwierdzenia.

Wersja 1.3.0-rc02

3 sierpnia 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.3.0-rc02 została zwolniona. Wersja 1.3.0-rc02 zawiera te zatwierdzenia.

Wersja 1.3.0-rc01

27 lipca 2022 roku

Aplikacja androidx.compose.compiler:compiler:1.3.0-rc01 została zwolniona. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.

Wersja 1.3.0-beta01

20 lipca 2022 roku

Aplikacja androidx.compose.compiler:compiler:1.3.0-beta01 została zwolniona. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodano obsługę Kotlin 1.7.10

Wersja 1.2

Wersja 1.2.0

29 czerwca 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0 została zwolniona. Wersja 1.2.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.1.0

Wersja 1.2.0-rc02

22 czerwca 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-rc02 została zwolniona. Wersja 1.2.0-rc02 zawiera te zatwierdzenia.

Poprawki błędów

  • Usunięto generowanie kodu zdarzenia śledzenia kompozycyjnego (aosp/2127922)

Wersja 1.2.0-rc01

15 czerwca 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-rc01 została zwolniona. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.

Wersja 1.2.0-beta03

1 czerwca 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-beta03 została zwolniona. Wersja 1.2.0-beta03 zawiera te zatwierdzenia.

Wersja 1.2.0-beta02

18 maja 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-beta02 została zwolniona. Wersja 1.2.0-beta02 zawiera te zatwierdzenia.

Wersja 1.2.0-beta01

11 maja 2022 roku

Aplikacja androidx.compose.compiler:compiler:1.2.0-beta01 została zwolniona. Wersja 1.2.0-beta01 zawiera te zatwierdzenia.

  • To jest pierwsza wersja beta 1.2. Brak zmian od ostatniej wersji alfa.

Nowe funkcje

  • Dodano obsługę Kotlin 1.6.21

Wersja 1.2.0-alfa08

20 kwietnia 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha08 została zwolniona. Wersja 1.2.0-alpha08 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa07

6 kwietnia 2022 roku

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha07 została zwolniona. Wersja 1.2.0-alpha07 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa06

23 marca 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha06 została zwolniona. Wersja 1.2.0-alpha06 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa05

9 marca 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha05 została zwolniona. Wersja 1.2.0-alpha05 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa04

23 lutego 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha04 została zwolniona. Wersja 1.2.0-alpha04 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa03

9 lutego 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha03 została zwolniona. Wersja 1.2.0-alpha03 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa02

26 stycznia 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha02 została zwolniona. Wersja 1.2.0-alpha02 zawiera te zatwierdzenia.

Wersja 1.2.0-alfa01

12 stycznia 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.2.0-alpha01 została zwolniona. Wersja 1.2.0-alpha01 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodano obsługę Kotlin 1.6.10.

Wersja 1.1

Wersja 1.1.1

23 lutego 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.1.1 została zwolniona. Wersja 1.1.1 zawiera te zatwierdzenia.

Poprawki błędów

Wersja 1.1.0

9 lutego 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0 została zwolniona. Wersja 1.1.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.0.0

  • Stabilna obsługa efektu sygnalizowania końca przewijania w Androidzie 12.
  • Ulepszenia rozmiaru docelowych elementów dotykowych
  • Pamiętaj, że w przypadku interfejsu Compose 1.0 komponenty Material będą rozszerzały swoją przestrzeń układu, aby spełnić wytyczne dotyczące ułatwień dostępu w zakresie rozmiaru docelowego elementu dotykowego. Na przykład element dotykowy przycisku rozwinie się do minimalnego rozmiaru 48x48dp, nawet jeśli ustawisz jego mniejszy rozmiar. Dzięki temu interfejs Compose Material jest taki sam jak w przypadku komponentów Material Design, co zapewnia spójne zachowanie w przypadku łączenia widoków i tworzenia. Ta zmiana sprawi też, że gdy tworzysz interfejs z użyciem komponentów Compose Material, będą one spełnione minimalne wymagania dotyczące ułatwień dostępu w elementach dotykowych.
  • Stabilna obsługa Nawigacja Rail
  • Przekształcanie wielu wcześniej eksperymentalnych interfejsów API w stabilne
  • obsługa nowszych wersji Kotlin,

Wersja 1.1.0-rc03

26 stycznia 2022 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-rc03 została zwolniona. Wersja 1.1.0-rc03 zawiera te zatwierdzenia.

Poprawki błędów

  • Zaktualizowano do obsługi Material Design w wersji 1.1.0-rc03

Wersja 1.1.0-rc02

16 grudnia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-rc02 została zwolniona. Wersja 1.1.0-rc02 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Kompilator tworzenia wiadomości 1.1.0-rc02 jest zgodny z Kotlinem 1.6.10.

Wersja 1.1.0-rc01

15 grudnia 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.1.0-rc01 została zwolniona. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.

Zmiany zależności

  • Kompilator tworzenia wiadomości 1.1.0-rc01 jest zgodny z Kotlinem 1.6.0.
  • Zgodna kompilacja 1.6.10 jest dostępna w SNAPSHOT androidx.dev z numerem buildId 8003490. Ten fragment kodu zależności skonfiguruje zrzuty ekranu SNAPSHOT na potrzeby kompilatora tworzenia:

    Dodaj ten fragment kodu do głównego pliku build.gradle swojego projektu:

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' }
        }
    }
    

    Dodaj ten fragment kodu do pliku build.gradle swojej aplikacji lub modułu, który korzysta z funkcji Utwórz:

    android {
        composeOptions {
            kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT"
        }
    }
    

Wersja 1.1.0-beta04

Grudzień 1, 2021

Aplikacja androidx.compose.compiler:compiler:1.1.0-beta04 została zwolniona. Wersja 1.1.0-beta04 zawiera te zatwierdzenia.

Nowe funkcje

  • Zaktualizowano w celu zapewnienia zgodności z Kotlin 1.6.0

Wersja 1.1.0-beta03

17 listopada 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-beta03 została zwolniona. Wersja 1.1.0-beta03 zawiera te zatwierdzenia.

Wersja 1.1.0-beta02

3 listopada 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-beta02 została zwolniona. Wersja 1.1.0-beta02 zawiera te zatwierdzenia.

Wersja 1.1.0-beta01

27 października 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.1.0-beta01 została zwolniona. Wersja 1.1.0-beta01 zawiera te zatwierdzenia.

Wersja 1.1.0-alfa06

13 października 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-alpha06 została zwolniona. Wersja 1.1.0-alpha06 zawiera te zatwierdzenia.

Wersja 1.1.0-alfa05

29 września 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-alpha05 została zwolniona. Wersja 1.1.0-alpha05 zawiera te zatwierdzenia.

Wersja 1.1.0-alfa04

15 września 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-alpha04 została zwolniona. Wersja 1.1.0-alpha04 zawiera te zatwierdzenia.

Wersja 1.1.0-alfa03

1 września 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.1.0-alpha03 została zwolniona. Wersja 1.1.0-alpha03 zawiera te zatwierdzenia.

Nowe funkcje

  • Kompilator tworzenia wiadomości obsługuje teraz starsze wersje środowiska wykonawczego tworzenia wiadomości (1.0). Przed tą zmianą kompilator tworzenia wiadomości był zgodny tylko ze środowiskiem wykonawczym tworzenia w tej samej wersji lub nowszej. Po tej zmianie kompilator tworzenia wiadomości jest zgodny ze starszą wersją środowiska wykonawczego tworzenia wiadomości (1.0). (Aosp/1796968)
  • Zaktualizowano element Tworzenie 1.1.0-alpha03, aby bazował na Kotlin 1.5.30. (I74545)

Wersja 1.1.0-alfa02

18 sierpnia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-alpha02 została zwolniona. Wersja 1.1.0-alpha02 zawiera te zatwierdzenia.

Wersja 1.1.0-alfa01

4 sierpnia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.1.0-alpha01 została zwolniona. Wersja 1.1.0-alpha01 zawiera te zatwierdzenia.

Wersja 1.0

Wersja 1.0.5

3 listopada 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.5 została zwolniona. Wersja 1.0.5 zawiera te zatwierdzenia.

Poprawki błędów

  • Usunięto problem ze śledzeniem awarii w przypadku instancji pochodnej klasy. (Aosp/1792247)

Wersja 1.0.4

13 października 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.4 została zwolniona. Wersja 1.0.4 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Zaktualizowano w celu dopasowania do Kotlin 1.5.31

Wersja 1.0.3

29 września 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.3 została zwolniona. Wersja 1.0.3 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Zaktualizowano w celu dopasowania do Kotlin 1.5.30

Wersja 1.0.2

1 września 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.0.2 została zwolniona. Wersja 1.0.2 zawiera te zatwierdzenia.

Zaktualizowano, aby obsługiwać wersję 1.0.2 tworzenia wiadomości. Funkcja Utwórz 1.0.2 jest nadal zgodna z Kotlinem 1.5.21.

Wersja 1.0.1

4 sierpnia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.1 została zwolniona. Wersja 1.0.1 zawiera te zatwierdzenia.

Aktualizacje zależności

  • Zaktualizowano zgodnie z kotlinem 1.5.21.

Wersja 1.0.0

28 lipca 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0 została zwolniona. Wersja 1.0.0 zawiera te zatwierdzenia.

Główne funkcje wersji 1.0.0

To jest pierwsza stabilna wersja funkcji Compose. Więcej informacji znajdziesz na oficjalnym blogu dotyczącym wydania wiadomości.

Wersja 1.0.0-rc02

14 lipca 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0-rc02 została zwolniona. Wersja 1.0.0-rc02 zawiera te zatwierdzenia.

Wersja 1.0.0-rc01

1 lipca 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-rc01 została zwolniona. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.

Wersja 1.0.0-beta09

16 czerwca 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta09 została zwolniona. Wersja 1.0.0-beta09 zawiera te zatwierdzenia.

Wersja 1.0.0-beta08

2 czerwca 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta08 została zwolniona. Wersja 1.0.0-beta08 zawiera te zatwierdzenia.

Wersja 1.0.0-beta07

18 maja 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta07 została zwolniona. Wersja 1.0.0-beta07 zawiera te zatwierdzenia.

Wersja 1.0.0-beta06

5 maja 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta06 została zwolniona. Wersja 1.0.0-beta06 zawiera te zatwierdzenia.

Wersja 1.0.0-beta05

21 kwietnia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta05 została zwolniona. Wersja 1.0.0-beta05 zawiera te zatwierdzenia.

Wersja 1.0.0-beta04

7 kwietnia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta04 została zwolniona. Wersja 1.0.0-beta04 zawiera te zatwierdzenia.

Wersja 1.0.0-beta03

24 marca 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta03 została zwolniona. Wersja 1.0.0-beta03 zawiera te zatwierdzenia.

Wersja 1.0.0-beta02

10 marca 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta02 została zwolniona. Wersja 1.0.0-beta02 zawiera te zatwierdzenia.

Wersja 1.0.0-beta01

24 lutego 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-beta01 została zwolniona. Wersja 1.0.0-beta01 zawiera te zatwierdzenia.

To jest pierwsza wersja beta funkcji tworzenia wiadomości w wersji 1.0.0.

Wersja 1.0.0-alfa12

10 lutego 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha12 została zwolniona. Wersja 1.0.0-alpha12 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa11

28 stycznia 2021 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha11 została zwolniona. Wersja 1.0.0-alpha11 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa10

13 stycznia 2021 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha10 została zwolniona. Wersja 1.0.0-alpha10 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa09

16 grudnia 2020 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha09 została zwolniona. Wersja 1.0.0-alpha09 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa08

Grudzień 2, 2020

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha08 została zwolniona. Wersja 1.0.0-alpha08 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa07

11 listopada 2020 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha07 została zwolniona. Wersja 1.0.0-alpha07 zawiera te zatwierdzenia.

Nowe funkcje

  • Wnioskowanie i propagacja stabilności. Wtyczka Compose Compiler analizuje skompilowane typy, aby określić, czy kwalifikuje się do określonych optymalizacji w środowisku wykonawczym. Wynik ten jest następnie syntetyzowany jako metadane w klasie, która ma być używana przez kompilator w innych modułach. Co więcej, wynik tych wnioskowania w czasie działania jest przekazywany w metadanych przekazywanych do wywołań kompozycyjnych podczas kompozycji. Wymogło to zastosowanie innego protokołu metadanych dla funkcji kompozycyjnych. Oznacza to, że funkcje kompozycyjne skompilowane z kompilatora alfa07 nie będą zgodne z funkcjami kompozycyjnymi skompilowanymi z wcześniejszej wersji kompilatora. (Aosp/1431988)

Wersja 1.0.0-alfa06

28 października 2020 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha06 została zwolniona. Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa05

14 października 2020 r.

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha05 została zwolniona. Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.

Wersja 1.0.0-alfa04

1 października 2020 roku

Aplikacja androidx.compose.compiler:compiler:1.0.0-alpha04 została zwolniona. Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.

Przekształcono nazwę androidx.compose:compose-compiler na androidx.compose.compiler:compiler. To jest pierwsza wersja w nowej grupie.