Android Studio ve Gradle'da "Android SDK not found" hatasını hızlıca giderme
"Android SDK not found" hatası, Android Studio veya Gradle'ın kurulu SDK'yı göremediği anlamına gelir; bu sorun SDK Manager aracılığıyla, ortam değişkenlerinin (ANDROID_HOME/Path) doğru yapılandırılması ve Gradle'ın yeniden derlenmesi/temizlenmesiyle çözülebilir — aşağıda adım adım açıklanmıştır.
Android Studio'da hızlı kontrol
- Settings / Preferences → Appearance & Behavior → System Settings → Android SDK yolunu açın.
- SDK Platforms sekmesinde gerekli API'leri işaretleyin (yeni projeler için en az API 34).
- SDK Tools sekmesinde şunları güncelleyin: Android SDK Build-Tools, Platform-Tools, SDK Command-line Tools. Değişiklikleri uygulayın ve File → Sync Project with Gradle Files seçeneğine tıklayın.
- SDK boş veya kullanılamaz durumdaysa — SDK Manager (IDE içinde) üzerinden indirin ve Studio'yu yeniden başlatın.
Güncellemelerden sonra Android Studio'yu ve terminali yeniden başlatın — IDE yeni yolları algılayacaktır.
Sorun IDE'de çözüldüyse, projeyi yeniden derleyin (Build → Rebuild Project) ve emülatörün başlatılmasını kontrol edin.
Ortam değişkenlerinin yapılandırılması (Windows / macOS / Linux)
Gradle ve harici betikler genellikle SDK'yı sistem değişkenlerine göre arar. Şu şekilde kontrol edin:
-
Windows:
- Sistem Ayarları → Ortam Değişkenleri bölümünü açın.
ANDROID_HOME=C:\Users\<KullanıcıAdınız>\AppData\Local\Android\Sdkşeklinde bir sistem değişkeni ekleyin/doğrulayın.Pathdeğişkenine şunları ekleyin:%ANDROID_HOME%\platform-tools,%ANDROID_HOME%\emulator,%ANDROID_HOME%\tools\bin- Terminali/IDE'yi kapatıp yeniden açın.
-
macOS / Linux (zsh/bash örneği):
~/.zshrcveya~/.bash_profiledosyasına şunları ekleyin:
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/platform-tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
Ardından source ~/.zshrc komutunu çalıştırın ve echo $ANDROID_HOME ile kontrol edin.
Araçların erişilebilirliğini kontrol edin: sdkmanager --list ve adb --version. Komutlar çalışıyorsa, Gradle SDK'yı bulabilmelidir.
ANDROID_HOME değişkenini tek bir API klasörüne (örneğin yalnızca platform-tools) işaret etmeyin. SDK'nın kök klasörünü belirtin.
Gradle, önbellek ve proje dosyalarıyla ilgili sorunlar
IDE SDK'yı görüyorsa ancak terminal/CI üzerinden derleme yine de başarısız oluyorsa:
gradle.propertiesdosyasını kontrol edin (proje düzeyinde veya~/.gradle/içinde):- Yanlış yolu işaretleyen geçersiz kılan özelliklerin olmadığından emin olun.
build.gradle(app modülü) içinde sürümleri açıkça belirtin:
android {
compileSdk 34
defaultConfig {
targetSdk 34
}
}
- Temizleyin ve yeniden derleyin:
- Proje terminalinde:
./gradlew clean assembleDebug(veya./gradlew build) - Android Studio'da: File → Invalidate Caches / Restart, ardından Sync Project with Gradle Files.
- Proje terminalinde:
- Gerekirse projenin kök dizinindeki ve modüllerdeki
.gradle/vebuild/klasörlerini silin, ardından yeniden derleyin.
Hata CI ortamında oluşuyorsa — CI ortamında ANDROID_HOME değişkeninin tanımlandığından veya pipeline'da SDK kurulumu için SDK Manager kullanıldığından emin olun.
Yaklaşımların karşılaştırması (kısa)
Çözüm yöntemlerinin karşılaştırması
| Sorun | Eylem | Süre |
|---|---|---|
| SDK yok | SDK Manager üzerinden kurulum | 5–10 dk |
| Hatalı ANDROID_HOME/Path | Ortam değişkenlerini yapılandırma | 2–5 dk |
| Eskimiş araçlar | SDK Tools'u güncelleme | 3 dk |
| Gradle/IDE önbelleği | Clean + Invalidate Caches | 1–5 dk |
Sık karşılaşılan hatalar
- SDK kökü yerine
toolsyolunun belirtilmesi. - Path'e yol eklenip terminal/IDE'nin yeniden başlatılmaması.
- Sürüm çakışması: Gradle eklentisi farklı bir compileSdk gerektiriyor.
- M1/M2 Mac'te — Rosetta olmadan emülatör çalıştırma (x86 imajları kullanılırken).
- CI, SDK içermeyen bir konteynerde çalışıyor — pipeline'da kurulması gerekiyor.
SSS
-
sdkmanagerbulunamazsa ne yapılmalı?
$ANDROID_HOME/tools/binyolununPATHiçinde olduğundan emin olun ve terminali yeniden başlatın; gerekirse SDK Manager üzerinden Command-line Tools'u kurun. -
ANDROID_HOME ve ANDROID_SDK_ROOT aynı anda ayarlanmalı mı?
Tek bir doğru yol yeterlidir (ANDROID_SDK_ROOT— modern değişken), ancak birçok araç hâlâANDROID_HOMEokur. Her ikisini de aynı SDK klasörüne ayarlamanız önerilir. -
Studio güncellemesinden sonra derleme aniden çalışmayı durdurdu — neden?
Genellikle Gradle eklentisi daha yüksek bircompileSdkveya Build Tools güncellemesi gerektirir. Eklenti gereksinimlerini kontrol edin ve SDK/Build Tools'u güncelleyin veyabuild.gradleiçinde uyumlu sürümleri sabitleyin.
Tüm adımlardan sonra hata devam ediyorsa — hatanın tam metnini ve ortamınızı (İS, Studio sürümü, derleme yöntemi: IDE/CLI/CI) belirtin, bu sayede nokta atışı çözüm sunulabilir.