Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Ringkasan project

Sebuah project di Android Studio berisi semua hal yang mendefinisikan ruang kerja untuk aplikasi, dari kode sumber dan aset hingga kode pengujian dan konfigurasi build. Saat Anda memulai project baru, Android Studio akan membuat struktur yang diperlukan untuk semua file dan membuatnya terlihat di jendela Project di sebelah kiri IDE (klik View > Tool Windows > Project). Halaman ini menyediakan ringkasan komponen utama dalam project.

Modul

Modul adalah kumpulan file sumber dan setelan build yang memungkinkan Anda membagi project ke dalam unit fungsi terpisah. Project dapat memiliki satu atau beberapa modul dan satu modul dapat menggunakan modul lain sebagai dependensi. Setiap modul dapat di-build, diuji, dan di-debug secara independen.

Modul tambahan sering kali berguna saat membuat library kode dalam project Anda sendiri atau jika ingin membuat set kode dan resource berbeda untuk berbagai jenis perangkat, seperti ponsel dan perangkat wearable, tetapi menyimpan semua file yang tercakup dalam project yang sama dan berbagi sebagian kode.

Anda dapat menambahkan modul baru ke project dengan mengklik File > New > New Module.

Android Studio menawarkan beberapa jenis modul berbeda:

Modul aplikasi Android
Menyediakan container untuk kode sumber aplikasi, file resource, dan setelan level aplikasi seperti file build level modul dan file manifes Android. Saat membuat project baru, nama modul default adalah "app".

Di jendela Create New Module, Android Studio menawarkan jenis modul aplikasi berikut:

  • Modul Ponsel & Tablet
  • Modul Wear OS
  • Modul Android TV
  • Modul Glass

Modul tersebut menyediakan file penting dan beberapa template kode yang sesuai untuk masing-masing aplikasi atau jenis perangkat.

Untuk informasi selengkapnya tentang penambahan modul, baca Menambahkan Modul untuk Perangkat Baru.

Modul fitur
Mewakili fitur termodulasi aplikasi yang dapat memanfaatkan Penayangan Fitur Play. Misalnya, dengan modul fitur, Anda dapat menyediakan fitur tertentu di aplikasi secara on demand atau sebagai pengalaman instan kepada pengguna melalui Google Play Instan.

Untuk mempelajari lebih lanjut, baca Menambahkan dukungan untuk Penayangan Fitur Play.

Modul library
Menyediakan container untuk kode yang dapat digunakan kembali, yang dapat digunakan sebagai dependensi dalam modul aplikasi lain atau diimpor ke dalam project lain. Secara struktural, modul library sama seperti modul aplikasi, tetapi setelah di-build, modul akan membuat file arsip kode dan bukan APK, sehingga tidak dapat diinstal di perangkat.

Di jendela Create New Module, Android Studio menawarkan modul library berikut:

  • Android Library: Jenis library ini dapat berisi semua jenis file yang didukung dalam project Android, termasuk kode sumber, resource, dan file manifes. Hasil build adalah file Android ARchive (AAR) yang dapat ditambahkan sebagai dependensi untuk modul aplikasi Android.
  • Java Library: Jenis library ini hanya dapat berisi file sumber Java. Hasil build adalah file Java Archive (JAR) yang dapat ditambahkan sebagai dependensi untuk modul aplikasi Android atau project Java lainnya.
Modul Google Cloud
Menyediakan container untuk kode backend Google Cloud. Modul ini memiliki kode dan dependensi yang diperlukan untuk backend App Engine Java yang menggunakan HTTP biasa, Cloud Endpoints, dan Cloud Messaging untuk menghubungkan ke aplikasi. Anda dapat mengembangkan backend untuk menyediakan layanan cloud yang diperlukan aplikasi.

Penggunaan Android Studio untuk mengembangkan modul Google Cloud memungkinkan Anda mengelola kode aplikasi dan kode backend dalam project yang sama. Anda juga dapat menjalankan dan menguji kode backend secara lokal, serta menggunakan Android Studio untuk men-deploy modul Google Cloud.

