Jetpack na Androida
Jetpack to pakiet bibliotek, które ułatwiają deweloperom stosowanie sprawdzonych metod, ograniczanie powtarzających się fragmentów kodu oraz pisanie kodu, który działa spójnie na różnych wersjach i urządzeniach Androida, dzięki czemu deweloperzy mogą się skupić na kodzie, który ich interesuje.
Jetpack Compose
Programowanie UI z użyciem funkcji Compose
Nowoczesny zestaw narzędzi do tworzenia natywnego interfejsu użytkownika, który pozwala uprościć i przyspieszyć tworzenie UI na Androidzie.
Dlaczego warto korzystać z Androida Jetpack?
Stosowanie sprawdzonych metod
Biblioteka Android Jetpack powstała z myślą o nowoczesnych metodach projektowania. Dzięki wbudowanej zgodności wstecznej biblioteki Androida Jetpack pozwalają na mniejszą liczbę awarii i mniej wycieków pamięci.
Wyeliminuj powtarzalny kod
Android Jetpack radzi sobie z uciążliwymi czynnościami, takimi jak zadania w tle, nawigacja i zarządzanie cyklem życia, dzięki czemu możesz skupić się na tym, co sprawia, że aplikacja jest tak cudowna.
Ogranicz fragmentację
Zmniejsz złożoność dzięki bibliotekom, które działają spójnie na różnych wersjach i urządzeniach z Androidem.
Biblioteki Jetpack Zobacz wszystkie biblioteki
* Popularne i często używane biblioteki są na początku listy
aktywność * | Korzystaj z kompozycyjnych interfejsów API utworzonych w oparciu o aktywność. |
appcompat * | Zezwala na dostęp do nowych interfejsów API w starszych wersjach API platformy (wiele z nich korzysta ze stylu Material Design). |
appsearch * | Twórz niestandardowe funkcje wyszukiwania w aplikacji dla użytkowników. |
kamera * | tworzenie aplikacji mobilnych aparatu, |
utwórz * | Interfejs użytkownika definiuje się programowo za pomocą funkcji kompozycyjnych, które opisują jego kształt i zależności od danych. |
databinding * | Powiąż komponenty interfejsu w układach ze źródłami danych w aplikacji za pomocą formatu deklaratywnego. |
fragment * | Podziel aplikację na kilka niezależnych ekranów hostowanych w określonej aktywności. |
hilt * | Rozszerz funkcje narzędzia Dagger Hilt, aby umożliwić wstrzykiwanie zależności określonych klas z bibliotek Androidax. |
cykl życia * | Twórz komponenty uwzględniające cykl życia, które mogą dostosowywać działanie w zależności od bieżącego stanu cyklu życia aktywności lub fragmentu. |
Komponenty Material Design * | Modułowe i konfigurowalne komponenty interfejsu Material Design na Androida. |
Nawigacja * | Twórz i organizuj interfejs w aplikacji, obsługuje precyzyjne linki i poruszaj się między ekranami. |
paging * | wczytywać dane na stronach i wyświetlać je w elemencie RecyclerView; |
pokój * | Tworzenie i przechowywanie danych trwałych w bazie danych SQLite oraz zarządzanie nimi. |
test * | Testuję na Androidzie. |
służbowy * | Planowanie i wykonywanie opartych na ograniczeniach zadań w tle z możliwością odroczenia. |
reklamy | Uzyskaj identyfikator wyświetlania reklam z Usługami Google Play lub bez nich. |
adnotacja | Udostępniaj metadane, aby ułatwić narzędziom i innym deweloperom zrozumienie kodu aplikacji. |
arch.core | Pomoc dla innych zależności Arch, w tym reguł testów JUnit, których można używać z LiveData. |
asynclayoutinflater, | Asynchronicznie zwiększaj układy, aby uniknąć zacinania się w interfejsie. |
autouzupełnianie | Zwiększ dokładność autouzupełniania dzięki rozszerzeniom wskazówek. |
test porównawczy | Dokładnie zmierz wydajność kodu w Android Studio. |
biometryczne | Uwierzytelniaj za pomocą danych biometrycznych lub danych logowania do urządzenia i wykonuj operacje kryptograficzne. |
Bluetooth | Używaj funkcji Bluetooth na platformie Androida w połączeniu ze zgodnymi wstecznie interfejsami API. |
przeglądarka | Wyświetlaj strony internetowe w domyślnej przeglądarce użytkownika. |
aplikacja-samochodowa | Tworzenie aplikacji opartych na szablonach na systemy operacyjne Android Auto i Android Automotive. |
widok karty | Zaimplementuj wzór karty Material Design z zaokrąglonymi rogami i cieniami. |
kolekcja | Zmniejsz wpływ na pamięć istniejących i nowych kolekcji, które są niewielkie. |
compose.animation, | Twórz animacje w aplikacjach Jetpack Compose, aby wzbogacać wrażenia użytkowników. |
compose.buildr | Przekształcaj funkcje @Composable i optymalizuj funkcje za pomocą wtyczki kompilatora Kotlin. |
compose.foundation | Twórz aplikacje w Jetpack Compose, używając gotowych do użycia elementów składowych, i rozbuduj podstawy, aby tworzyć własne elementy systemu. |
compose.material, | Twórz interfejsy Jetpack Compose z gotowymi do użycia komponentami Material Design. Jest to punkt wejścia wyższego poziomu w Composer, który ma dostarczać komponenty pasujące do tych opisanych na www.material.io. |
compose.material3, | Twórz interfejsy Jetpack Compose z komponentami Material Design 3, które stanowią kolejną wersję Material Design. Material 3 ma zaktualizowane motywy i komponenty oraz funkcje personalizacji Material You, takie jak dynamiczne kolory, i został zaprojektowany tak, aby był spójny z nowym stylem wizualnym i interfejsem systemu na Androidzie 12. |
compose.runtime, | Podstawowe elementy składowe modelu programowania i zarządzania stanem w usłudze Compose oraz podstawowe środowisko wykonawcze, na które ma być kierowana wtyczka kompilatora Compose. |
compose.ui, | Podstawowe elementy interfejsu tworzenia wiadomości niezbędne do interakcji z urządzeniem, w tym układ, rysowanie i wprowadzanie tekstu. |
równoczesnych | Przenieś zadania z wątku głównego za pomocą współrzędnych i wykorzystaj ListenableFuture. |
constraintlayout | elastyczny sposób pozycjonowania i rozmiaru widżetów dzięki pozycjonowaniu względnemu. |
contentpager | Wczytywanie i otwieranie danych z komponentu ContentProvider w wątku w tle. |
układ koordynatora | Umieść widżety aplikacji najwyższego poziomu, takie jak AppBarLayout i FloatingActionButton. |
rdzenie | Kieruj reklamy na najnowsze funkcje platformy i interfejsy API, nie zapominając przy tym o obsłudze starszych urządzeń. |
core.uwb, | Wdróż UWB (ultraszerokopasmowe) na obsługiwanych urządzeniach. |
dane logowania | Ta biblioteka zapewnia jednolity dostęp do danych logowania użytkownika. Dotyczy to haseł, kluczy dostępu i sfederowanych danych logowania. Tej biblioteki należy używać do zapewnienia bezproblemowego i bezpiecznego logowania. |
kursoradapter | Udostępnianie danych kursora w widżecie ListView. |
widok niestandardowy | Implementacja widoków niestandardowych. |
datastore | Przechowuj dane asynchronicznie, w spójny i transakcyjny sposób, z wykorzystaniem niektórych wad SharedPreferences |
plik dokumentu | wyświetlić dokument w formie pliku; |
przeciągnij | Akceptuj przeciąganie i upuszczanie danych z innej aplikacji lub w obrębie aplikacji oraz pokazuj stałą aproporcję wartości docelowej. |
układ szuflady | Zaimplementuj widżet panelu Material Design. |
dynamicanimation | Twórz płynne animacje za pomocą opartego na fizyce interfejsu API do animacji. |
emotikon | Wyświetlaj emotikony na obecnych i starszych urządzeniach. |
emoji2 | Wyświetlaj emotikony na obecnych i starszych urządzeniach. |
enterprise, | Twórz aplikacje dla firm. |
Exifinterface | Odczyt i zapis tagów EXIF pliku graficznego. |
gry | Za pomocą pakietu SDK do gier na Androida możesz bezpośrednio w swojej aplikacji wykonywać złożone zadania w grach, takie jak Frame Pacing. |
widok | Twórz układy dla platform zdalnych, korzystając z interfejsu API w stylu Jetpack Compose. |
grafika | Korzystanie z zaplecza graficznego w przypadku różnych wersji platformy Androida |
gridlayout, | Wdróż układ siatki. |
zdrowie | Twórz wydajne aplikacje związane ze zdrowiem w sposób niezależny od platformy. |
health.connect | Umożliwia deweloperom odczytywanie i zapisywanie danych dotyczących zdrowia i aktywności fizycznej użytkownika. |
heifwriter | Zakoduj kolekcję obrazów lub obrazów w formacie HEIF, używając kodeków dostępnych na urządzeniu z Androidem. |
wpisywanie danych | Skrócenie czasu oczekiwania na interakcje wejściowe dzięki przewidywaniu przyszłych zdarzeń MotionEvents |
interpolator | Korzystanie z interpolatorów animacji na starszych platformach. |
JavaScriptengine | Włącz ocenę JavaScriptu w swojej aplikacji na Androida. |
jetifier | Oddzielne narzędzie, które przenosi zależności biblioteki od wycofanej biblioteki pomocy do odpowiadających im zależności AndroidaX. |
leanback | Zamiast tego artefaktu użyj funkcji Utwórz na potrzeby telewizji. |
starsza wersja | Ten artefakt i jego klasy zostały wycofane. Począwszy od Androida 8, ograniczenia sprawdzania przeszłości sprawiają, że ta klasa nie jest już przydatna. |
lint | Kontrola licencji w celu weryfikacji użycia interfejsów Gradle API |
program ładujący | Wczytywanie danych interfejsu użytkownika, które przetrwają zmiany konfiguracji. |
localbroadcastmanager, | Ten artefakt i jego klasy zostały wycofane. Zamiast tego używaj LiveData lub strumieni reaktywnych. |
multimedia, | Udostępniaj treści multimedialne i elementy sterujące innym aplikacjom. Zastąpiona przez element media2. |
media2, | Udostępniaj treści multimedialne i elementy sterujące innym aplikacjom. |
media3 * | Biblioteki pomocy na potrzeby przypadków użycia multimediów. |
mediarouter | Włącz wyświetlanie multimediów i odtwarzanie na urządzeniach zdalnych za pomocą wspólnego interfejsu. |
multidex, | Wdrażaj aplikacje z wieloma plikami .dex na urządzeniach z Androidem 5 lub starszym. |
dane | Śledź i raportuj różne wskaźniki czasu działania aplikacji |
paleta | Wyodrębnij z obrazów reprezentatywne palety kolorów. |
Biblioteka pozwalająca dodać funkcje wyświetlania plików PDF w aplikacjach. | |
percentlayout, | Ten artefakt i jego klasy zostały wycofane. Zamiast tego użyj ConstraintLayout i powiązanych układów. |
preferencja | Twórz interaktywne ekrany z ustawieniami bez konieczności korzystania z pamięci urządzenia czy zarządzania interfejsem użytkownika. |
drukuj | Drukuj zdjęcia, dokumenty oraz inne grafiki i obrazy z aplikacji. |
privacysandbox.activity. | DO ZROBIENIA |
privacysandbox.ads | Ta biblioteka umożliwia integrację z interfejsami Privacy Protection API, które są częścią Piaskownicy prywatności na Androidzie. |
privacysandbox.Wtyczka | Wtyczka Sdk Library Gradle Piaskownicy prywatności na Androida |
privacysandbox.sdkruntime (privacysandbox.sdkruntime) | Ta biblioteka udostępnia komponenty dla klientów świadomych SdkRuntime |
privacysandbox.tools | Biblioteka umożliwiająca korzystanie z funkcji Piaskownicy prywatności na Androidzie |
privacysandbox.ui. | DO ZROBIENIA |
profileinstaller | Umożliwia bibliotekom wstępne wypełnianie logów czasu kompilacji z wyprzedzeniem w celu odczytu przez ART. |
rekomendacja | Promuj treści na ekranie głównym Android TV Launcher. |
recyclerview, | Wyświetlaj w interfejsie duże zbiory danych, minimalizując jednocześnie wykorzystanie pamięci. |
zdalne wywołanie zwrotne | Utwórz kod, który ułatwia deweloperom przesyłanie intencji PendingIntent. |
inspekcja zasobów | wyświetlać atrybuty widoków niestandardowych w Inspektorze układu transmisji na żywo w Android Studio; |
savedstate (zapisany stan), | Zapisz możliwe do podłączenia komponenty, które zapisują stan interfejsu użytkownika po zamknięciu procesu i przywracają go po ponownym uruchomieniu procesu. |
bezpieczeństwo | Bezpiecznie zarządzaj kluczami oraz szyfruj pliki i udostępnione ustawienia. |
sharetarget, | Zapewniają zgodność wsteczną w przypadku używania skrótów jako elementów docelowych udostępniania bezpośredniego. |
wycinek | Wyświetlaj oparte na szablonach elementy interfejsu poza aplikacją. |
slidingpanelayout | Zaimplementuj wzorzec interfejsu panelu przesuwanego. |
uruchomienie | Zaimplementuj prosty i wydajny sposób inicjowania komponentów podczas uruchamiania aplikacji. |
sqlite | Praca z lokalnymi bazami danych SQLite. Jeśli to możliwe, użyj opcji Pokój. |
swiperefreshlayout. | Zaimplementuj w interfejsie wzorzec przesuwania palcem, aby odświeżyć. |
test.uiautomator | Platforma do testowania funkcjonalnego interfejsu użytkownika w różnych aplikacjach |
textclassifier | Identyfikuje wątki, linki, zaznaczenia i inne podobne konstrukcje w tekście. |
śledzenie | Zapisz zdarzenia logu czasu w buforze śledzenia systemu. |
przejście | Animuj ruch w interfejsie za pomocą układów początkowych i końcowych. |
tv | Udostępnia deweloperom funkcje Compose i Material Design umożliwiające pisanie aplikacji na telewizory |
dostawca TV | udostępniać kanały na Androida TV; |
vectordrawable (wektor vectordrawable) | Renderowanie grafiki wektorowej. |
versionedparcelable | Udostępnia stabilny i kompaktowy format serializacji plików binarnych, który można przekazać między procesami lub bezpiecznie przechowywać. |
viewpager | Wyświetlaj wyświetlenia lub fragmenty w formacie przesuwanym. Jeśli to możliwe, użyj viewpager2. |
viewpager2, | Wyświetlaj wyświetlenia lub fragmenty w formacie przesuwanym. |
wear | Twórz aplikacje na zegarki z Wear OS by Google. |
wear.compose | Zapisuj aplikacje Jetpack Compose na urządzenia do noszenia według zapewnia funkcje obsługujące określone urządzenia do noszenia, rozmiary, kształty gestów nawigacji. |
wear.protolayout, | Ta biblioteka umożliwia definiowanie zestawu układów interfejsu i wyrażeń niezwiązanych z interfejsem, które będą renderowane/oceniane na platformach zdalnych. |
wear.tiles | Twórz aplikacje na zegarki z Wear OS by Google. |
wear.watchface | Twórz aplikacje na zegarki z Wear OS by Google. |
webkit | Możliwość korzystania z nowoczesnych interfejsów API WebView na Androidzie 5 lub nowszym. |
okno | Jest obsługiwany w różnych formatach urządzeń, takich jak urządzenia składane. |
window.extensions.core, | Podstawowe interfejsy API rozszerzeń biblioteki Menedżera okien |
Co nowego
- Utwórz sierpień 2023 r.
- Jetpack Compose 1.5.0 przechodzi do wersji stabilnej i zapewnia znaczną poprawę wydajności, w tym refaktoryzację modyfikatorów wysokiego poziomu, takich jak „Klikalny”, co może poprawić czas kompozycji o 80%. w sierpniu 2023 roku narzędzie Compose miało także nawet o 70% lepsze przydziały pamięci (zwłaszcza w przypadku stosu grafiki), co zmniejsza zużycie pamięci podczas tworzenia wiadomości na urządzeniach.
- Wear Compose i kafelki w wersji 1.2
- Funkcje Wear Compose i kafelki na Wear są teraz dostępne w wersji stabilnej, aby zapewnić jeszcze lepsze wrażenia deweloperom aplikacji na Wear OS. Obie funkcje uzupełniają się wzajemnie – Wear Compose można używać do tworzenia złożonych ekranów aplikacji na urządzeniach Wear. Kafelki aplikacji można natomiast używać do tworzenia kafelków aplikacji. Nowa wersja Wear Compose zawiera nowe funkcje, takie jak elementy rozwijane i funkcja przesuwania palcem, aby ją odkryć. Wersja kafelków na Wear obsługuje też teraz animację widżetów i powiązanie danych platformy (np. źródła danych o stanie).
- Okno 1.1
- 1.1 stabilizuje interfejsy API umieszczania aktywności, umożliwiając aplikacjom takim jak WhatsApp, eBay i Temu wysyłanie dużych układów ekranu. Interfejs API jest wzbogacony o różne funkcje, które pozwalają deweloperom modyfikować sposób działania podzielonego ekranu, sprawdzać (i zmieniać) stan podziału w czasie działania, implementować podziały poziome i uruchamiać modal w pełnym oknie.
- Informacje o wersji
- Więcej informacji znajdziesz w informacjach o wersji.
Nauka korzystania z jetpacka
Szkolenie podstawowe
Poznaj najważniejsze biblioteki Jetpacka w ramach podstaw Androida dzięki kursowi Compose i ogranicz liczbę powtarzających się elementów w swojej aplikacji
Praktyczny samouczek
Zyskaj praktyczne doświadczenie dzięki 3 bibliotekom Jetpack, które upraszczają warstwę danych: LiveData, ViewModel i room
Przykładowa aplikacja Sunflower
Zobacz, jak najpopularniejsze biblioteki Jetpack są używane razem w aplikacji w wersji produkcyjnej