Expo to platforma i zestaw narzędzi przeznaczonych do tworzenia aplikacji w React Native, czyli technologii pozwalającej budować aplikacje mobilne przy użyciu JavaScriptu lub TypeScriptu oraz biblioteki React. Expo upraszcza przygotowanie, testowanie, budowanie i publikowanie aplikacji na Androida i iOS, a część projektów może być również uruchamiana w przeglądarce internetowej.

Rola Expo SDK w ekosystemie React Native

Podstawą Expo jest Expo SDK, czyli Software Development Kit, a więc zestaw bibliotek i modułów wykorzystywanych podczas tworzenia aplikacji. Udostępnia on gotowy dostęp do funkcji urządzenia, takich jak aparat, lokalizacja, kontakty, czujniki ruchu, wibracje, pliki czy powiadomienia. Dzięki temu aplikacja działająca na smartfonie lub tablecie może korzystać z tych możliwości bez konieczności samodzielnego pisania całej warstwy natywnego kodu dla Androida i iOS.

Expo nie jest osobnym systemem operacyjnym ani językiem programowania. Jest frameworkiem działającym w ekosystemie React Native. Sam React Native zapewnia podstawę do tworzenia aplikacji natywnych za pomocą Reacta, natomiast Expo dodaje do niego zestaw narzędzi, bibliotek i usług, które upraszczają typowe zadania programistyczne. Pakiet Expo można także dodać do istniejącego projektu React Native, więc nie trzeba budować całej aplikacji od początku w jednym ściśle zamkniętym środowisku.

Expo Router i testowanie z aplikacją Expo Go

Ważnym elementem platformy jest Expo Router. To system nawigacji oparty na strukturze plików projektu. Poszczególne ekrany aplikacji odpowiadają określonym plikom i katalogom, dzięki czemu organizacja tras przypomina rozwiązania znane z nowoczesnych frameworków internetowych. Expo Router może obsługiwać nawigację w aplikacjach mobilnych oraz wersjach webowych, co ułatwia budowanie jednego projektu przeznaczonego dla różnych platform.

Do uruchamiania i testowania projektu można wykorzystać Expo Go. Jest to aplikacja instalowana na smartfonie lub tablecie, która pozwala szybko otworzyć projekt podczas tworzenia i sprawdzić jego działanie na fizycznym urządzeniu. Rozwiązanie jest szczególnie przydatne podczas nauki i we wczesnych etapach prac.

Usługi chmurowe EAS i obsługa kodu natywnego

Expo obejmuje również EAS, czyli Expo Application Services. Jest to zestaw usług chmurowych wspierających kolejne etapy przygotowania i publikacji aplikacji. EAS Build pozwala kompilować i podpisywać aplikacje dla Androida i iOS w chmurze, natomiast EAS Submit ułatwia przesyłanie gotowych wersji do Google Play i App Store. EAS Update służy do dostarczania określonych aktualizacji bez konieczności każdorazowego publikowania pełnej nowej wersji w sklepie, a EAS Workflows umożliwia automatyzację procesu budowania, testowania i wdrażania.

Istotną funkcją Expo jest możliwość korzystania z własnego kodu natywnego. Starsze wersje platformy były częściej kojarzone z ograniczeniem do zestawu funkcji dostarczanych przez Expo, ale współczesny model jest znacznie bardziej elastyczny. W projekcie można instalować zewnętrzne biblioteki React Native wymagające zmian w kodzie Androida lub iOS, używać własnych modułów napisanych np. w Kotlinie lub Swift oraz konfigurować projekty natywne za pomocą tzw. config plugins.

Expo
Więcej podobnych pojęć

Właściciel serwisu: TERG S.A. Ul. Za Dworcem 1D, 77-400 Złotów; Spółka wpisana do Krajowego Rejestru Sądowego w Sądzie Rejonowym w Poznań-Nowe Miasto i Wilda w Poznaniu, IX Wydział Gospodarczy Krajowego Rejestru Sądowego pod nr KRS 0000427063, Kapitał zakładowy: 41 687 500,00 zł; NIP 767-10-04-218, REGON 570217011; numer rejestrowy BDO: 000135672. Sprzedaż dla firm (B2B): dlabiznesu@me.pl INFOLINIA: 756 756 756