Untuk informasi selengkapnya tentang cara menjalankan dan men-deploy modul Google Cloud, lihat Menjalankan, Menguji, dan Men-deploy Backend.

Sebagian orang juga merujuk modul sebagai sub-project dan hal tersebut bukan masalah, karena Gradle juga merujuk modul sebagai project. Misalnya, bila Anda membuat modul library dan ingin menambahkannya sebagai dependensi ke modul aplikasi Android, Anda harus mendeklarasikannya seperti berikut:

dependencies {
  compile project(':my-library-module')
}

File project

Secara default, Android Studio menampilkan file project dalam tampilan Android. Tampilan ini tidak mencerminkan hierarki file aktual pada disk, tetapi tersusun menurut modul dan jenis file untuk menyederhanakan navigasi antar-file sumber utama project, dengan menyembunyikan file atau direktori tertentu yang tidak umum digunakan. Sebagian perubahan struktural yang dibandingkan dengan struktur pada disk mencakup berikut ini:

  • Menampilkan semua file konfigurasi terkait build pada project dalam grup Gradle Script level teratas.
  • Menampilkan semua file manifes untuk setiap modul dalam grup level modul (bila Anda memiliki file manifes berbeda untuk berbagai ragam produk dan jenis build).
  • Menampilkan semua file resource alternatif dalam grup tunggal, bukan dalam folder terpisah per penentu resource. Misalnya, semua versi kepadatan ikon peluncur terlihat berdampingan.

Dalam setiap modul aplikasi Android, file ditampilkan dalam grup-grup berikut:

manifests
Berisi file AndroidManifest.xml.
java
Berisi file kode sumber Java, yang dipisahkan menurut nama paket, termasuk kode pengujian JUnit.
res
Berisi semua resource non-kode, seperti tata letak XML, string UI, dan gambar bitmap, yang dibagi ke dalam masing-masing sub-direktori. Untuk informasi selengkapnya tentang semua jenis resource yang memungkinkan, lihat Menyediakan Resource.

Tampilan project Android

Untuk melihat struktur file project sesungguhnya termasuk semua file yang disembunyikan dari tampilan Android, pilih Project dari menu drop-down di bagian atas jendela Project.

Jika memilih tampilan Project, Anda dapat melihat banyak file dan direktori lainnya. Yang terpenting di antaranya adalah sebagai berikut:

module-name/
build/
Berisi output build.
libs/
Berisi library pribadi.
src/
Berisi semua file kode dan resource untuk modul dalam subdirektori berikut:
androidTest/
Berisi kode untuk uji instrumentasi yang dijalankan di perangkat Android. Untuk informasi selengkapnya, lihat dokumentasi Pengujian Android.
main/
Berisi file set sumber "utama": kode dan resource Android yang digunakan bersama oleh semua varian build (file untuk varian build lain berada dalam direktori yang setara, seperti src/debug/ untuk jenis build debug).
AndroidManifest.xml
Menjelaskan sifat aplikasi dan setiap komponennya. Untuk informasi selengkapnya, lihat dokumentasi AndroidManifest.xml.
java/
Berisi sumber kode Java.
jni/
Berisi kode native yang menggunakan Java Native Interface (JNI). Untuk informasi selengkapnya, lihat dokumentasi Android NDK.
gen/
Berisi file Java yang dihasilkan oleh Android Studio, seperti file R.java dan antarmuka yang dibuat dari file AIDL.
res/
Berisi resource aplikasi, seperti file drawable, file tata letak, dan string UI. Lihat Resource Aplikasi untuk informasi selengkapnya.
assets/
Berisi file yang harus dikompilasi menjadi file .apk apa adanya. Anda dapat membuka direktori ini dengan cara yang sama seperti sistem file umumnya menggunakan URI dan membaca file sebagai aliran byte menggunakan AssetManager . Misalnya, inilah lokasi yang bagus untuk tekstur dan data game.
test/
Berisi kode untuk pengujian lokal yang dijalankan di JVM host.
build.gradle (modul)
Ini mendefinisikan konfigurasi build khusus modul.
build.gradle (project)
Ini mendefinisikan konfigurasi build yang berlaku untuk semua modul. File ini integral bagi project, jadi Anda harus menyimpannya dalam kontrol revisi bersama semua kode sumber lainnya.

