Przygotowanie Unity pod build na Androida

Ostatnio wymieniłem sobie w laptopie dysk, przez co musiałem poinstalować wszystko na nowo. Przypomniałem sobie, że ustawienie możliwości zbudowania gry na telefon nie jest taką oczywistą sprawą. Potrzebujemy mieć bardzo konkretne wersje SDK oraz JDK. Pomimo powtarzania tego procesu po raz 3 w życiu – dalej miałem problemy. Postanowiłem napisać parę słów jak tego dokonać, dzięki czemu następnym razem zaoszczędzę sporo czasu 🙂

Instalacja JDK

Java Development Kit w wersji 8 możemy pobrać pod tym adresem. Unity ma problem z nowszymi wersjami 9 i 10. Nie rozwiązali go od paru lat. Ja u siebie używam Java SE Development Kit 8u172 na Windows x64. Warto zapisać sobie ścieżkę instalacyjną, w moim przypadku jest to C:\Program Files\Java\jdk1.8.0_172.

Instalacja SDK

Nie znalazłem możliwości pobrania samego SDK. Jest jedynie dostępne CLI, bez dodatkowych folderów z SDK. Dlatego musimy pobrać całe Android Studio. Przy instalacji warto odznaczyć Android Virtual Device, jeśli jest Wam niepotrzebne, bo to zawsze 1GB miejsca więcej na dysku.

Po zainstalowaniu Android Studio należy je odpalić. Wyświetli się Setup do pierwszego uruchomienia. Aby sprawiać pozory, że wiem co robię, zaznaczyłem tu opcję Custom.

Przy instalacji warto zapisać ścieżkę do SDK, widoczną poniżej. Nie potrzebujemy ani HAXM, ani AVD.

Uzupełnienie ścieżek

Po instalacji można odpalić dowolny projekt w Unity i wejść w Edit/Preferences/External Tools. Tutaj możemy wpisać odpowiednie lokalizacje.

Oczywiście projekt w dalszym ciągu nam się nie będzie chciał zbudować, bo trzeba wykonać jeszcze jedną sztuczkę.

Podmiana SDK

Do ukończenia procesu potrzebujemy narzędzi SDK w wersji 25.2.3, które możemy pobrać bezpośrednio na interesującą nas platformę: Windows, Mac lub Linux. Teraz trzeba odnaleźć ścieżkę do naszego SDK i zastąpić zawartość folderu tools.

Jeśli wszystko wykonaliśmy poprawnie to wystarczy podłączyć telefon pod komputer i można próbować build’a. Należy pamiętać, aby telefon posiadał odblokowany tryb deweloperski.