Android Studio, IntelliJ IDEA Community Edition tabanlı Android için resmi geliştirme ortamıdır. IDE, Kotlin ve Java için otomatik tamamlamalı kod düzenleyici, görsel Layout Editor, Android emülatörü, kaynak profilleyici ve Gradle aracılığıyla derleme araçlarını içerir. Android Developers'ta Android Studio kurulum ve kılavuzlar için ana kaynaktır.
Önemli Noktalar
Android Studio IDE, Google'ın resmi geliştirme ortamıdır ve 2013 yılında IntelliJ IDEA Community tabanlı olarak yayınlanmıştır. Android uygulamaları için eksiksiz bir araç seti sağlar: kod yazma (Kotlin/Java), görsel UI tasarımı (XML/Jetpack Compose), derleme (Gradle), test etme (JUnit/Espresso) ve profil oluşturma.
Mevcut sürüm Android Studio Ladybug (2025), IntelliJ 2024.3 tabanlıdır. IDE en son Android 16 API Level (Baklava), kararlı Jetpack Compose 1.8 ve Kotlin 2.1'i destekler. Google I/O 2025'e göre Android geliştiricilerinin %94'ü ticari projelerinde birincil IDE olarak Android Studio'yu kullanmaktadır.
Temel özellikler: Esnek derleme yapılandırması için AGP (Android Gradle Plugin), APK boyutunu küçültmek için R8 karıştırıcı, modüler uygulamalar için Play Feature Delivery, Firebase Test Lab entegrasyonu. Android Studio Windows, macOS, Linux ve ChromeOS için kullanılabilir.
Android Studio'daki bir Android projesi, çok modüllü prensibe göre düzenlenir. Her modül (app, feature, core) kaynak kümeleri içerir: `main` (üretim kodu), `test` (birim testleri) ve `androidTest` (UI testleri). Kaynaklar niteleyicilere göre ayrılır: layout, values, drawable, mipmap.
| Dizin | İçerik |
|---|---|
| app/src/main/java/ | Kotlin/Java uygulama kaynak kodu, Activity, Fragment, ViewModel |
| app/src/main/res/layout/ | XML arayüz dosyaları (activity_main.xml, fragment_settings.xml) |
| app/src/main/res/values/ | Kaynaklar: strings.xml, colors.xml, themes.xml, dimens.xml |
| app/src/main/AndroidManifest.xml | Bileşen bildirimleri: Activity, Service, BroadcastReceiver, izinler |
| gradle/ | Gradle Wrapper, sürüm kataloğu (.toml), convention plugins |
Version Catalog (libs.versions.toml) merkezi bağımlılık yönetimi sağlar. Her build.gradle.kts'de sürümleri manuel olarak belirtmek yerine libs.androidx.compose.ui, libs.ktor.client ve diğer bildirimsel referanslar kullanılır. Google, tüm yeni projeler için kütüphane yönetimi standardı olarak sürüm kataloglarını önerir.
Layout Editor, XML arayüzleri (ConstraintLayout, LinearLayout) için Split modlu görsel bir düzenleyicidir: solda önizlemeli tuval, sağda XML kodu. Palet, View bileşenlerini içerir: Button, TextView, RecyclerView, EditText. Özellikler Paneli, seçili bileşenin özelliklerini padding, margins ve constraints düzenleyicileriyle gösterir.
Jetpack Compose Preview, bildirimsel UI'ler için Layout Editor'a bir alternatiftir. Android Studio Ladybug'da Preview, farklı parametrelerle (Koyu/Açık mod, farklı boyutlarda ekranlar, yerelleştirme) @Composable işlevler için çalışır. @Preview(showBackground = true, uiMode = UI_MODE_NIGHT_YES) notu, tek bir pencerede birden çok önizleme paneli oluşturur.
ConstraintLayout, karmaşık arayüzler için temel düzendir. Layout Editor'da, görünümler arasında sürükleyerek kısıtlamalar oluşturabilir, eşit dağıtım için zincirler (chains) ve dinamik yükseklikler için bariyerler (barriers) ayarlayabilirsiniz. MotionLayout (ConstraintLayout'un bir uzantısı), düzenleyicide geçiş animasyonunu destekler.
Gradle, Android Gradle Plugin (AGP) aracılığıyla yönetilen Android projeleri için otomatik derleme sistemidir. AGP görevleri tanımlar: assembleDebug, assembleRelease, bundleDebug (AAB), lint, test. Gradle derleme betikleri Kotlin DSL (build.gradle.kts) veya Groovy ile yazılır; Kotlin DSL yeni projeler için standarttır.
// build.gradle.kts (app module)
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
}
android {
namespace = "com.example.app"
compileSdk = 36
defaultConfig {
applicationId = "com.example.app"
minSdk = 26
targetSdk = 36
versionCode = 1
versionName = "1.0.0"
}
buildTypes {
release {
isMinifyEnabled = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
}Çok modüllü projeler Android Studio'da kodu özellik modüllerine (app, :feature:home, :feature:profile) ve çekirdek modüllere (:core:network, :core:designsystem) ayırır. Her modülün kendi build.gradle.kts'si vardır. AGP tüm modülleri tek bir APK/AAB'de derler. Convention plugins, ortak ayarları (Kotlin seçenekleri, Compose) bir build-logic alt projesine çıkararak tekrarı azaltır.
Android Emulator, bir bilgisayarda Android uygulamalarını çalıştırmak ve test etmek için sanal bir cihazdır. Her sanal cihaz, bir AVD (Android Virtual Device) yapılandırmasıyla tanımlanır: model (Pixel 9, Galaxy S25), API Level (Android 14, 15, 16), RAM miktarı ve disk boyutu.
Emülatör özellikleri: anlık görüntüler (durumu hızlı geri yüklemek için), GPS koordinat simülasyonu, kamera (görsel yükleme ile), telefon aramaları ve SMS, sensörler (ivmeölçer, jiroskop), çoklu dokunma (Extended Controls aracılığıyla). Google, testlerin %80'i için emülatörü ve donanıma bağlı özellikler (kamera, Bluetooth, parmak izi) için fiziksel cihazı önerir.
Apple Silicon'da Android Emulator (M1/M2/M3), Rosetta olmadan Hypervisor.framework aracılığıyla yerel olarak çalışır. Apple Silicon'da emülatör performansı fiziksel bir cihazla karşılaştırılabilir. Öykünmeyi hızlandırmak için GPU hızlandırmalı grafikler için Android Emulator Plugin + Vulkan kullanılır.
Android Profiler, Android Studio'da yerleşik bir performans izleme aracıdır. Profiler gerçek zamanlı olarak gösterir: CPU (çekirdek yükü, iş parçacıkları, GC süresi), Bellek (Java/Kotlin heap, Native, Stack, Graphics), Ağ (gelen/giden trafik, HTTP istekleri) ve Enerji (bileşene göre pil tüketimi).
Android Studio'da hata ayıklama: Kesme noktaları (koşullu kesme noktaları, logpoints) ile hata ayıklayıcı, Evaluate Expression, kaçırılan kareleri analiz etmek için Frame Drop Inspector, çalışan bir uygulamada View hiyerarşisi için Layout Inspector. Background Task Inspector, WorkManager görevlerini, AlarmManager ve JobScheduler'ı görüntüler.
Firebase Test Lab, Google Cloud'da gerçek cihazlarda bulut tabanlı testtir ve Android Studio'ya entegre edilmiştir. Testler, farklı Android sürümleri ve yerelleştirmelerle bir cihaz matrisinde (10+ model) çalıştırılır. Sonuçlar, test çalıştırma videoları, ekran görüntüleri ve günlükler içerir.
Sıkça sorulan sorular
Android Studio 8 GB RAM (16 GB önerilir), SSD'de 8 GB boş alan, Intel VT-x / AMD-V / Apple Silicon destekli işlemci ve 1280x800 ekran çözünürlüğü gerektirir. Emülatör için Hypervisor desteği gerekir (Windows: Hyper-V, Mac: Hypervisor.framework, Linux: KVM).
Android Studio, Android araçlarıyla (Layout Editor, Android Emulator, Profiler, APK Analyzer, Android Lint, Android için Gradle entegrasyonu) IntelliJ'in özelleştirilmiş bir sürümüdür. IntelliJ IDEA Ultimate, Android'i bir eklenti aracılığıyla destekler ancak emülatör ve profilleyici içermez. Android Studio tüm platformlar için ücretsizdir.
Önerilen yaklaşım gradle/ klasöründeki Version Catalog (libs.versions.toml) dur. Bir alternatif, kütüphane platformudur (BOM): androidx.compose:compose-bom. Gradle 8.5+ için geçişli çakışmalar için @Suppress ile Central Declaration of Dependencies kullanılır. build.gradle'da doğrudan içe aktarmalardan kaçının — alias kullanın.
Build Variants, derleme türü (debug, release) ve ürün çeşnisi (free, paid, demo) kombinasyonlarıdır. Her varyantın kendi kaynak kümeleri (src/freeDebug/, src/paidRelease/), kaynakları ve yapılandırmaları vardır. Android Studio, Build Variants panelinde seçilen varyanta göre otomatik olarak kod tamamlama ve önizlemeyi değiştirir.
Başlıca optimize yöntemleri: Gradle Daemon, Parallel Project Execution, Configuration Cache, Build Cache'i etkinleştirin. Modül ve bağımlılık sayısını azaltın. dexopt için Baseline Profile kullanın. Büyük projeler için — Remote Build Cache (Gradle Enterprise). Android Studio ayrıca tanılama için Build Analyzer sunar.
Özet
Anahtar teslim bir mobil uygulama geliştireceğiz
IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.
Ayrıca okuyun