Untuk informasi tentang file build lainnya, lihat Mengonfigurasi Build.

Setelan struktur project

Untuk mengubah berbagai setelan pada project Android Studio, buka dialog Project Structure dengan mengklik File > Project Structure. Dialog ini berisi bagian-bagian berikut:

  • SDK Location: Menetapkan lokasi JDK, Android SDK, dan Android NDK yang digunakan project.
  • Project: Menetapkan versi untuk Gradle dan plugin Android untuk Gradle, serta nama lokasi repositori.
  • Developer Services: Berisi setelan untuk komponen add-in Android Studio dari Google atau pihak ketiga lainnya. Lihat Layanan Developer, di bawah.
  • Modules: Memungkinkan Anda mengedit konfigurasi build khusus modul, termasuk SDK minimum dan target, tanda tangan aplikasi, dan dependensi library. Lihat Modul, di bawah.

Layanan developer

Bagian Developer Services pada kotak dialog Project Structure berisi halaman konfigurasi untuk sejumlah layanan yang dapat digunakan dengan aplikasi. Bagian ini berisi halaman berikut:

  • Google AdMob: Memungkinkan Anda mengaktifkan komponen Google AdMob dari Google, yang membantu Anda memahami pengguna dan menampilkan iklan yang disesuaikan.
  • Analytics: Memungkinkan Anda mengaktifkan Google Analytics, yang membantu Anda mengukur interaksi pengguna dengan aplikasi di berbagai perangkat dan lingkungan.
  • Authentication: Memungkinkan pengguna menggunakan Login dengan Google untuk login ke aplikasi menggunakan akun Google.
  • Cloud: Memungkinkan Anda mengaktifkan layanan berbasis cloud Firebase untuk aplikasi.
  • Notifications: Memungkinkan Anda menggunakan Google Cloud Messaging untuk berkomunikasi antara aplikasi dan server.

Dengan mengaktifkan salah satu layanan ini, Android Studio dapat menambahkan dependensi dan izin yang diperlukan ke aplikasi Anda. Setiap halaman konfigurasi mencantumkan tindakan ini dan tindakan lainnya yang dilakukan Android Studio jika Anda mengaktifkan layanan terkait.

Modul

Bagian setelan Modules memungkinkan Anda mengubah opsi konfigurasi untuk setiap modul project. Setiap halaman setelan modul dibagi ke dalam tab berikut:

  • Properties: Menentukan versi SDK dan alat build yang digunakan untuk mengompilasi modul.
  • Signing: Menentukan sertifikat yang akan digunakan untuk menandatangani APK.
  • Flavors: Memungkinkan Anda membuat beberapa flavors (ragam) build, dengan setiap ragam menentukan sekumpulan setelan konfigurasi, seperti versi SDK minimum dan target, serta kode versi dan nama versi. Misalnya, Anda mungkin dapat mendefinisikan satu ragam yang memiliki SDK minimum 15 dan SDK target 21, dan ragam lain yang memiliki SDK minimum 19 dan SDK target 23.
  • Build Types: Memungkinkan Anda membuat dan memodifikasi konfigurasi build, sebagaimana dijelaskan dalam Mengonfigurasi Build Gradle. Secara default, setiap modul memiliki jenis build debug dan rilis, tetapi Anda dapat mendefinisikan yang lainnya jika perlu.
  • Dependencies: Mencantumkan library, file, dan dependensi modul untuk modul ini. Anda dapat menambahkan, mengubah, dan menghapus dependensi dari panel ini. Untuk informasi selengkapnya tentang dependensi modul, lihat Mengonfigurasi Build Gradle.