Projekt w Android Studio zawiera wszystko, co definiuje obszar roboczy aplikacji, od kodu źródłowego i zasobów po kod testowy i konfiguracje kompilacji.
Gdy rozpoczniesz nowy projekt, Android Studio utworzy niezbędną strukturę wszystkich plików i wyświetli je w oknie Project (Projekt) w Android Studio. Aby otworzyć okno, wybierz Widok > Okna narzędzi > Projekt.
Na tej stronie znajdziesz omówienie najważniejszych komponentów w projekcie.
Moduły
Moduł to zbiór plików źródłowych i ustawień kompilacji, który umożliwia podzielenie projektu na odrębne jednostki funkcjonalne. Projekt może mieć jeden lub wiele modułów, a jeden moduł może używać innego modułu jako zależności. Każdy moduł możesz tworzyć, testować i debugować niezależnie. Pamiętaj, że w dokumentacji Gradle moduły mogą być nazywane „projektami” lub „podprojektami”.
Dodatkowe moduły są przydatne podczas tworzenia bibliotek kodu w ramach własnego projektu lub gdy chcesz utworzyć różne zestawy kodu i zasobów dla różnych typów urządzeń, takich jak telefony i urządzenia do noszenia, ale zachować wszystkie pliki w ramach tego samego projektu i udostępnić część kodu.
Aby dodać do projektu nowy moduł, kliknij Plik > Nowy > Nowy moduł.
Android Studio oferuje kilka różnych typów modułów:
- Moduł aplikacji na Androida
Zawiera kod źródłowy aplikacji, pliki zasobów i ustawienia na poziomie aplikacji, takie jak plik kompilacji na poziomie modułu i plik manifestu Androida. Gdy tworzysz nowy projekt, domyślny moduł aplikacji ma nazwę „app”.
Android Studio oferuje te typy modułów aplikacji:
- Telefony i tablety
- Automotive
- Wear OS
- Telewizja
Każdy moduł zawiera niezbędne pliki i szablony kodu odpowiednie dla danego typu aplikacji lub urządzenia.
Więcej informacji o dodawaniu modułu znajdziesz w artykule Dodawanie modułu do nowego urządzenia.
- Moduł funkcji
-
Represents a modularized feature of your app that can take advantage of Play
Feature Delivery. Na przykład za pomocą modułów funkcji możesz udostępniać użytkownikom określone funkcje aplikacji na żądanie lub w formie aplikacji błyskawicznych za pomocą Google Play Instant.
Android Studio oferuje te typy modułów funkcji:
- Moduł funkcji dynamicznych
- Moduł biblioteki funkcji dynamicznych
Więcej informacji znajdziesz w artykule o funkcji Play Feature Delivery.
- Moduł Biblioteka
Zawiera kontener z kodem wielokrotnego użytku, którego możesz używać jako zależności w innych modułach aplikacji lub importować do innych projektów. Moduł biblioteki jest strukturalnie taki sam jak moduł aplikacji, ale po skompilowaniu tworzy plik archiwum kodu zamiast pliku APK, więc nie można go zainstalować na urządzeniu.
W oknie Create New Module (Utwórz nowy moduł) Android Studio oferuje te typy modułów biblioteki:
- Biblioteka Androida: zawiera wszystkie typy plików obsługiwane w projekcie na Androida z wyjątkiem natywnego kodu C++, w tym kod źródłowy Java i Kotlin, zasoby i pliki manifestu. Wynikiem kompilacji jest plik archiwum Androida (AAR), który możesz dodać jako zależność do modułów aplikacji na Androida.
- Biblioteka natywna Androida: zawiera wszystkie typy plików obsługiwane w projekcie na Androida, podobnie jak biblioteka Androida. Biblioteki natywne Androida mogą jednak zawierać też natywny kod źródłowy C++. Wynikiem kompilacji jest plik archiwum Androida (AAR), który możesz dodać jako zależność do modułów aplikacji na Androida.
- Biblioteka Java lub Kotlin: zawiera tylko pliki źródłowe Kotlin lub Java. Wynikiem kompilacji jest plik archiwum Java (JAR), który możesz dodać jako zależność do modułów aplikacji na Androida lub innych projektów w języku Kotlin lub Java.
- Benchmark > Microbenchmark: zawiera pliki potrzebne do regularnego pomiaru wydajności kodu i generowania wyników testów porównawczych. Moduły mikropomiarów są szczególnie przydatne do pomiaru wydajności mniejszych fragmentów kodu, które są używane wielokrotnie. Więcej informacji znajdziesz w artykule Microbenchmark – informacje.
Gdy tworzysz moduł biblioteki i chcesz dodać go jako zależność do modułu aplikacji na Androida, musisz zadeklarować go w ten sposób:
Groovy
dependencies { implementation project(':my-library-module') }
Kotlin
dependencies { implementation(project(":my-library-module")) }
- Moduł testowy
Oddziela testy od reszty kodu. Moduł testowy możesz skonfigurować tak, aby kierować go na konkretne warianty kompilacji.
Android Studio oferuje te typy modułów testowych:
- Generator profili podstawowych: profile podstawowe sprawiają, że interakcje użytkownika, takie jak nawigacja i przewijanie, są płynniejsze przy pierwszym uruchomieniu. Twórz profile bazowe dla najważniejszych ścieżek użytkowników, aby poprawić wydajność aplikacji i komfort użytkowników.
- Benchmark > Macrobenchmark: zawiera pliki potrzebne do regularnego pomiaru wydajności kodu i generowania wyników testów porównawczych. Moduły testów porównawczych na dużą skalę są szczególnie przydatne do pomiaru wydajności większych przypadków użycia aplikacji, takich jak przewijanie listy lub inne manipulacje interfejsem. Więcej informacji znajdziesz w artykule Pisanie testu Macrobenchmark.
Pliki projektu

