Projelere genel bakış

Android Studio'daki proje, kaynak kodu ve öğelerden test kodu ve derleme yapılandırmalarına kadar bir uygulama için çalışma alanınızı tanımlayan her şeyi içerir.

Yeni bir projeye başladığınızda, Android Studio tüm dosyalarınız için gerekli yapıyı oluşturur ve dosyalarınızı Android Studio'daki Proje penceresinde görünür hale getirir. Pencereyi açmak için Görünüm > Araç Pencereleri > Proje'yi seçin.

Bu sayfada projenizin temel bileşenlerine genel bir bakış sunulmaktadır.

Modüller

Modül, projenizi farklı işlev birimlerine ayırmanızı sağlayan kaynak dosyalar ve derleme ayarlarından oluşan bir koleksiyondur. Projenizde bir veya daha fazla modül bulunabilir ve bir modül bağımlılık olarak başka bir modülü kullanabilir. Her modülü bağımsız olarak derleyebilir, test edebilir ve hata ayıklayabilirsiniz.

Ek modüller, kendi projenizde kod kitaplıkları oluştururken veya telefon ve giyilebilir cihazlar gibi farklı cihaz türleri için farklı kod ve kaynak grupları oluşturmak, ancak tüm dosyaları aynı proje kapsamında tutup bir miktar kod paylaşmak istediğinizde kullanışlıdır.

Projenize yeni bir modül eklemek için Dosya > Yeni > Yeni Modül'ü tıklayın.

Android Studio birkaç farklı modül türü sunar:

Android uygulama modülü
Uygulamanızın kaynak kodu, kaynak dosyaları ve uygulama düzeyindeki ayarlar (ör. modül düzeyinde derleme dosyası ve Android Manifest dosyası) için bir kapsayıcı sağlar. Yeni bir proje oluşturduğunuzda, varsayılan uygulama modülüne "uygulama" adı verilir.

Android Studio aşağıdaki uygulama modülü türlerini sunar:

  • Telefon ve Tablet
  • Otomotiv
  • Wear OS
  • Televizyon
  • Temel Profil Oluşturucu
  • Karşılaştırma

Her modülde, ilgili uygulama veya cihaz türü için uygun olan temel dosyalar ve bazı kod şablonları sağlanır.

Modül ekleme hakkında daha fazla bilgi için Yeni cihaz için modül ekleme bölümünü okuyun.

Özellik modülü
Uygulamanızın Play Feature Delivery'den yararlanabilecek modüler hale getirilmiş bir özelliğini temsil eder. Örneğin, özellik modülleriyle kullanıcılarınıza uygulamanızın belirli özelliklerini isteğe bağlı olarak veya Google Play Instant aracılığıyla hazır uygulama deneyimi olarak sağlayabilirsiniz.

Android Studio, aşağıdaki özellik modülü türlerini sunar:

  • Dinamik Özellik Modülü
  • Anında Dinamik Özellik Kitaplığı Modülü

Daha fazla bilgi için Play Özellik Dağıtımı'nı okuyun.

Kitaplık modülü
Yeniden kullanılabilir kodunuz için başka uygulama modüllerine bağımlılık olarak kullanabileceğiniz veya başka projelere içe aktarabileceğiniz bir container sağlar. Yapısal olarak kitaplık modülü, uygulama modülüyle aynıdır ancak derlendiğinde APK yerine bir kod arşivi dosyası oluşturur. Bu nedenle, bir cihaza yüklenemez.

Yeni Modül Oluştur penceresinde, Android Studio aşağıdaki kitaplık modülü türlerini sunar:

  • Android Kitaplığı: Java ve Kotlin kaynak kodu, kaynaklar ve manifest dosyaları da dahil olmak üzere yerel C++ kodu hariç, Android projesinde desteklenen tüm dosya türlerini içerir. Derleme sonucu, Android uygulama modülleriniz için bağımlılık olarak ekleyebileceğiniz bir Android Arşiv (AAR) dosyasıdır.
  • Android Yerel Kitaplık: Android Kitaplığı'na benzer şekilde, bir Android projesinde desteklenen tüm dosya türlerini içerir. Ancak Android Yerel Kitaplıkları yerel C++ kaynak kodunu da içerebilir. Derleme sonucu, Android uygulama modülleriniz için bağımlılık olarak ekleyebileceğiniz bir Android Arşiv (AAR) dosyasıdır.
  • Java veya Kotlin Kitaplığı: Yalnızca Kotlin veya Java kaynak dosyalarını içerir. Derleme sonucu, Android uygulama modülleriniz veya diğerKotlin ya da Java projeleri için bağımlılık olarak ekleyebileceğiniz bir Java Arşiv (JAR) dosyasıdır.

