Unity projelerine Supersonic Wisdom veya IronSource entegrasyonu yaptıktan sonra Android build almaya çalıştığınızda, aniden “CommandInvokationFailure: Gradle build failed” hatasıyla karşılaşabilirsiniz.
Bu hata genellikle eklentinin (SDK), sizin bilgisayarınızda yüklü olmayan veya lisansı henüz kabul edilmemiş eski bir Android Build-Tools sürümünü (genellikle 30.0.3 vb.) zorlamasından kaynaklanır.
Bu rehberde, Android Studio’yu açmanıza gerek kalmadan bu sorunu Windows ve Mac üzerinde nasıl hızlıca çözeceğinizi anlatacağım.
Hatanın Belirtileri
Konsol loglarını incelediğinizde hata mesajının içinde SupersonicWisdom ve License kelimelerini şu şekilde görürsünüz:
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':unityLibrary:SupersonicWisdom.androidlib:compileReleaseAidl'.
> Failed to install the following Android SDK packages as some licences have not been accepted.
build-tools;30.0.3 Android SDK Build-Tools 30.0.3
To build this project, accept the SDK license agreements...
Bu çıktı, Supersonic kütüphanesinin Build-Tools 30.0.3 sürümünü kullanmaya çalıştığını, ancak Unity’nin bu sürümü indirmek için gerekli lisans onayına sahip olmadığını gösterir.
Yöntem 1: Terminal ile Lisansları Kabul Etmek (Kesin Çözüm)
Unity’nin içinde gömülü gelen sdkmanager aracını kullanarak lisansları manuel olarak onaylayabiliriz. Bu işlem, Unity’nin eksik dosyayı otomatik indirmesine izin verir.
🍎 Mac Kullanıcıları İçin Adımlar
- Terminal uygulamasını açın.
- Unity’nin SDK klasörüne gidin (Sürüm numaranızı kontrol edin):
cd /Applications/Unity/Hub/Editor/2022.3.62f3/PlaybackEngines/AndroidPlayer/SDK/cmdline-tools
Doğru versiyon klasörünü bulmak için ls yazın (2.1, 6.0 veya latest olabilir). İlgili klasörün bin dizinine girin:
cd 2.1/bin
# Veya klasör isminiz neyse: cd latest/bin
Lisans onaylama komutunu çalıştırın:
./sdkmanager --licenses
- Gelen lisans metinleri için sorulara
ytuşuna basıp Enter diyerek hepsini kabul edin. - En sonda “All SDK package licenses accepted” yazısını gördüğünüzde işlem tamamdır.
🪟 Windows Kullanıcıları İçin Adımlar
Unity SDK dizinine gidin:
CMD (Komut İstemi) uygulamasını Yönetici olarak çalıştırın.
cd "C:\Program Files\Unity\Hub\Editor\2022.3.62f3\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\cmdline-tools"
Versiyon klasörünün (örneğin 2.1) içindeki bin klasörüne girin:
cd 2.1\bin
Lisans komutunu çalıştırın:
sdkmanager.bat --licenses
- Gelen sorulara
yyazıp Enter‘a basarak onaylayın.
Bu adımları uyguladıktan sonra Unity’e dönüp Build aldığınızda, işlemin sorunsuz bir şekilde tamamlandığını göreceksiniz. Özellikle Supersonic gibi sık güncellenen SDK’larda versiyon uyuşmazlığı sık yaşanır, bu yöntemleri not etmenizde fayda var.
Bol şans ve hatasız buildler! 🚀