Domyślnie Android Studio wyświetla pliki projektu w widoku Android. Ten widok nie odzwierciedla rzeczywistej hierarchii plików na dysku. Zamiast tego jest on uporządkowany według modułów i typów plików, aby ułatwić poruszanie się między kluczowymi plikami źródłowymi projektu. Ukrywa on też niektóre pliki lub katalogi, które nie są często używane.
Niektóre różnice strukturalne między widokiem Androida a strukturą na dysku polegają na tym, że widok Androida:
- Wyświetla wszystkie pliki konfiguracyjne projektu związane z kompilacją w grupie najwyższego poziomu Skrypt Gradle.
- Wyświetla wszystkie pliki manifestu dla każdego modułu w grupie na poziomie modułu, jeśli masz różne pliki manifestu dla różnych wersji produktu i typów kompilacji.
- Wyświetla wszystkie alternatywne pliki zasobów w jednej grupie zamiast w osobnych folderach według kwalifikatora zasobu. Na przykład wszystkie wersje ikony programu uruchamiającego o różnej gęstości są widoczne obok siebie.
W każdym module aplikacji na Androida pliki są podzielone na te grupy:
- manifesty
- Zawiera plik
AndroidManifest.xml
. - java
- Zawiera pliki kodu źródłowego Kotlin i Java rozdzielone nazwami pakietów, w tym kod testu JUnit.
- res
- Zawiera wszystkie zasoby niebędące kodem, takie jak ciągi tekstowe interfejsu i obrazy bitmapowe, podzielone na odpowiednie podkatalogi. Więcej informacji o możliwych typach zasobów znajdziesz w artykule Omówienie zasobów aplikacji.
Widok projektu