Gradle'da modüller olarak proje terimi kullanılır. Bu nedenle modüller bazen alt proje olarak da adlandırılır.

Bir kitaplık modülü oluşturup bunu Android uygulama modülünüze bağımlılık olarak eklemek istediğinizde, bunu aşağıdaki gibi bildirmeniz gerekir:

Modern

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

Kotlin

dependencies {
    implementation(project(":my-library-module"))
}

Proje dosyaları

Android Studio, varsayılan olarak proje dosyalarınızı Android görünümünde görüntüler. Bu görünüm, diskteki fiili dosya hiyerarşisini yansıtmaz. Bunun yerine, yaygın olarak kullanılmayan belirli dosya veya dizinleri gizleyerek projenizin önemli kaynak dosyaları arasında gezinmeyi kolaylaştırmak için modüllere ve dosya türlerine göre düzenlenir.

Android görünümü ile disk üzerindeki yapı arasındaki yapısal farklardan bazıları Android görünümüdür:

  • Projenin tüm derleme ile ilgili yapılandırma dosyalarını üst düzey bir Gradle Komut Dosyası grubunda gösterir.
  • Farklı ürün çeşitleri ve derleme türleri için farklı manifest dosyalarınız olduğunda, modül düzeyindeki bir grupta her bir modülün tüm manifest dosyalarını gösterir.
  • Her bir kaynak niteleyici için ayrı klasörlerde değil, tüm alternatif kaynak dosyaları tek bir grupta gösterilir. Örneğin, başlatıcı simgenizin tüm yoğunluk sürümleri yan yana görünür.

Her Android uygulama modülünde, dosyalar aşağıdaki gruplarda gösterilir:

manifestler
AndroidManifest.xml dosyasını içerir.
Java
JUnit test kodu dahil olmak üzere paket adlarıyla ayrılmış Kotlin ve Java kaynak kodu dosyalarını içerir.
çözünürlük
Kullanıcı arayüzü dizeleri ve bit eşlem görüntüleri gibi kod dışı tüm kaynakları, ilgili alt dizinlere bölünmüş şekilde içerir. Olası kaynak türleri hakkında daha fazla bilgi için Uygulama kaynaklarına genel bakış konusuna bakın.

Proje görünümü

Android görünümünden gizlenmiş tüm dosyalar dahil olmak üzere projenin gerçek dosya yapısını görmek için Proje penceresinin üst kısmındaki menüden Proje'yi seçin.

Proje görünümünü seçtiğinizde aşağıdakiler de dahil olmak üzere çok daha fazla dosya ve dizin görebilirsiniz:

