Struktura projektu i manifest
Proszę poznać strukturę projektu Android, rolę pliku build.gradle i zasobów oraz plik AndroidManifest.xml, który deklaruje aplikację w systemie operacyjnym.
Struktura projektu i manifest to bezpłatna lekcja Android Academy na CoddyKit. To lekcja 1 z 7. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Android Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Android Academy zawiera 7 lekcji w sumie.
Pierwszy projekt Android
Po utworzeniu nowego projektu Android w Android Studio generowana jest określona struktura folderów. Zrozumienie tej struktury to pierwszy krok do produktywnego tworzenia aplikacji na Androida.
Każda aplikacja Android ma taki sam układ najwyższego poziomu — przyjrzyjmy mu się.
Struktura najwyższego poziomu
Projekt Android ma dwa główne moduły:
- app/ — moduł aplikacji (kod, zasoby, manifest)
- Pliki Gradle — konfiguracja systemu kompilacji
W folderze app/src/main/ spędzą Państwo większość czasu:
- java/ (lub kotlin/) — pliki źródłowe języka Kotlin
- res/ — układy, obrazy, napisy
- AndroidManifest.xml — plik konfiguracyjny aplikacji
Folder res/
Folder res/ zawiera wszystkie zasoby inne niż kod:
res/layout/— układy ekranów w XMLres/drawable/— obrazy i ikonyres/values/strings.xml— napisyres/values/colors.xml— definicje kolorówres/mipmap/— ikony uruchamiania aplikacji
Android generuje klasę o nazwie R, aby można było odwoływać się do zasobów w kodzie.
AndroidManifest.xml
Plik AndroidManifest.xml to najważniejszy plik konfiguracyjny. Informuje on system Android o:
- nazwie pakietu aplikacji (unikatowym identyfikatorze)
- istniejących aktywnościach
- aktywności wyświetlanej jako ekran startowy
- uprawnieniach wymaganych przez aplikację (aparat, internet itd.)
- minimalnym i docelowym poziomie API Androida
Struktura manifestu
Minimalny plik AndroidManifest.xml wygląda następująco:
<!-- AndroidManifest.xml -->
<manifest
xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission
android:name="android.permission.INTERNET" />
<application
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher">
<activity android:name=".MainActivity"
android:exported="true">
<intent-filter>
<!-- This is the launch activity -->
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>Pliki build.gradle
Gradle to system kompilacji. Istnieją dwa pliki build.gradle:
- Poziom projektu — ustawienia globalne, konfiguracja repozytoriów
- Poziom aplikacji (app/build.gradle) — zależności aplikacji, wersje SDK, wtyczki
Biblioteki dodaje się tutaj: implementation "com.google.code.gson:gson:2.10.1"
Najważniejsze pola app/build.gradle
Najważniejsze pola w pliku app/build.gradle:
compileSdk— interfejs API Androida, względem którego odbywa się kompilacjaminSdk— najstarsza obsługiwana wersja AndroidatargetSdk— wersja Androida, względem której aplikacja została przetestowanaversionCode— liczba całkowita zwiększana przy każdym wydaniuversionName— wersja czytelna dla użytkownika (np. "1.2.0")
Klasa R
Android automatycznie generuje klasę R, która mapuje każdy zasób na identyfikator liczbowy:
R.layout.activity_main— układ XML aplikacjiR.id.tvTitle— widok wewnątrz układuR.string.app_name— zasób tekstowyR.drawable.ic_logo— obraz
W ten sposób kod Kotlin łączy się z zasobami XML.
strings.xml a lokalizacja
Teksty widoczne dla użytkownika należy zawsze umieszczać w pliku res/values/strings.xml, zamiast wpisywać je bezpośrednio w kodzie. Umożliwia to lokalizację — Android automatycznie wybiera tekst w odpowiednim języku na podstawie ustawień regionalnych urządzenia.
Przykład: należy utworzyć plik res/values-tr/strings.xml dla tłumaczeń na język turecki.
Szybki test
Gdzie deklaruje się aktywność wyświetlaną przy pierwszym uruchomieniu aplikacji?
Podsumowanie: struktura projektu
Zna już Pan/Pani budowę projektu Android:
- app/src/main/kotlin/ — kod
- app/src/main/res/ — układy, obrazy, napisy
- AndroidManifest.xml — uprawnienia, aktywności, konfiguracja uruchamiania
- build.gradle — zależności i wersje SDK
- klasa
R— łączy kod z zasobami
Następnie: serce każdego ekranu Androida — aktywności i ich cykl życia.
Często zadawane pytania
Czy lekcja „Struktura projektu i manifest” jest bezpłatna?
Tak — pełny tekst „Struktura projektu i manifest” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Android Academy, przejdź na CoddyKit PRO. Kurs Android Academy zawiera 7 lekcji w sumie.
Co nauczysz się w „Struktura projektu i manifest”?
Proszę poznać strukturę projektu Android, rolę pliku build.gradle i zasobów oraz plik AndroidManifest.xml, który deklaruje aplikację w systemie operacyjnym. Ćwiczysz Android Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Android Academy?
Nie wymagamy żadnego doświadczenia. Android Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 7.
Ile czasu zajmuje lekcja „Struktura projektu i manifest”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Android Academy?
Tak. Każda lekcja Android Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Struktura projektu i manifest
- Aktywności i cykl życia
- Układy i widoki
- Obsługa danych wprowadzanych przez użytkownika
- Intencje i nawigacja
- Fragmenty
- Uprawnienia i żądania w czasie działania