Flutter News | Grudzień 2024

Rok powoli zbliża się ku końcowi, ale społeczność skupiona wokół Fluttera nie zwalnia tempa. Wraz z nową wersją 3.27 dostajemy więcej rozwiązań, które poprawiają wydajność aplikacji.
Ostatnie zmiany, takie jak wyczekiwany domyślny Impeller na Androidzie, ulepszone renderowanie na iOS i ustawienie Swift Package Managera jako domyślnego dostawcy wtyczek, powinny ułatwić pracę programistów.
Zobaczmy, na co warto zwrócić szczególną uwagę.
Lepsze renderowanie grafik i szybsza obsługa buildów na iOS
- Swift Package Manager (SPM) stał się rekomendowanym systemem zarządzającym zależnościami (ang. dependecy manager) dzięki ulepszonej integracji z Xcode, która umożliwia szybsze przetwarzanie buildów. To oznacza też odejście od CocoaPods i łatwiejszą instalację Fluttera. Flutterowe wtyczki są teraz dostępne pośród innych paczek Swifta.
- Silnik Impeller już od jakiegoś czasu odgrywał ważną rolę na iOS, ale w wersji 3.27 dostajemy więcej rozwiązań poprawiających wydajność, takich jak lepsza obsługa złożonych animacji i renderowanie grafik (w przypadku iOS 16).
Impeller, pełnoekranowy layout i wsparcie dla buildów w Kotlinie na Androidzie
- Flutter wkracza w nową erę na Androidzie – domyślnym silnikiem graficznym nie jest już Skia a Impeller. To rozwiązanie powinno przyspieszyć renderowanie i sprawić, że będzie ono płynniejsze, nawet w przypadku animacji 3D. Impeller optymalizuje wykorzystanie zasobów GPI, jest dokładniejszy i bardziej stabilny niż Skia. Posługiwanie się Skią może powodować różne problemy z wydajnością, w zależności od urządzenia. Wybór Impellera jako głównego silnika rozwiązuje ten problem.
- Czasem chcemy wyświetlać pełnoekranowy layout (tzw. edge-to-edge). Było to kiedyś problematyczne we flutterowych aplikacjach. Na szczęście teraz mamy wsparcie dla Androida 15. Treści można będzie domyślnie wyświetlać w układzie pełnoekranowym, dlatego jeśli Twoim docelowym SDK jest 35 lub wyższy poziom, wsparcie takich layoutów jest niezbędne.
- Najnowsza wersja Fluttera na Androida oferuje wsparcie dla buildów w Kotlinie. Zamiast bazujących na języku Groovy skryptów Gradle (build.gradle), programiści mogą teraz opcjonalnie używać skryptów opartych na Kotlinie (build.gradle.kts).
Zmiany w widżetach
Tworzenie UI we Flutterze staje się prostsze w wersji 3.27 dzięki nowym i ulepszonym widżetom Cupertino.
- Pojawiło się nowe API dla CupertinoNavigationBar, które pozwala z łatwością dostosowywać umiejscowienie tytułu i przycisku akcji.
- Teraz możemy implementować ulepszone animacje w aplikacjach na iOS dzięki wsparciu CupertinoDatePicker.
- Jest też coś dla programistów aplikacji webowych. SelectionArea oferuje wsparcie dla gestu Shift+Click, więc użytkownicy mogą zaznaczyć część tekstu i umiejscowić go w pozycji, którą wybierają poprzez kliknięcie.
Większa wydajność rozwiązań webowych
- Flutter może teraz szybciej renderować aktualizacje UI dzięki zoptymalizowaniu CanvasKit i renderera HTML.
- Wersja 3.27 wspiera lazy loading obrazów, fontów i innych assetów, więc nie ładują się automatycznie, gdy nie są potrzebne.
- Ostatnia odsłona Fluttera wprowadza ulepszoną obsługę zdarzeń dotyku i myszki na rozwiązaniach webowych. To krok w stronę lepszego UX.
Te nowe i zaktualizowane funkcje powinny zoptymalizować zadania związane z rozwojem aplikacji i sprawić, że Twoja praca stanie się bardziej efektywna. Jeśli masz jakieś pytania dotyczące Fluttera, daj nam znać!