Android projeleri, uygulamanızın kullandığı derlemeyle ilgili birçok dosya ve dizin yapısı içerir uygulama kaynağınızı ve kaynaklarınızı düzenleyin. Sıradaki adım genel yapıya ve temel adımlara göz atacağız. önemli bir rol oynar.
Bu tabloda, bir Android projesindeki tipik dosyalar listelenmektedir. Her birinin açıklaması dosya veya dizinde hangi içeriğin ait olduğu ile ilgili notlar bulunur. En iyi ve bu açıklamalar bir projeyle eşleşmeyebilir indirdiğiniz veya internet üzerinden indirdiğiniz içerikler.
Derleme dosyalarınızı yazarken bildirimli yaklaşımdan yararlanın: mantık ve görev inşa edin tanımlar yalnızca eklentilerde görünür. Derleme mantığını eklentilerle sınırlandırarak derleme dosyaları, anlaşılması için daha doğrudan olan veri bildirimlerine dönüşür düzenlemenizi sağlar. Gelecek sürümler aşağıdaki gibi alternatif bir spesifikasyon içerebilir: Declarative Gradle (Açıklayıcı Gradle), dosyası olarak da kaydedebilir.
Klasör/Dosya |
Kullanım |
---|---|
.gradle/ |
Gradle proje önbellek dizini Gradle tarafından yönetilir ve indirilen Gradle dağıtımı, proje önbelleği ve yapılandırma dosyalarını içerir. Bu dizindeki dosyaları değiştirmeyin! |
.fikir/ |
Android Studio projesi meta verileri Bu dizindeki dosyaları değiştirmeyin! |
derleme.gradle(.kts) |
Yalnızca alt projeler genelinde ortak bir eklenti sınıf yolu oluşturmak için eklenti bildirimleri içermelidir. Diğer kod, ayarlarda veya iç içe yerleştirilmiş proje düzeyinde derleme dosyalarında bulunmalıdır. |
gradle.properties |
Yığın boyutu, önbelleğe alma ve paralel yürütme gibi Gradle derleme ortamı özelliklerini kontrol eden Gradle özelliklerini içerir. Eklenip daha sonra AGP DSL'de yapılacak değişiklikleri azaltmak için bazı geçici Android özellikleri burada tanımlanmıştır. |
gradlew (linux, Mac) gradlew.bat (Windows) |
Gradle sarmalayıcı dosyası Gradle dağıtımı indirip komutları yönlendirerek derlemenizi önyükler. Bu sayede, Gradle'ı önceden yüklemek zorunda kalmadan derlemeleri çalıştırabilirsiniz. |
local.properties |
Yerel makine yapılandırması Yerel makineyle ilgili özellikler (ör. Android SDK'nın konumu) içerir. Bu dosyayı kaynak kontrolünden hariç tut |
ayarlar.gradle(.kts) |
Gradle başlatma ve proje yapılandırması için şu gibi genel derleme bilgilerini içerir:
|
gradle/ |
|
ƒ libs.versions.toml |
Bağımlılıklar ve derlemenizde kullanılan eklentiler için değişkenler tanımlar. Burada hangi sürümleri kullanmak istediğinizi belirterek projenizdeki tüm alt projelerde tutarlılık sağlarsınız. |
ƒ sarmalayıcı/ |
|
ƒ gradle‐Wrapper.jar |
Gradle önyüklemesi yürütülebilir Belirtilen Gradle dağıtımını indirir (mevcut değilse) ve bağımsız değişkenleri ileterek bu dağıtımı çalıştırır |
ƒ gradle‐Wrapper.özellikleri |
Gradle sarmalayıcı yapılandırması Gradle dağıtımının nereye indirileceğini (hangi sürümün kullanılacağını belirtir). |
uygulama/ |
Alt projeler (Android Studio'da "modüller" olarak bilinir) uygulamalar veya kitaplıklar oluşturabilir ve başka alt projelere ya da harici bağımlılıklara bağlı olabilir.
|
🎃 build.gradle(.kts) |
Alt proje düzeyinde derleme dosyası Bu alt projenin nasıl oluşturulacağını açıklar. Her alt proje ayrı bir derleme dosyası gerektirir ve
Derleme dosyalarınıza derleme mantığı (Kotlin işlevi tanımları veya koşulları gibi) ya da görev bildirimleri eklememelisiniz. Derleme mantığı ve görevler yalnızca eklentilerin içinde olmalıdır. |
ƒ src/ |
Alt proje kaynak dosyaları Kaynak dosyaları (uygulama kodu ve kaynaklar) kaynak kümeleri halinde gruplandırır. |
ƒ ana/ |
Ana kaynak grubu Tüm derleme varyantlarında ortak olan kaynak kodu ve kaynaklar. Bu kaynak tüm derlemeler için temel oluşturur ve diğer daha spesifik kaynak kümeleri bu kaynağa eklenir veya kaynağı geçersiz kılar. |
ƒ Java/ ƒ kotlin/ |
Kotlin ve Java kaynak kodu
|
🎃 çözüm/ |
XML dosyaları ve görüntüler gibi uygulama kaynaklarını içerir. Tüm uygulamalar, başlatıcı simgeleri gibi bazı temel kaynakları kullanır. Ancak düzenler ve menüler gibi bu kaynakların çoğu yalnızca görünüme dayalı uygulamalarda kullanılmaktadır. Oluşturma uygulamaları, bu dizin altında tanımlanan Dize kaynaklarını kullanır. |
🎃 AndroidManifest.xml |
Android uygulaması meta verileri Sisteme bildirmek için Android paket yöneticisi tarafından okuma
|
ƒ androidTest/ |
Cihaz testi kaynak grubu Android destekli bir cihazda veya emülatörde çalıştırılacak testlere yönelik kaynak içerir. Bu testler, gerçek Android ortamına erişebilir, ancak ana makine testlerinden daha yavaş yürütülür. |
ƒ test/ |
Ana makine testi kaynak grubu Bir cihazda çalıştırılan testlerin aksine, JVM'de yerel olarak çalıştırılan testlere ait kaynak içerir. Bu testler, cihaz testlerine kıyasla çok daha hızlı yapılır. Ancak tüm sistem çağrıları (uygulamanızı çalıştıran yaşam döngüleri de dahil) sahte, sahte, sustalı veya başka bir şekilde simüle edilmelidir.
|
ƒ proGuard-rules.pro |
Uygulama daraltma, optimizasyon ve kod karartmayı kontrol etmek için kurallar tanımlar. R8, gereksiz kod ve kaynakları kaldırır, çalışma zamanı performansını optimize eder ve tanımlayıcıları yeniden adlandırarak kodunuzu daha da en aza indirir. |