Ringkasan project

Sebuah project dalam Android Studio berisi segala hal yang mendefinisikan ruang kerja Anda 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 Lihat > Jendela Fitur > Project). Halaman ini menyediakan ringkasan komponen utama di dalam project Anda.

Modul

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

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

Anda dapat menambahkan modul baru ke project Anda dengan mengklik File > Baru > Modul Baru.

Android Studio menawarkan beberapa jenis modul yang khas:

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

Di jendela Buat Modul Baru, Android Studio menawarkan jenis modul aplikasi berikut:

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

Masing-masing menyediakan file esensial dan beberapa template kode yang sesuai untuk aplikasi atau jenis perangkat yang bersangkutan.

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

Modul fitur dinamis
Merepresentasikan fitur modular dari aplikasi Anda yang dapat memanfaatkan Pengiriman Dinamis Google Play. Misalnya, dengan modul fitur dinamis, Anda dapat menyediakan fitur tertentu aplikasi Anda secara on demand atau sebagai pengalaman instan kepada pengguna melalui Google Play Instan.

Untuk mempelajari lebih lanjut, baca Menambahkan dukungan untuk Pengiriman Dinamis.

Modul library
Menyediakan container untuk kode yang dapat digunakan kembali, yang dapat Anda gunakan sebagai dependensi dalam modul aplikasi lain atau impor ke dalam project lain. Secara struktural, modul library sama seperti modul aplikasi, tetapi saat telah dibuat, akan membuat file arsip kode sebagai ganti APK, jadi tidak dapat diinstal di perangkat.

Di jendela Buat Modul Baru, Android Studio menawarkan modul library berikut:

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

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, dan 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 itu boleh saja, karena Gradle juga merujuk modul sebagai project. Misalnya, jika Anda membuat modul library dan ingin menambahkannya sebagai dependensi ke modul aplikasi Android, Anda harus menyatakannya seperti berikut:

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

File project

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

  • Menampilkan semua file konfigurasi terkait build pada project dalam grup Skrip Gradle tingkat teratas.
  • Menampilkan semua file manifes untuk setiap modul dalam grup tingkat modul (jika Anda memiliki file manifes yang berbeda untuk beberapa ragam produk dan jenis build).
  • Menampilkan semua file resource alternatif dalam grup tunggal, bukan dalam folder terpisah per qualifier resource. Misalnya, semua versi kepadatan ikon peluncur Anda terlihat berdampingan.

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

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

Tampilan project Android

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

Jika Anda 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 sub-direktori berikut:
androidTest/
Berisi kode untuk pengujian instrumentasi yang dijalankan pada perangkat Android. Untuk informasi selengkapnya, lihat dokumentasi Pengujian Android.
main/
Berisi file set sumber "main": kode dan resource Android yang digunakan bersama oleh semua varian build (file untuk varian build lain berada dalam direktori saudara, seperti src/debug/ untuk jenis build debug).
AndroidManifest.xml
Menjelaskan sifat aplikasi dan masing-masing 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 yang dapat digambar, file tata letak, dan string UI. Lihat Resource Aplikasi untuk informasi selengkapnya.
assets/
Berisi file yang harus dikompilasi menjadi sebuah file .apk apa adanya. Anda dapat membuka direktori ini dengan cara yang sama seperti sistem file umumnya dengan 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 pada JVM host Anda.
build.gradle (modul)
Ini mendefinisikan konfigurasi build spesifik modul.
build.gradle (project)
Ini mendefinisikan konfigurasi build Anda 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 Anda.

Setelan struktur project

Untuk mengubah beragam setelan pada project Android Studio, buka dialog Struktur Project dengan mengklik File > Struktur Project. Isinya adalah bagian-bagian berikut:

  • Lokasi SDK: Menetapkan lokasi JDK, Android SDK, dan Android NDK yang digunakan project Anda.
  • Project: Menetapkan versi untuk Gradle dan plugin Android untuk Gradle, dan nama lokasi repositori.
  • Layanan Developer: Berisi setelan untuk komponen add-in Android Studio dari Google atau pihak ketiga lainnya. Lihat Layanan Developer, di bawah.
  • Modul: 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 Layanan Developer pada kotak dialog Struktur Project berisi halaman konfigurasi untuk sejumlah layanan yang dapat Anda gunakan dengan aplikasi. Bagian ini berisi halaman berikut:

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

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

Modul

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

  • Properti: Menentukan versi SDK dan fitur build yang digunakan untuk mengompilasi modul.
  • Penandatanganan: Menentukan sertifikat yang akan digunakan untuk menandatangani APK.
  • Ragam: Memungkinkan Anda membuat beberapa 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.
  • Jenis Build: Memungkinkan Anda membuat dan memodifikasi konfigurasi build, seperti yang dijelaskan di Mengonfigurasi Build Gradle. Secara default, setiap modul memiliki jenis build debug dan rilis, tetapi Anda dapat mendefinisikan yang lainnya jika perlu.
  • Dependensi: Mencantumkan library, file, dan dependensi modul untuk modul ini. Anda dapat menambahkan, memodifikasi, dan menghapus dependensi dari panel ini. Untuk informasi dependensi modul selengkapnya, lihat Mengonfigurasi Build Gradle.