Samsung Galaxy XR jest już dostępny, a jego działanie opiera się na Androidzie XR! Ten post na blogu jest częścią tygodnia poświęconego Androidowi XR, podczas którego udostępniamy materiały – posty na blogu, filmy, przykładowy kod i inne – które pomogą Ci poznać Androida XR, tworzyć aplikacje na tę platformę i przygotować je do działania w tym środowisku.
Teraz jest najlepszy moment, aby zacząć tworzyć aplikacje na XR. W grudniu ubiegłego roku ogłosiliśmy wprowadzenie Androida XR, nowej platformy Androida Google opartej na otwartych standardach, takich jak OpenXR i Vulkan, dzięki czemu tworzenie aplikacji na XR jest łatwiejsze niż kiedykolwiek.
W połączeniu z dotych1}Unityczasowymi narzędziami XR w Unity otrzymujesz zaawansowany i sprawdzony stos technologii. Umożliwia to tworzenie i wdrażanie aplikacji XR, które działają na wielu urządzeniach.
Niezależnie od tego, czy masz już doświadczenie w tworzeniu aplikacji na XR, czy nie, chcemy Ci pomóc w rozpoczęciu pracy.
Z tego posta na blogu dowiesz się, jak zacząć tworzyć aplikacje na Androida XR w Unity. Skupimy się na praktycznych krokach, które pozwolą Ci skonfigurować środowisko, poznać ekosystem pakietów i zacząć tworzyć aplikacje.
Po przeczytaniu tego posta będziesz mieć dobrą wiedzę na temat:
- ekosystemu pakietów,
- podstawowych czynności konfiguracyjnych,
- metod wprowadzania,
- prywatności i uprawnień,
- warstw komponowanych.
Unity do tworzenia aplikacji na Androida XR
Możesz wybrać Unity ze względu na zgodność na wielu platformach, co pozwala na jednokrotne utworzenie aplikacji i wdrożenie jej na Androida XR oraz inne urządzenia z XR.
Korzystając z Unity, możesz korzystać z dojrzałego ekosystemu i narzędzi XR. Unity ma już sprawdzone pakiety, takie jak XR Interaction Toolkit, wtyczka OpenXR, warstwy kompozycji XR, XR Hands, obszerny sklep z zasobami pełen komponentów i szablonów gotowych do użycia w XR oraz narzędzia do symulacji i testowania XR. Od czasu premiery Unity 6 w listopadzie ubiegłego roku możesz też korzystać z ulepszonej wydajności Universal Render Pipeline (URP), lepszej obsługi grafiki Vulkan i ulepszonych profili kompilacji.
Oto kilka przykładowych projektów, które pozwolą Ci zorientować się, co można zrobić:
Podstawowa konfiguracja: fundamenty tworzenia aplikacji
Wymagania i instalacja Unity 6
Do utworzenia aplikacji potrzebujesz Unity 6, ponieważ wcześniejsze wersje nie obsługują Androida XR. Najpierw zainstaluj Unity Hub, a potem Unity 6 z modułem Android Build Support, wykonując te czynności.
Profile kompilacji Androida XR: upraszczanie konfiguracji
Profile kompilacji Unity to zasoby projektu, które przechowują ustawienia i konfiguracje specyficzne dla platformy. Dzięki temu zamiast ręcznie konfigurować 15–20 różnych ustawień w wielu menu, możesz użyć profilu kompilacji, aby zrobić to automatycznie.
Możesz tworzyć własne profile kompilacji, ale na razie zalecamy używanie utworzonego przez nas profilu kompilacji Androida XR.
Profil kompilacji możesz wybrać, klikając w projekcie Unity kolejno File > Build Profile (Plik > Profil kompilacji). Pełne instrukcje znajdziesz na stronie Tworzenie aplikacji na Androida XR workflow page.
Jeśli wprowadzisz własne zmiany, możesz utworzyć nowy profil kompilacji, aby udostępnić go zespołowi. Dzięki temu zapewnisz spójność procesu kompilacji.
Po wykonaniu tych czynności możesz skompilować i uruchomić plik APK na urządzeniach z Androidem XR.
Interfejs API grafiki: dlaczego Vulkan jest ważny
Po skonfigurowaniu projektu Unity z profilem kompilacji Androida XR zalecamy najpierw upewnić się, że Vulkan jest ustawiony jako interfejs API grafiki. Android XR został zbudowany jako platforma oparta na Vulkanie. W marcu 2025 r. Google ogłosiło, że Vulkan jest teraz oficjalnym interfejsem API grafiki dla Androida. Jest to nowoczesny, niskopoziomowy interfejs API grafiki, który pomaga deweloperom maksymalizować wydajność nowoczesnych procesorów graficznych i odblokowuje zaawansowane funkcje, takie jak śledzenie promieni i wielowątkowość, co pozwala uzyskać realistyczne i wciągające efekty wizualne w grach.
Te standardy zapewniają najlepszą zgodność z dotychczasowymi aplikacjami oraz ułatwiają rozwiązywanie problemów i zmniejszają koszty przenoszenia aplikacji. Umożliwiają też włączenie zaawansowanych funkcji Androida XR, takich jak URP Application Space Warp i foveated rendering.
Unity 6 automatycznie obsługuje Vulkan, więc gdy używasz profilu kompilacji Androida XR, Unity skonfiguruje Vulkan jako interfejs API grafiki. Dzięki temu możesz korzystać ze wszystkich zaawansowanych funkcji Androida XR bez ręcznej konfiguracji.
Ustawienia interfejsu API grafiki możesz sprawdzić, klikając kolejno „Edit” (Edytuj) > „Project Settings” (Ustawienia projektu) > „Player” (Odtwarzacz) > „Android tab” (Karta Android) > „Other settings” (Inne ustawienia) > „Graphics APIs” (Interfejsy API grafiki).
Poznawanie ekosystemu pakietów
W Unity możesz używać 2 różnych pakietów na Androida XR. Jednym z nich jest Android XR Extensions for Unity, a drugim – Unity OpenXR: Android XR.
Może się to wydawać tym samym, ale proszę o cierpliwość.
Pakiet Unity OpenXR: Android XR to oficjalny pakiet Unity do obsługi Androida XR. Zawiera większość funkcji Androida XR, które są dostępne dzięki standardom OpenXR. Umożliwia też integrację z AR Foundation w przypadku funkcji rzeczywistości mieszanej. Główną zaletą korzystania z pakietu Unity OpenXR: Android XR jest to, że oferuje on ujednolicony interfejs API do obsługi urządzeń XR.
Z kolei Android XR Extensions for Unity to pakiet XR Google, zaprojektowany specjalnie do tworzenia aplikacji na urządzenia z Androidem XR. Uzupełnia on pakiet Unity OpenXR o dodatkowe funkcje, takie jak tryby mieszania środowiska, siatka sceny, śledzenie obrazu i śledzenie ciała. W zamian możesz tworzyć aplikacje tylko na urządzenia z Androidem XR.
Wybór zależy od Twoich konkretnych potrzeb, ale ogólnie zalecamy korzystanie z pakietu Unity OpenXR: Android XR, ponieważ zapewnia on znacznie większą elastyczność w zakresie urządzeń, z którymi Twoja aplikacja będzie zgodna. Następnie, w zależności od wymagań aplikacji, możesz dodać Android XR Extensions for Unity.
Jak instalować pakiety
Aby dodać nowy pakiet, otwórz projekt w Unity i kliknij kolejno „Window” (Okno) > „Package Management” (Zarządzanie pakietami) > „Package Manager” (Menedżer pakietów).
Tutaj możesz zainstalować te pakiety z karty „Unity Registry” (Rejestr Unity):
Pakiet Android XR for Unity możesz zainstalować przez GitHub, klikając ikonę ➕, wybierając „Install package from git URL” (Zainstaluj pakiet z adresu URL Git), a następnie wpisując „https://github.com/android/android-xr-unity-package.git”.
Wymagane funkcje OpenXR
Teraz, gdy masz zainstalowane potrzebne pakiety, włączmy niektóre podstawowe funkcje, aby projekt działał.
Możesz włączyć ustawienie OpenXR dla Androida: „Edit” (Edytuj) -> „Project Settings” (Ustawienia projektu) -> „XR Plugin Management” (Zarządzanie wtyczkami XR) -> kliknij Androida i włącz OpenXR
Następnie musimy włączyć obsługę „Android XR support” (Obsługa Androida XR). Inne funkcje OpenXR omówimy w razie potrzeby. Na razie wystarczy, że włączysz obsługę Androida XR.
Dane wejściowe
Android XR obsługuje dane wejściowe z rąk, głosu, śledzenia wzroku, klawiatury i kontrolerów. Zalecamy zainstalowanie pakietów XR Interaction Toolkit i XR Hands, ponieważ zawierają one najlepsze prefabrykaty do rozpoczęcia pracy. Dzięki tym prefabrykatom będziesz mieć wszystko, czego potrzebujesz do obsługi rąk i kontrolerów w swojej aplikacji.
Po zainstalowaniu pakietów XR Hands i XR Interactive Toolkit zalecam zaimportowanie Starter Assets i Hands Interaction Demo. Następnie musisz włączyć profile Hand Interaction i Khronos Simple Controller oraz włączyć funkcje Hand Tracking Subsystem i Meta Hand Tracking Aim.
Te ustawienia możesz edytować, klikając kolejno „Edit” (Edytuj) > „Project Settings” (Ustawienia projektu) > „XR Plug-in Management” (Zarządzanie wtyczkami XR) > „OpenXR”.
Zalecamy też użycie prefabrykatu Unity, XR Origin, który reprezentuje pozycję i orientację użytkownika w przestrzeni XR. Zawiera on zestaw kamer i komponenty śledzenia potrzebne do renderowania środowiska XR z prawidłowego punktu widzenia.
Najprostszym sposobem na dodanie tego prefabrykatu jest zaimportowanie go z demonstracji integracji rąk, którą zaimportowaliśmy wcześniej. Znajduje się ona tutaj: „Hands Integration Toolkit” (Zestaw narzędzi do integracji rąk) > „Hand Interaction” (Interakcja z rękami) > „Prefabs” (Prefabrykaty) > „XR Origin”.
Zalecam używanie tego prefabrykatu zamiast opcji „XR Origin” w obiektach gry, ponieważ korzysta on z XR Input Modality Manager, który automatycznie przełącza się między rękami i kontrolerami użytkownika. Dzięki temu przełączanie się między rękami i kontrolerami będzie najskuteczniejsze.
Prywatność i uprawnienia: budowanie zaufania użytkowników
Niezależnie od tego, co tworzysz, musisz uzyskać od użytkowników uprawnienia w czasie działania aplikacji. Wynika to z tego, że rozpoznawanie scen, śledzenie wzroku, śledzenie twarzy i śledzenie rąk zapewniają dostęp do danych, które mogą być bardziej wrażliwe dla użytkownika.
Te funkcje zapewniają dostęp do bardziej szczegółowych danych osobowych niż tradycyjne aplikacje na komputery lub urządzenia mobilne, dlatego uprawnienia w czasie działania aplikacji zapewniają użytkownikom pełną kontrolę nad tym, jakie dane chcą udostępniać. Aby zachować zgodność z zasadami bezpieczeństwa i prywatności Androida, Android XR ma uprawnienia do każdej z tych funkcji.
Jeśli na przykład używasz pakietu XR Hands do niestandardowych gestów rąk, musisz poprosić o uprawnienie do śledzenia rąk (patrz poniżej), ponieważ ten pakiet musi śledzić wiele informacji o rękach użytkownika. Obejmuje to m.in. śledzenie pozycji stawów rąk oraz prędkości kątowych i liniowych.
Uwaga: pełną listę rozszerzeń, które wymagają uprawnień, znajdziesz na stronie dla deweloperów XR.
const string k_Permission = "android.permission.HAND_TRACKING";
#if UNITY_ANDROID
void Start()
{
if (!Permission.HasUserAuthorizedPermission(k_Permission))
{
var callbacks = new PermissionCallbacks();
callbacks.PermissionDenied += OnPermissionDenied;
callbacks.PermissionGranted += OnPermissionGranted;
Permission.RequestUserPermission(k_Permission, callbacks);
}
}
void OnPermissionDenied(string permission)
{
// handle denied permission
}
void OnPermissionGranted(string permission)
{
// handle granted permission
}
#endif // UNITY_ANDROIDPoprawianie jakości obrazu za pomocą warstw kompozycji
Warstwa kompozycji to zalecany sposób renderowania elementów interfejsu. Umożliwiają one wyświetlanie elementów w znacznie wyższej jakości w porównaniu ze standardowym potokiem renderowania Unity, ponieważ wszystko jest renderowane bezpośrednio do kompozytora platformy.
Jeśli na przykład wyświetlasz tekst, standardowe renderowanie Unity może powodować rozmycie tekstu, miękkie krawędzie i artefakty wizualne. Natomiast w przypadku warstw kompozycji tekst będzie wyraźniejszy, kontury ostrzejsze, a ogólne wrażenia lepsze.
Oprócz tekstu renderuje też filmy, obrazy i elementy interfejsu w znacznie wyższej jakości. Dzieje się tak dzięki natywnej obsłudze warstw kompozytora w czasie działania aplikacji.
Aby włączyć warstwy kompozycji, otwórz Menedżera pakietów, kliknij „Unity Register” (Rejestr Unity), a następnie zainstaluj „XR Composition Layers” (Warstwy kompozycji XR).
Kompilowanie i uruchamianie
Teraz, gdy masz zainstalowane pakiety OpenXR i włączone funkcje, a także skonfigurowany prefabrykat do ruchu rąk i głowy, możesz skompilować scenę i wdrożyć ją bezpośrednio na gogle w celu przetestowania.
Co dalej: rozwijanie umiejętności
Teraz, gdy masz skonfigurowane środowisko programistyczne Androida XR i znasz kluczowe pojęcia, wykonaj te czynności, aby kontynuować tworzenie aplikacji na XR:
Podstawowe materiały do dalszej nauki:
- Dokumentacja dla deweloperów Androida XR – obszerne przewodniki dotyczące wszystkich funkcji Androida XR.
- Podręcznik tworzenia aplikacji na XR w Unity – oficjalne materiały Unity dotyczące tworzenia aplikacji na XR.
Przykładowe projekty do przejrzenia:
- Przykłady Androida XR w Unity – oficjalne przykładowe projekty Google prezentujące różne funkcje Androida XR.
- Przykłady XR Interaction Toolkit w Unity – obszerne przykłady interakcji XR i mechaniki rozgrywki.
- Szablon VR w Unity – kompletny punkt wyjścia dla projektów VR.
- Szablon VR dla wielu graczy – poznaj społecznościowe środowiska XR.
Czytaj dalej
-
r.r.
Poradniki
Z przyjemnością informujemy, że wprowadzamy nowy zweryfikowany adres e-mail wydany przez Google, który deweloperzy mogą teraz pobierać bezpośrednio z interfejsu API cyfrowych danych logowania Menedżera danych logowania Androida.
Niharika Arora, Jean-Pierre Pralle • 3 min czytania
-
Poradniki
Niezależnie od tego, czy używasz Gemini w Android Studio, interfejsu wiersza poleceń Gemini, Antigravity czy agentów innych firm, takich jak Claude Code lub Codex, naszym celem jest zapewnienie możliwości tworzenia wysokiej jakości aplikacji na Androida w dowolnym miejscu.
Adarsh Fernando, Esteban de la Canal • 4 min czytania
-
r.r.
Poradniki
Zdajemy sobie sprawę, że szybkie zużycie baterii jest dla użytkowników Androida bardzo ważne, dlatego Google podejmuje znaczące kroki, aby pomóc deweloperom w tworzeniu bardziej energooszczędnych aplikacji.
Alice Yuan • 8 min czytania
Bądź na bieżąco
Otrzymuj co tydzień najnowsze informacje o tworzeniu aplikacji na Androida na swoją skrzynkę odbiorczą.