Migracja projektów do Android Studio wymaga dostosowania się do nowej struktury projektu, systemu kompilacji i funkcji IDE.
Jeśli przeprowadzasz migrację z IntelliJ, a Twój projekt korzysta już z Gradle, możesz otworzyć istniejący projekt z Android Studio. Jeśli korzystasz z IntelliJ, ale Twój projekt nie korzysta jeszcze z Gradle, musisz ręcznie przygotować projekt przed zaimportowaniem go do Android Studio. Więcej informacji znajdziesz w sekcji Migracja z IntelliJ.
Podstawy Android Studio
Oto kilka najważniejszych różnic, o których należy pamiętać przed przejściem do Android Studio.
Organizacja projektu i modułów
Android Studio opiera się na IDE IntelliJ IDEA. Aby zapoznać się z podstawami IDE, takimi jak nawigacja, uzupełnianie kodu i skróty klawiszowe, zobacz Poznaj Android Studio.
Android Studio łączy kod w projekty, które zawierają wszystkie elementy, które definiują aplikację na Androida – od kodu źródłowego aplikacji po kompilacje i testowanie kodu. Projekty otwierają się w oddzielnych oknach Android Studio. Każdy projekt zawiera co najmniej 1 moduł, który pozwala podzielić projekt na osobne jednostki funkcji. Moduły można tworzyć, testować i debugować niezależnie.
Więcej informacji o projektach i modułach Android Studio znajdziesz w artykule Omówienie projektów.
System kompilacji oparty na Gradle
System kompilacji Android Studio jest oparty na Gradle i korzysta z plików konfiguracji kompilacji napisanych w skrypcie Groovy lub Kotlin, co ułatwia rozszerzanie i dostosowywanie.
Projekty oparte na Gradle oferują ważne funkcje dla programistów aplikacji na Androida, takie jak:
- Obsługa bibliotek binarnych (AAR). Nie musisz już kopiować źródeł biblioteki do własnych projektów. Możesz zadeklarować zależność, a biblioteka zostanie automatycznie pobrana i scalona z Twoim projektem. Obejmuje to automatyczne scalanie zasobów, wpisów manifestu, reguł wykluczania ProGuard, niestandardowych reguł lintowania itd. w czasie kompilacji.
- Obsługa wariantów kompilacji, które umożliwiają kompilowanie różnych wersji aplikacji (np. bezpłatnej i Pro) z tego samego projektu.
- Łatwa konfiguracja kompilacji i łatwe dostosowywanie. Możesz na przykład pobierać nazwy i kody wersji z tagów Git w ramach kompilacji.
- Gradle można używać w IDE, z wiersza poleceń i z serwerów ciągłej integracji, takich jak Jenkins, dzięki czemu zawsze i wszędzie ta sama kompilacja jest wykorzystywana.
Więcej informacji o używaniu i konfigurowaniu Gradle znajdziesz w artykule o konfigurowaniu kompilacji.
Zależności
Zależności bibliotek w Android Studio używają deklaracji zależności Gradle i zależności Maven w przypadku dobrze znanych lokalnych bibliotek źródłowych i bibliotek binarnych ze współrzędnymi Maven. Więcej informacji znajdziesz w artykule o deklarowaniu zależności.
Migracja z IntelliJ
Jeśli Twój projekt IntelliJ korzysta z systemu kompilacji Gradle, możesz zaimportować projekt bezpośrednio do Android Studio. Jeśli Twój projekt IntelliJ używa narzędzia Maven lub innego systemu kompilacji, musisz skonfigurować go do współpracy z Gradle, zanim będzie można przejść na Android Studio.
Zaimportuj projekt IntelliJ oparty na Gradle
Jeśli w swoim projekcie IntelliJ korzystasz już z Gradle, otwórz go w Android Studio, wykonując te czynności:
- Kliknij Plik > Nowy > Importuj projekt.
- Wybierz katalog projektu IntelliJ i kliknij OK. Twój projekt otworzy się w Android Studio.
Importowanie projektu innego niż Gradle IntelliJ
Jeśli w Twoim projekcie IntelliJ nie jest jeszcze używany system kompilacji Gradle, masz 2 opcje importowania projektu do Android Studio. Zostały one opisane w sekcjach poniżej:
- Utwórz nowy pusty projekt Android Studio i skopiuj istniejący kod źródłowy do katalogów powiązanych z tym projektem. Więcej informacji znajdziesz w sekcji o przenoszeniu przez utworzenie nowego pustego projektu.
- Utwórz nowy plik kompilacji Gradle dla swojego projektu, a następnie zaimportuj projekt i nowy plik kompilacji do Android Studio. Więcej informacji znajdziesz w sekcji o przenoszeniu przy użyciu niestandardowego pliku kompilacji Gradle.
Aby przeprowadzić migrację, utwórz nowy pusty projekt
Aby przenieść projekt do Android Studio przez utworzenie nowego pustego projektu i skopiowanie plików źródłowych do nowych katalogów, wykonaj te czynności:
- Otwórz Android Studio i kliknij Plik > Nowy > Nowy projekt.
- Wpisz nazwę projektu aplikacji i określ lokalizację, w której chcesz go utworzyć, a następnie kliknij Dalej.
- Wybierz formaty, na których działa Twoja aplikacja, i kliknij Dalej.
- Kliknij kolejno Dodaj brak aktywności i Zakończ.
- W oknie narzędzia Projekt kliknij strzałkę, aby otworzyć menu widoku, i wybierz widok Projekt, aby wyświetlić i zbadać organizację nowego projektu Android Studio. Więcej informacji o zmienianiu widoków i sposobie tworzenia struktury projektów w Android Studio znajdziesz w artykule Pliki projektów.
- Przejdź do lokalizacji wybranej dla nowego projektu i przenieś kod, testy jednostkowe, testy instrumentacji i zasoby ze starych katalogów projektów do odpowiednich lokalizacji w nowej strukturze projektu.
- W Android Studio kliknij Plik > Struktura projektu, aby otworzyć okno Struktura projektu. Upewnij się, że w panelu po lewej stronie jest wybrany moduł aplikacji.
- Na karcie Właściwości projektu wprowadź niezbędne zmiany (np. zmień
minSdk
lubtargetSdk
). - Kliknij Zależności i dodaj wszystkie biblioteki, od których zależy Twój projekt, jako zależności Gradle. Aby dodać nową zależność, kliknij Dodaj , a następnie wybierz typ zależności, którą chcesz dodać, i postępuj zgodnie z wyświetlanymi instrukcjami.
- Kliknij OK, aby zapisać zmiany.
- Kliknij Kompilacja > Utwórz projekt, aby przetestować kompilację projektu i w razie potrzeby usunąć ewentualne błędy.
Przeprowadź migrację przez utworzenie niestandardowego pliku kompilacji Gradle
Aby przenieść projekt do Android Studio przez utworzenie nowego pliku kompilacji Gradle, który będzie wskazywał istniejące pliki źródłowe, wykonaj te czynności:
- Zanim zaczniesz, utwórz kopię zapasową plików projektu w oddzielnej lokalizacji, ponieważ proces migracji zmienia zawartość projektu.
- Utwórz w katalogu projektu plik o nazwie
build.gradle
, jeśli używasz Groovy, lubbuild.gradle.kts
, jeśli używasz skryptu Kotlin. Ten plik zawiera wszystkie informacje wymagane do uruchomienia kompilacji przez Gradle.Domyślnie Android Studio wymaga, aby projekt był zorganizowany tak, jak pokazano na rys. 1.
W
settings.gradle
, dla Groovy lubsettings.gradle.kts
dla skryptu Kotlin ustawiasz repozytoria używane do znajdowania wtyczek i zależności odpowiednio w blokachpluginManagement
idependencyResolutionManagement
:Odlotowe
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } } rootProject.name = "Test App" include ':app'
Kotlin
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } } rootProject.name = "Test App" include(":app")
Ostrzeżenie: od 31 marca 2021 r. repozytorium JCenter jest dostępne tylko do odczytu. Więcej informacji znajdziesz w artykule o aktualizacji usługi JCenter.
Wtyczka Androida do obsługi Gradle stosuje do projektu niektóre domyślne zbiory źródłowe. Te zbiory źródłowe definiują katalogi używane do przechowywania różnych typów plików źródłowych. Gradle używa tych zbiorów źródłowych do określania lokalizacji konkretnych typów plików. Jeśli Twój istniejący projekt nie jest zgodny z ustawieniami domyślnymi, możesz przenieść pliki tam, gdzie powinny się znajdować, lub zmienić domyślne zestawy źródłowe, aby Gradle wiedziała, gdzie je znaleźć.
Więcej informacji o konfigurowaniu i dostosowywaniu pliku kompilacji Gradle znajdziesz w artykule Konfigurowanie kompilacji.
Następnie określ, z których projektów bibliotek korzystasz.
Dzięki Gradle nie musisz już dodawać tych bibliotek jako projektów kodu źródłowego. Możesz się do nich odwoływać w bloku
dependencies{}
w pliku kompilacji. System kompilacji będzie obsługiwać te biblioteki za Ciebie, między innymi pobierać je, scalać w zasoby i scalać wpisy pliku manifestu. Ten przykład dodaje instrukcje deklaracji dla kilku bibliotek AndroidaX do blokudependencies{}
w pliku kompilacji.Odlotowe
... dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) // AndroidX libraries implementation 'androidx.core:core-ktx:1.13.1' implementation 'androidx.appcompat:appcompat:1.7.0' implementation 'androidx.cardview:cardview:1.0.0' implementation 'com.google.android.material:material:1.7.0' implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation 'androidx.leanback:leanback:1.1.0-rc02' implementation 'androidx.mediarouter:mediarouter:1.7.0' implementation 'androidx.palette:palette-ktx:1.0.0' implementation 'androidx.recyclerview:recyclerview:1.3.2' implementation 'androidx.annotation:annotation:1.8.0' // Note: these libraries require that the Google repository has been declared // in the pluginManagement section of the top-level build.gradle file. }
Kotlin
... dependencies { implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar")))) // AndroidX libraries implementation("androidx.core:core-ktx:1.13.1") implementation("androidx.appcompat:appcompat:1.7.0") implementation("androidx.cardview:cardview:1.0.0") implementation("com.google.android.material:material:1.7.0") implementation("androidx.gridlayout:gridlayout:1.0.0") implementation("androidx.leanback:leanback:1.1.0-rc02") implementation("androidx.mediarouter:mediarouter:1.7.0") implementation("androidx.palette:palette-ktx:1.0.0") implementation("androidx.recyclerview:recyclerview:1.3.2") implementation("androidx.annotation:annotation:1.8.0") // Note: these libraries require that the Google repository has been declared // in the pluginManagement section of the top-level build.gradle.kts file. }
- Zapisz plik
build.gradle
, a następnie zamknij projekt w IntelliJ. Przejdź do katalogu projektu i usuń katalog.idea
oraz wszystkie znajdujące się w nim pliki IML. - Uruchom Android Studio i kliknij Plik > Nowy > Importuj projekt.
- Znajdź katalog projektu, wybierz utworzony plik
build.gradle
lubbuild.gradle.kts
, a następnie kliknij OK, aby zaimportować projekt. - Kliknij Kompilacja > Utwórz projekt, aby przetestować plik kompilacji przez kompilację projektu i rozwiązać wszelkie znalezione błędy.
Dalsze kroki
Po przeniesieniu projektu do Android Studio więcej informacji o tworzeniu i uruchamianiu aplikacji w Android Studio znajdziesz w artykule Tworzenie i uruchamianie aplikacji.
W zależności od projektu i przepływu pracy możesz też dowiedzieć się więcej o kontroli wersji, zarządzaniu zależnościami i konfigurowaniu Android Studio. Aby zacząć korzystać z Android Studio, przeczytaj artykuł Poznaj Android Studio.
Skonfiguruj kontrolę wersji
Android Studio obsługuje różne systemy kontroli wersji, w tym Git, Mercurial i Subversion. Inne systemy kontroli wersji można dodać za pomocą wtyczek.
Jeśli aplikacja jest już kontrolowana nad źródłem, konieczne może być włączenie jej w Android Studio. W menu VCS kliknij Włącz integrację kontroli wersji i wybierz odpowiedni system kontroli wersji.
Jeśli aplikacja nie podlega kontroli nad źródłem, możesz ją skonfigurować po zaimportowaniu aplikacji do Android Studio. Za pomocą opcji menu w Android Studio VCS możesz włączyć obsługę VCS w odpowiednim systemie kontroli wersji, utworzyć repozytorium, zaimportować nowe pliki do kontroli wersji i wykonać inne operacje kontroli wersji:
- W menu VCS w Android Studio kliknij Włącz integrację kontroli wersji.
- Wybierz w menu system kontroli wersji, który chcesz powiązać z katalogiem głównym projektu, a następnie kliknij OK. W menu VCS znajdziesz teraz różne opcje kontroli wersji zależnie od wybranego systemu.
Uwaga: możesz też użyć opcji menu Plik > Ustawienia > Kontrola wersji, aby skonfigurować i zmodyfikować kontrolę wersji.
Więcej informacji na temat pracy z kontrolą wersji znajdziesz w dokumentacji IntelliJ dotyczącej kontroli wersji.
Podpisywanie aplikacji
Jeśli certyfikat debugowania był już używany, może zostać wykryty podczas procesu importowania. W takim przypadku Android Studio nadal będzie się odwoływać do tego certyfikatu. W przeciwnym razie konfiguracja debugowania korzysta z magazynu kluczy debugowania wygenerowanego przez Android Studio, który używa znanego hasła i klucza domyślnego ze znanym hasłem znajdującym się w polu $HOME/.android/debug.keystore
. Typ kompilacji do debugowania jest ustawiony na używanie tej konfiguracji do debugowania automatycznie podczas uruchamiania lub debugowania projektu w Android Studio.
Proces importu może również wykryć istniejący certyfikat wersji.
Jeśli nie zdefiniowano wcześniej certyfikatu wersji, dodaj konfigurację podpisywania wersji do pliku build.gradle
lub build.gradle.kts
albo użyj opcji menu Kompilacja > Wygeneruj podpisany pakiet APK, aby otworzyć Kreatora podpisanego pakietu APK. Więcej informacji o podpisywaniu aplikacji znajdziesz w artykule Podpisywanie aplikacji.
Dostosuj maksymalny rozmiar stosu w Android Studio
Domyślnie rozmiar stosu Android Studio nie może przekraczać 1280 MB. Jeśli pracujesz nad dużym projektem lub Twój system ma dużo pamięci RAM, możesz poprawić wydajność, zwiększając maksymalny rozmiar stosu.
Aktualizacje oprogramowania
Android Studio aktualizuje się niezależnie od wtyczki Gradle, narzędzi do kompilacji i narzędzi SDK. Możesz określić, których wersji chcesz używać w Android Studio.
Domyślnie Android Studio zapewnia automatyczne aktualizacje po opublikowaniu nowej wersji stabilnej. Możesz jednak wybrać częstsze aktualizacje i otrzymywać wersje przedpremierowe lub beta.
Więcej informacji o aktualizowaniu Android Studio oraz korzystaniu z wersji przedpremierowej i beta znajdziesz w artykule o aktualizacjach.