module-name/
build/
Derleme çıktılarını içerir.
libs/
Özel kitaplıklar içeriyor.
src/
Şu alt dizinlerde modülün tüm kod ve kaynak dosyalarını içerir:
androidTest/
Android cihazda çalıştırılan araç testlerine yönelik kod içerir. Daha fazla bilgi için Android Studio'da test etme bölümüne bakın.
cpp/
Java Yerel Arayüzü (JNI) kullanan yerel C veya C++ kodu içerir. Daha fazla bilgi için Android NDK belgelerine bakın.
main/
"Ana" kaynak grubu dosyalarını içerir: Android kodu ve tüm derleme varyantları tarafından paylaşılan kaynaklar (diğer derleme varyantlarının dosyaları, hata ayıklama derleme türü için src/debug/ gibi eşdüzey dizinlerde bulunur):
AndroidManifest.xml
Uygulamanın yapısını ve bileşenlerini açıklar. Daha fazla bilgi için uygulama manifestine genel bakışı inceleyin.
java/
Uygulamanız hem Kotlin hem de Java kaynak koduna sahipse Kotlin veya Java kod kaynakları ya da her ikisini içeriyor.
kotlin/
Yalnızca Kotlin kod kaynaklarını içerir.
res/
Çekilebilir dosyalar ve kullanıcı arayüzü dize dosyaları gibi uygulama kaynakları içerir. Daha fazla bilgi için uygulama kaynaklarına genel bakış konusuna göz atın.
assets/
Olduğu gibi bir APK dosyası halinde derlenecek dosyaları içerir. Örneğin, dokular ve oyun verileri için iyi bir konumdur. URI'ları kullanarak bu dizinde tipik bir dosya sistemiyle aynı şekilde gezinebilir ve AssetManager ile dosyaları bayt akışı şeklinde okuyabilirsiniz.
test/
Ana makinenizin JVM'sinde çalıştırılan yerel testler için kod içerir.
build.gradle veya build.gradle.kts (modül)
Bu bölüm, modüle özel derleme yapılandırmalarını tanımlar. Derleme komut dosyası diliniz olarak Groovy kullanıyorsanız doğru dosya adı build.gradle, Kotlin komut dosyası kullanıyorsanız build.gradle.kts olmalıdır.
build.gradle veya build.gradle.kts (proje)
Bu ayar, tüm modüller için geçerli olan derleme yapılandırmanızı tanımlar. build.gradle, derleme komut dosyası diliniz olarak Groovy kullanıyorsanız doğru dosya adıdır. Kotlin komut dosyası kullanıyorsanız build.gradle.kts bu addır. Bu dosya projenin ayrılmaz bir parçasıdır. Bu nedenle, diğer tüm kaynak kodlarıyla düzeltme kontrolünde tutun.

Diğer derleme dosyaları hakkında bilgi edinmek için Derlemenizi yapılandırma bölümüne bakın.

Proje yapısı ayarları

Android Studio projenizin çeşitli ayarlarını değiştirmek için Dosya > Proje Yapısı'nı tıklayarak Proje Yapısı iletişim kutusunu açın. Aşağıdaki bölümleri içerir:

  • Proje: Gradle ve Android Gradle eklentisi sürümü ile depo konumu adını ayarlar.
  • SDK Konumu: Projenizde kullanılan JDK, Android SDK ve Android NDK'nın konumunu belirler.
  • Değişkenler: Derleme komut dosyalarınızda kullanılan değişkenleri düzenlemenizi sağlar.
  • Modüller: Hedef ve minimum SDK, uygulama imzası ve kitaplık bağımlılıkları dahil modüle özel derleme yapılandırmalarını düzenlemenizi sağlar. Her modülün ayarlar sayfası aşağıdaki sekmelere ayrılmıştır:
    • Özellikler: SDK'nın sürümlerini ve modülü derlemek için kullanılacak derleme araçlarını belirtir.
    • İmzalama: Uygulamanızı imzalamak için kullanılacak sertifikayı belirtir.
  • Bağımlılıklar: Bu modül için kitaplık, dosya ve modül bağımlılıklarını listeler. Bu bölmeden bağımlılıkları ekleyebilir, değiştirebilir ve silebilirsiniz. Modül bağımlılıkları hakkında daha fazla bilgi için Derleme varyantlarını yapılandırma bölümüne bakın.

  • Varyant Oluşturma: Projeniz için farklı aromalar yapılandırmanıza ve derleme türleri oluşturmanıza olanak tanır.

    • Aromalar: Birden fazla derleme çeşni oluşturmanıza olanak tanır. Her bir aroma, modülün minimum ve hedef SDK sürümü ile sürüm kodu ve sürüm adı gibi bir dizi yapılandırma ayarını belirtir.

      Örneğin, minimum SDK 21 ve hedef SDK 29 olan bir çeşni, minimum SDK 24 ve hedef SDK'sı 33 olan başka bir aroma tanımlayabilirsiniz.

    • Derleme Türleri: Derleme varyantlarını yapılandırma bölümünde açıklandığı gibi derleme yapılandırması oluşturmanıza ve değiştirmenize olanak tanır. Varsayılan olarak her modülde debug ve release derleme türü vardır ve gerektiğinde daha fazla derleme türü tanımlayabilirsiniz.