Aby zobaczyć rzeczywistą strukturę plików projektu, w tym wszystkie pliki ukryte w widoku Android, w menu u góry okna Project wybierz Project.
Gdy wybierzesz widok Projekt, zobaczysz znacznie więcej plików i katalogów, w tym:
module-name/
-
build/
- Zawiera dane wyjściowe kompilacji.
libs/
- Zawiera biblioteki prywatne.
src/
- Zawiera wszystkie pliki kodu i zasobów modułu w tych podkatalogach:
androidTest/
- Zawiera kod testów instrumentacyjnych, które są przeprowadzane na urządzeniu z Androidem. Więcej informacji znajdziesz w artykule Testowanie w Android Studio.
cpp/
- Zawiera natywny kod C lub C++ korzystający z Java Native Interface (JNI). Więcej informacji znajdziesz w dokumentacji Android NDK.
main/
- Zawiera „główne” pliki zestawu źródeł: kod Androida i zasoby udostępniane przez wszystkie warianty kompilacji (pliki dla innych wariantów kompilacji znajdują się w katalogach równorzędnych, np.
src/debug/
w przypadku typu kompilacji debugowania):AndroidManifest.xml
- Opisuje charakter aplikacji i każdego z jej komponentów. Więcej informacji znajdziesz w omówieniu pliku manifestu aplikacji.
java/
- Zawiera źródła kodu Kotlin lub Java albo oba, jeśli aplikacja ma zarówno kod źródłowy Kotlin, jak i Java.
kotlin/
- Zawiera tylko źródła kodu Kotlin.
res/
- Zawiera zasoby aplikacji, takie jak pliki rysunków i pliki ciągów interfejsu. Więcej informacji znajdziesz w omówieniu zasobów aplikacji.
assets/
- Zawiera pliki, które mają być skompilowane do pliku APK w stanie nienaruszonym. Na przykład jest to dobre miejsce na tekstury i dane gry. Po tym katalogu możesz poruszać się tak samo jak po typowym systemie plików, używając identyfikatorów URI i odczytując pliki jako strumień bajtów za pomocą funkcji
AssetManager
.
test/
- Zawiera kod testów lokalnych, które są uruchamiane w JVM hosta.
build.gradle
lubbuild.gradle.kts
(moduł)- Określa konfiguracje kompilacji specyficzne dla modułu.
build.gradle
to prawidłowa nazwa pliku, jeśli używasz Groovy jako języka skryptu kompilacji, abuild.gradle.kts
, jeśli używasz skryptu Kotlin.
build.gradle
lubbuild.gradle.kts
(projekt)- Określa konfigurację kompilacji, która ma zastosowanie do wszystkich modułów.
build.gradle
to prawidłowa nazwa pliku, jeśli używasz Groovy jako języka skryptu kompilacji, abuild.gradle.kts
, jeśli używasz skryptu Kotlin. Ten plik jest integralną częścią projektu, więc przechowuj go w systemie kontroli wersji razem z innym kodem źródłowym.Więcej informacji o innych plikach kompilacji znajdziesz w artykule Konfigurowanie kompilacji.
Ustawienia struktury projektu
Aby zmienić różne ustawienia projektu Android Studio, otwórz okno Struktura projektu, klikając Plik > Struktura projektu. Zawiera on te sekcje:
- Projekt: ustawia wersję Gradle i wtyczki Androida do obsługi Gradle oraz nazwę lokalizacji repozytorium.
- Lokalizacja pakietu SDK: określa lokalizację pakietów JDK, Android SDK i Android NDK używanych w projekcie.
- Zmienne: umożliwia edytowanie zmiennych używanych w skryptach kompilacji.
-
Moduły: umożliwia edytowanie konfiguracji kompilacji poszczególnych modułów, w tym docelowego i minimalnego pakietu SDK, podpisu aplikacji i zależności bibliotek. Strona ustawień każdego modułu jest podzielona na te karty:
- Właściwości: określa wersje pakietu SDK i narzędzi do kompilacji, które mają być używane do kompilowania modułu.
- Podpisywanie: określa certyfikat, który ma być używany do podpisywania aplikacji.
-
Zależności: lista zależności bibliotek, plików i modułów tego modułu. W tym panelu możesz dodawać, modyfikować i usuwać zależności. Więcej informacji o zależnościach modułów znajdziesz w artykule Konfigurowanie wariantów kompilacji.
-
Warianty kompilacji: umożliwiają konfigurowanie różnych wersji i typów kompilacji projektu.
-
Wersje: umożliwiają tworzenie wielu wersji kompilacji, z których każda określa zestaw ustawień konfiguracji, takich jak minimalna i docelowa wersja pakietu SDK modułu oraz kod wersji i nazwa wersji.
Możesz na przykład zdefiniować jedną wersję, która ma minimalny pakiet SDK w wersji 21 i docelowy pakiet SDK w wersji 29, oraz inną wersję, która ma minimalny pakiet SDK w wersji 24 i docelowy pakiet SDK w wersji 33.
- Typy kompilacji: umożliwia tworzenie i modyfikowanie konfiguracji kompilacji zgodnie z opisem w artykule Konfigurowanie wariantów kompilacji. Domyślnie każdy moduł ma typy kompilacji debug i release, ale w razie potrzeby możesz zdefiniować więcej typów.
-